Print Organizer - plots all files correctly but the one you are in.

Ok, bear with me on the explanation. We have a set of custom line styles that print correctly when sent to PDF individually. They also print correctly when printed through print organizer with the exception of when you are in one of the files. If that occurs that file will print the line styles incorrectly and the other files will be fine.  Example: you are in File A and print A-F in print organizer. File A's custom line styles will be printed incorrectly but B-F's will be fine. If you then print the exact same organizer file from file B the problem moves to file B and A and C-F are now fine.

Obviously the quick fix is to go into an unrelated file and print the set and all come out correctly but theoretically, and in my past experience this hasn't been necessary. I have tried several fixes and am coming up empty. There are no command line modifiers, organizer is set (by MS_PRINTORGANIZER_OPEN_DGN_READWRITE) to open in read/write so it should have access to whatever it needs to function. Hopefully you all know of something that may cause this or have seen it before.

 Windows 7 SP 1

 MS (SS3) 08.11.09.608

Parents
  • OK, I have expanded on this by digging deeper . From what I can tell, the issues I am having are only for levels that the MS_LEVEL_AUTO_SYNC_ATTRIBUTE_LIST variable is actively synching to the dgnlib. I've seen some people had a similar issue, where they needed PO to have Read/Write access to the file in order for this to work. That said can someone enlighten me if there is a reason that PO doesn't have read/write to the file you are actively in? I am working in a different environment than I am used to but I seem to recall being able to use the MS_LEVEL_AUTO_SYNC_ATTRIBUTE_LIST variable and be in a file without experiencing the issue I noted above.
  • If the DGN is open in the interactive process, then the interactive process has a lock on that file. No other process, including Print Organizer's background worker process, can open that DGN in read-write mode. They fall back on read-only mode.

          
    .

    Answer Verified By: SCR-dgr-5947 

Reply Children
  • Thank you for the reply! I suspected that was the case. I guess I didn't actually understand the MS_LEVEL_AUTO_SYNC_ATTRIBUTE_LIST variable well enough. I knew it was running on file open and then syncing the files to the changes that were made in the DGNLIB but what I didn't know is that it wasn't actually doing the same thing as the "LEVELMANAGER LEVEL UPDATE" command. I thought it was actually changing the file not just making the settings look the same for that session. With this new knowledge, I don't know of a configuration variable that does what I actually want it to do. So what I could do is build a batch process to run the "LEVELMANAGER LEVEL UPDATE" command. Unless there is a better way you might suggest.
  • I'm not a level expert, so I can't comment on the differences between those two keyins. But certainly you would not be alone in defining MS_LEVEL_AUTO_SYNC_ATTRIBUTE_LIST. It's a convenient and not uncommon way to automatically pick up any changes to the .dgnlib. But can be easily circumvented by opened the file in read-only mode.

    Print Organizer allows its worker process to be run in either read-only or read-write mode. Read-only is the default, because not nearly as many users need MS_LEVEL_AUTO_SYNC_ATTRIBUTE_LIST and similar settings as those that do. And there's benefit in Print Organizer's worker process not locking the DGNs it's processing.

    Print Organizer will work fine with MS_LEVEL_AUTO_SYNC_ATTRIBUTE_LIST as long as the worker is set to run in read-write mode and no one has the DGNs open at the time of printing. That includes the interactive Print Organizer user, so it's good practice -- if read-write mode is being used -- to open a scratch DGN before starting a Print Organizer session. Print Organizer is designed for batch operations, not printing the active DGN. The File / Print command is the intended tool for ad-hoc prints of the active DGN.

          
    .