Performance Hack #002 : File Admin : SolidWorks File References

Performance Hack 004 Solidworks Speed Performance Constant Rebuilding

Overall Concept

The aim of this document is to provide the reader with an understanding of how the SolidWorks file structure and management works. To properly manage SolidWorks file system in SolidWorks, it is important to know what is contained in a SolidWorks file and how they relate to one another. A SolidWorks file is structured as a single point database. This means that when a part is used in an assembly, for example, the assembly purely references that part rather than copying the information to itself. It is this which keeps the file size of assemblies down. These references are known as absolute meaning they relate to a folder/ directory path on your computer or server, hence why it is vital NOT to move files from folder to folder without the use of a PDM system.

You can do this by:

Overall Concept


An example of the SolidWorks file referencing structure can be seen to the right. Some of the references can be a link or an embedded file. On any assembly or drawing file you can view the references by using File> Find References

A SolidWorks file contains four sets of information:

  1. Header: information about the file such as its format, file name, type, size and properties
  2. Instructions Set: can be thought of as the FeatureManager Tree in a listed format, this is what is used to build the file
  3. Database: The modelling kernel that build the files outputs a database that consists of the topology (shape) which we see in the form of the graphics of the model
  4. Visualization Data: This is the data used to preview models and the image seen on screen
  5. Note: unique file names are the key to managing files in SolidWorks. Only one document of a given name can be open at any one time.



Ouverall Concept - Right Plane , Mates , Mirror Component
Overall Concept - Find References
Overall Concept - Find References - Include Broken References



File Reload:

RAM Resident opening of files When a parent document is opened, all of the referenced documents are also loaded into RAM. You may have seen that when you make changes to a part it will update the loaded assembly. If you choose to close that part and NOT save, the assembly will still show the newer part, as it is loaded into RAM.

The way to get this back to normal (without closing a reopening everything) is to use Reload. By selected the part that needs reloading and selecting File> Reload the file saved on disk will be copied into RAM overwriting the existing version.

File Reload
File References Knowing the SolidWorks reference order is useful for determine how SolidWorks reads in files. It takes the reference purely based on file names using the following hierarchy order:

  1. RAM- if a file of the correct name is already open, it will use this file, reiterating the need to use unique file names
  2. Directories set in Tools> Options> File Locations> Referenced Documents-setting these additional directories can speed up finding files if you specify the location you normally save files to
  3. The last path you opened a file from- When a parent document is opened, SW will search the same location for the children.
  4. The last path the system used to open a file- this applies if the system automatically opened a reference document last
  5. The path where the reference document was located when the parent document was last saved- in case the parent document was moved. This excludes the drive (C:, D:) location
  6. The path where the reference document was located when the parent was last saved with the original drive destination- as above but with the absolute path
  7. If still not found, a message appears asking you to browse for it yourself. Once re-linked to a missing document (moved or renamed using Windows Explorer) using step 7, the next save operation will update the new references.


Once created these links can be very easy to lose or break in some way, so there are some best practices involved which should alleviate the small issues you may experience from time to time.

Reference symbols:

During the normal modelling process, you may occasionally see reference symbols next to a file, these symbols give an indication of the state of the file references, they are listed below:

  • Out of context is shown as ->?, This usually means that the file the reference isn’t loaded into memory (RAM) on your machine.
  • If a reference is working fine it will show as in context ->.
  • If a user has locked the reference it will show as locked ->* meaning that the references cannot be changed or updated, unless unlocked
  • ->X is an indication that the reference has been broken by the user, stopping any updates – an irreversible process.

Internal ID:

SolidWorks file have Internal ID and External Id. External ID is just file name. The internal ID is a number that is automatically generated and assigned to any part you create in SOLIDWORKS. This is not viewable or changable by the user. Once created, the internal ID will remain the same throughout the life of that part.

Check reference:

If you are unsure of the details of your references, you can use the List External references dialogue in order to check the references within your model. This Dialogue is normally accessed by right-clicking on the name of your model, a “list External Refs…” command will show up in the right click menu.

List External References:

Note: This operation is only available for items that have external references.

By right clicking on the name of the top level assembly in the design tree, this command will show all parts with external references contained inside the assembly model giving you a holistic view of the external references in your file. If this command is accessed by right clicking on the name of a part in the design tree it will just show those features which contain external references, within the selected part.

List External reference


External References for 10339-011


Add to Advance select:

If you need to find and select all components that have broken external references, SolidWorks can find them for you with the Advanced Select. Go to Tools > Component Selection > Advanced Select (or pick Advanced Select from the Select fly-out list).

Advanced Component Selection



In the Define Search Criteria tab, select “In Context relations” in the Category1 list, “Has broken external references” in the Category2 list, and “is yes” in the Condition list. This search criteria can be saved for future use by typing into the “Name of Search” field and click the Save icon that appears to the right of the field.

Clicking Apply will run the search and highlight any parts it finds. The search can be added to your favorites from the Manage Searches tab. Click the tick box and you’re done. This will now show in the Select tools fly-out list.

Advanced Component Selection - Broken

Assembly Visualization References:

To use this, go to Tools > Assembly Visualization, and FeatureManager click More.

From the list of columns, pick External Reference.

Assembly Visualization - External - More


Custom Column

You can sort by the new column, set it to group/ungroup parts, flat or nested view, and adjust the colors using the sliders on the left of the pane.


Reference search path:

System Options. – Go to TOOLS > OPTIONS > General Tab > FILE LOCATIONS category. – Select REFERENCE DOCUMENTS from the list. If you set a path in the REFERENCE DOCUMENTS list, SOLIDWORKS will look here before looking at the original path or even in the same folder that the assembly or drawing are in!

System Options - File Locations - Referenced DocumentsSystem Options - External References - Search File Locations for External References

