Methods of Synchronization
SOLIDWORKS does not synchronize property values between models and drawings on its own. For example, if a drawing note or field uses the $PRPSHEET method to link to a model property, the value present at the time the drawing is saved is cached inside the drawing. This is viewable in eDrawings. If the linked model property is changed while the drawing is closed, the new value will not be viewable in eDrawings. The eDrawings viewer can only access the properties of the immediate document it is viewing. To get these model properties to stick in the drawings we either need to make sure we always have the model and drawing open and editable at the same time, or employ an outside method of synchronization.
Properties in PDM
SOLIDWORKS PDM uses variable attributes to map data card variable values to the Custom Properties of our SOLIDWORKS files. This is a bidirectional link that will write to the file if the card value changes. You will observe in PDM that edits to card variables with these attribute mappings established require the file be checked out and will increment the version of the file on check in, since those edits are in fact changing the file. These attribute mappings are where we can establish a link between the model properties and the drawing properties. Examine our example variable and its attributes.
You will note that a CustomProperty attribute for all SOLIDWORKS extensions is accompanied by a $PRPSHEET attribute for drawings. Under very specific conditions these settings will copy the model variable value to the drawing variable, writing it into the drawing’s Custom Property. This link is global to the variable for your entire vault. If you require that some drawings do not carry the values of their models this link will not work, and you may need to look at other methods of synchronization, or use another variable.
The specific conditions enabling this synchronization are:
- The drawing must contain a note linking to the model properties
- The data card for the model and the drawing must both contain the variable to be linked
- The drawing must be saved in the proper context
These are some possible contexts for saving or check in your drawing:
- Save the drawing from SOLIDWORKS in a vault folder with the PDM add-in enabled
- Save the drawing from SOLIDWORKS in a vault folder with the PDM add-in disabled
- Save the drawing from SOLIDWORKS outside the vault
- Check in the drawing from Explorer
Context #1 is the only one that synchronizes these variable values. When using the one model to many drawings option where each drawing represents one model configuration scenario #1 will still always synchronize. This is due to the drawing data card only populating the @ tab with one model configuration’s properties.
If one model produces many configurations where a single drawing file uses multiple sheets to show a single configuration per sheet the trick to maintaining proper links is to set each sheet’s properties to look at a specific view. See the screen capture below.
The variable mappings inside SOLIDWORKS PDM will not assist in this type of configuration-per-sheet link. You will notice the drawing data card has a tab for each sheet, but the referenced model’s configuration properties will not appear there.
Scenarios #2 and #3 will not perform the synchronization. No amount of rebuilding or saving will match the drawing’s custom property with the model’s custom property. The drawing may appear correct, since the notes are pulling from the model’s properties directly. But the eDrawings preview may be incorrect if the drawing has not been opened and saved with the new model property value.
Forcing the Issue Outside PDM
CUSTOMTOOLS Professional is a SOLIDWORKS add-in that provides the synchronization in either direction, from model to drawing, and from drawing to model. This works independently from your PDM environment, so users will need to follow standard vault editing procedures to ensure write access is available, and enabled.
Videos of this in action can be found on YouTube.
“Copy model property as drawing property”
“Get property from parent”
Forcing the Issue Inside PDM
Synchronizing these properties through the data cards in PDM can have some advantages, especially when it comes to searching for those values. Since the drawing sheet tabs typically contain no data specific to them apart from manual entry a special add-in must be employed to carry out this operation. The HAWKWARE team created just such a tool, called Sync Card Variables.
You can find more information about it here:
As well as here:
Since it was developed as a custom Task you can assign it to happen during a workflow transition to ensure that all values are properly synchronized before the files get too far along.