twitter youtube facebook linkedin email


Maintaining connectivity between AutoCAD Plant 3D catalogs, specs and models

Joel Harris
March 26, 2015

One of the most powerful – yet least understood – features of AutoCAD Plant 3D is the ability to keep data synchronized between the catalogs, specs and drawings.  This post will hopefully clear up some of the issues that you might be encountering with maintaining this connectivity by explaining some of the workflows that will keep things connected – and some which will surely "break" connectivity.

First, it is important to understand that Plant 3D assigns unique IDs to items that are added from the catalog to specs, and similarly to parts added from the spec to 3D models.  These unique IDs are stored in the various databases "behind the scenes" so that you can maintain a dynamic relationship for dimensional and descriptive data while in the process of designing a Plant project.  We will briefly examine the catalog and spec relationship first and then move on to the relationship between the spec and model databases.

Catalog to Spec Connectivity

Whether building your own custom catalogs or modifying the catalogs provided with the AutoCAD Plant 3D software, it is important to have a plan for where you will be maintaining part data and how it affects your ability to update specs.  Many of you know that there are several methods for updating specs from the Spec Editor pull-down menu:

Update Spec 2

The Check for Updates from Catalogs and Batch Update Specs from Catalogs… commands will both allow you to verify and update the current data in the spec database against the catalogs from which the parts had originally been inserted.  Since a spec might contain parts from multiple catalogs, the name of the catalog that each part in the spec came from is stored in the spec. The path to this catalog file (*.PCAT) is either stored with the spec or, if no path is present in the spec's PSPX file, it looks in the location specified by the Shared Content Folder system variable (set in either the Spec Editor or with the PLANTMODIFYSHAREDCONTENTFOLDER command in Plant 3D).  Which spec fields are updated is controlled via the Update Specs from Catalog Settings… command in the Spec Editor pull-down:

Update Spec 1

More in-depth information about the specific database fields involved in maintaining this connection is explained in this blog post by one of our Plant 3D developers, Raj Inugala.

So, let's examine some common workflows and considerations for each of these when using the Spec and Catalog editor:

  • Example workflow #1 – You use a catalog where Material, Material Code and Schedule are not stored in the catalog but instead are overridden when inserting parts in the spec.  The benefit of this is that you can maintain fairly generic catalogs that apply to many different materials and schedules, thus reducing the time spent building catalogs.  The downside of this is that the same part in the catalog may be linked to multiple parts in the spec without you being aware of this (until now).  For example, let's say your spec uses both SCH 80 and SCH 160 elbows so you insert them both from the same catalog part family, but you use the Property overrides option (shown below) to add the schedule to each of these new spec part families.  This option is useful when your catalog is missing one or more of these properties (like the ASME Pipes and Fittings Catalog that ships with the Plant 3D product).  By checking this override, you can specify those values as they are inserted into the spec.:

Update Spec 3

This workflow will connect the catalog part family with both of the elbow part families in the spec.  Future updates from the catalog will update both of these spec part families.  Note: If you are using this workflow, remember to uncheck the Material, Material Grade and Schedule from the Update Specs from Catalog Settings dialog or your spec overrides will be overwritten when you update the spec from the catalog.

  • Example workflow #2 – You added some parts to your spec and then decide later to make a change them by removing them from the spec and replacing them with parts from the catalog.  The effect of doing this is that you are assigning new IDs to the items in the spec.  Even if they are the same catalog parts, but say, you've changed something in the catalog or increased the size range, these new spec parts will be linked to the catalog but will not be linked to any parts already inserted in the project models.  The unique ID is assigned to a spec part when it is inserted into the spec. Removing it from the spec and replacing it will always break the connectivity with your models, even if it is a spec replacement using the same catalog parts.

So, to summarize the important points about keeping your specs and catalogs linked:

  1. Have a plan with regards to how you are going to build the catalogs, which information will be stored in the catalog and which will be stored in the specs, and
  2. Be sure to control spec updates from the catalog while in the middle of ongoing Plant projects if you want to be able to use the PLANTSPECUPDATECHECK command to update your model parts from the spec.  This implies that your spec size ranges and part selection should be fairly complete, even though you might be tempted to take a shortcut and build partial specs to start modeling early.  One technique to allow you to update specs while a project is in progress is explained in the next section.

Spec to Model Connectivity

Regardless of whether you are placing components from the spec palette, spec viewer or while routing piping, the new model part is always connected to the original spec part record in the same fashion.  Whatever unique ID is in the spec for that part at the time of insertion will be stored with that model part.  Therefore, it is probably obvious now that replacing parts in the spec will cause a new ID to be generated in the spec and subsequent insertions of that part in the model will have a different ID than those inserted in the model before the spec update.

Whew!  Not obvious yet?  Well, if you read that last sentence in the paragraph above and still don't understand this, that's okay – here's a working example:

Bob (a piping designer) places several gate valves in his model from spec AA.  Days later, Jim (a spec builder) deletes the valves from spec AA and replaces them with a different model of gate valve from the catalog.  The following week, Bob is notified that the gate valves are changed in spec AA, however when Bob uses PLANTSPECUPDATECHECK he doesn't get the updates.  Reason: when Jim replaced the gate valves in the spec with new ones he generated new IDs in the spec, which no longer match the IDs of the valves already in Bob's model.

So, what could they have done differently?  One thing that Jim could have done would be to change the valve model numbers in the catalog and updated the specs from those catalog part changes.  This would preserve the spec parts IDs. What if the changes were so drastic that a new catalog item, and hence a new spec item was necessary?  Here is a way to do it:

  1. Jim would edit the AA spec and modify the existing incorrect valves' Long Description (Size) to read something like "**out of spec**"
  2. Jim would create new valves in the catalog and add them to the AA spec. Now the spec has two sets of valves, only one of which is correct.
  3. When Bob gets the notification of the valve change in spec AA, instead of using PLANTSPECUPDATECHECK to attempt to replace the incorrect valves he would use the Substitute part grip to replace the incorrect valve with the correct one.  He will see each incorrect valve's Long Description (Size) in the grip's dropdown, so he knows which one to select.
  4. Bob can also use Data Manager to search for all of the valves that have the **out of spec** description and modify each one by selecting it in the Data Manager view, which will zoom to the parts if Zoom Toggle is turned on. After Bob has completed updating all of the valves in the model(s), the incorrect "out of spec" valves can be removed from the AA spec.


When PLANTSPECUPDATECHECK runs, it will compare date/time stamps between the model and spec to see if changes have occurred.  It will present the user with two windows shown below.  The upper window will ask you to update descriptive information which doesn't affect the geometry in the model, while the lower dockable window will show you updates to dimensional part data:

Spec update 5

More detail about how synchronizing specs with models can be found under another excellent blog post by Raj Inugala here.

I hope this article can give some insight into workflows that will increase your ability to leverage some of the powerful features in Plant 3D without productivity loss on your projects.  We promise to keep posting time-saving and enlightening workflows and technical tips here as we encounter them.  See you soon!


  • Featured Links

    Joel Harris