Enable search List:

Be sure to also enable the option “Search file locations for external references” under External References

External references:

An external reference is created when one document is dependent on another document for its solution. If the referenced document changes, the dependent document changes also.

First thing you notice is there is a symbol next to the feature that has external references.

Parts that have external references are denoted within the FeatureManager Design Tree with the ‘->’ symbol as shown in the figure below.

Save assembly before creating external references:

When assemblies are first created you may notice that the name comes up as Assem1.sldasm. This is the default name given to a new assembly, this name will stay until the assembly is first saved.

When working with external references it is always recommended to save the assembly before creating reference links. If external references are created within an assembly they will become out of context (->?) if the assembly changes name (i.e from Assem1.sldasm to new name).

The reason behind this behaviour is assembly external references are linked through the assembly name.

Lock/ Unlock and Break External References:

  1. Open your top down assembly document that contains parts with external references.
  2. To lock an external reference Right-click on the Part (or Feature in a Part document) with the external reference (denoted by the ‘->’ suffix in the FeatureManager Design Tree).
  3. Select List External References from the shortcut menu.

External References for 10339-01

    1. In the related dialog box, the external references will be listed for each feature of the component, in this example an Extrude feature is present as shown in the figure below.
    2. To lock the external references, pick the Lock All button in the dialog.
  1. SolidWorks will warn you that you will not be able to add any additional external references to the part while it is locked, pick OK on the dialog.
  2. The part (or feature) will now be listed as locked in the dialog. Select OK to close the dialog.

External References for 10339-01 - List Broken References

  1. In the Assembly FeatureManager Design Tree a locked symbol ‘->*’ will now be displayed as a suffix of the part name to denote that the external reference is locked. If you need to add more references to the part you can unlock it using the same procedure.
  1. Once you unlock the external references, you can add new references or edit the existing references.
    1. When you break the external references, the existing external references no longer update and cannot be restored. You can add new references to the component. You can replace broken sketch relations with sketch relations that do no reference the assembly.
  1. You can select a single item and list all its external references. You can lock, unlock, or break them all at once.
  2. Breaking references can often be a rather extreme way to stop references within a file. Lock is a good alternative as it allow the reference to be unlocked at any point. This is a good workflow if working with moving components. Moving components can have their external references locked, if they need to update their geometry they can be moved back to an original position and unlocked.

Save file with all references:

To save assemblies and external references at the same time it is recommended to use the “pack and go” tool (File menu>pack and go).


File Pack and Go
Pack and Go


You could also go to the save as menu when saving the assembly and choose the advanced options. Parts and assemblies can be double clicked in this menu to change their names, thus creating new versions.

Save As - Include all Referenced Components

Save As with References


Change File References-

The SOLIDWORKS® software provides five different methods to change file references.

  1. ‘File’ > ‘Save As…’

‘Save As…’ changes the references in all parent documents that are open. References in parent documents that are not open are not affected by using ‘Save As…’

  1. ‘File’ > ‘Replace…’

The ‘Replace…’ command allows replacement of single or multiple instances of parts or sub-assemblies in the parent document.

  1. ‘File’ > ‘Open…’ > ‘References…’

Changing references during opening changes all instances of a reference to a different, existing file. This method can be used to redirect a drawing.

  1. ‘File’ > ‘Save As…’ > “References…’

When a parent document is saved, existing references can be saved to new names. This operation creates new reference files.

Rules for External References

A component cannot have an external reference to itself (a circular reference).

You cannot reference one instance of a part to create a feature on another instance of the same part, even if the instances are in different configurations.

You cannot replace a part with another part created by deriving the second part from the first. See Derive Component Part for more information.


IT Performance SolidWorks

Performance Hack #019 : IT Solidworks Performance : How to set Windows Defender Exceptions

Automation Parts SolidWorks Weldments

Performance Hack #018 : Part Automation : Weldment Profile

Performance SolidWorks Speed

Performance Hack #004 : Solidworks Speed Performance : Constant Rebuilding

Assemblies Parts SolidWorks

Performance Hack #020 : Parts Assemblies : Working With Sketch Pictures

Automation Installation IT Performance SolidWorks

SolidWorks Performance Hack #024 : SolidWorks IT Automation Installation : how to fix equations red symbols !!!!

File Admin Services

CAD Services : File Retention Policy

Drawings SolidWorks

Performance Hack #012 : Drawings : Projected Dimensions Vs True Dimensions

Automation File Admin SolidWorks

Performance Hack #011 : File Admin Automation : Pack and Go

Performance SolidWorks Speed

Performance Hack #009 : Solidworks Speed Performance : Import Geometry

Assemblies Automation Parts SolidWorks

Performance Hack #015 : Parts Assemblies Automation : Smart components

Drawings SolidWorks

Performance Hack #008 : Drawings : How to copy linked notes from a template into another template

Certification Performance SolidWorks Training

Performance Hack #022 : SolidWorks : Training Sources, Certification Exam Approach

Automation File Admin SolidWorks

Performance Hack #010 : File Admin Automation : Managing Files

Automation SolidWorks

Performance Hack #014 : Solidworks Automation : SolidWorks Sketch reuse as Blocks

File Admin IT Performance SolidWorks Speed

Performance Hack #021 : IT SolidWorks Performance : Backups

Fabricator Services

CAD Services : Are we a Fabricator?

Automation SolidWorks Speed

Performance Hack #016 : Speed Automation : Solidworks Task Scheduler

Installation IT Repair SolidWorks

Performance Hack #006 : IT Solidworks Installation Repair : Full Clean Removal and Re-install


CAD services : How We Communicate and Share Info

Drawings SolidWorks

Performance Hack #001 : Drawings : Link Custom Property Watermark

0 replies

Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

Your email address will not be published. Required fields are marked *