In this article we review how to configure Teamcenter and the Solid Edge Embedded Client such that the Teamcenter BOM structure when displayed in the Teamcenter RAC and Visualization resembles the Solid Edge BOM structure as configured by the Solid Edge assembly occurrence properties.
In the Solid Edge Embedded Client [SEEC] we have the following theoretical assembly structure:
Which when displayed in the Solid Edge Draft as a Parts List is similar to below:
And when the assembly structure is viewed in Teamcenter, we again have a similar and expected structure displayed:
However, in this theoretical assembly structure we have several Items that are named as "Reference". These reference parts are intended to be used as reference in the Solid Edge assembly structure but are not part of the desired physical manufacturing assembly structure:
By using Solid Edge assembly Occurrence Properties we can change the behaviour of the children and how they impact and interface with the Solid Edge assembly structure.
In our theoretical assembly structure, we have modified the Solid Edge Occurrence Properties such that all "reference" named Items are to be excluded from the "Reports/Parts List":
By setting these occurrence properties this then results in a Solid Edge Draft Parts List that has all of the "reference" named children excluded, and provides a Parts List that resembles our desired manufacturing BOM structure:
However, even though we now have our desired BOM structure displayed in Solid Edge, when the BOM structure is viewed in the Teamcenter Structure Manager, we still see the entire assembly structure including all of the unwanted "reference" Items:
So how can we configure Teamcenter so that we can display a BOM structure that resembles our Solid Edge BOM based on Solid Edge occurrence properties?
Firstly, we must enable syncing of the Solid Edge occurrence properties into Teamcenter. By default, Solid Edge occurrence properties are *not* synced into Teamcenter.
To enable occurrence property syncing, in the Teamcenter Options locate the preference "SEEC_Property_Synchronize_AsmOcc", set the value to "TRUE", and save the changes:
However, after making this preference change, when we view our structure in Teamcenter we see no change and the structure is still displaying our unwanted "reference" Items:
In the Teamcenter Structure Manager, right click on the column headers and select "Insert column(s)":
In the "Available Columns" locate "SE Assembly Reports" and add it to the "Displayed Columns" section. Adjust the display order of the column as desired:
With the "SE Assembly Reports" column added, we now see displayed either 0’s or 1’s that reflect the values of "Yes" or "No" for the Solid Edge Occurrence Properties. Note that in Solid Edge a "No" value is equivalent to a "0" value in Teamcenter, and "Yes" is equivalent to "1":
Note: on existing data you may not see any values displayed for the Occurrence Properties; this will be addressed at the end of this article.
However, although we now have displayed a column of values that reflects the Solid Edge Occurrence Property values we still do not have a Teamcenter structure that displays the way we desire e.g. with the desired line items removed based on the Solid Edge occurrence property values.
In order to modify the display of the Teamcenter Structure Manager such that the Teamcenter structure resembles our desired Solid Edge Draft Parts List structure we must create some custom Teamcenter "Closure Rules". For those not familiar with closure rules, essentially a closure rule is like a "filter" that we will apply to the structure to limit and control the display of the structure data.
To create a custom Closure Rule, in Teamcenter access and run the "PLM XML/TC XML Export Import Administration" application:
In "PLM XML/TC XML Export Import Administration" select "ClosureRule":
In the "ClosureRule" pane, provide a name and description for our new custom rule, set "Scope of Traversal" to "Export", and set "Output Schema Format" to "PLMXML":
Select the "+" to add a new clause to our closure rule:
In the clause line add the following information and save the new closure rule:
Primary Object Class Type = CLASS Primary Object = BOMLine Secondary Object Class Type = CLASS Secondary Object = Item Relation Type = PROPERTY Related Property Or Object = bl_item Action Type = SKIP Conditional Clause = PRIMARY.SE Assembly Reports=="0"
Once our custom closure rule has been created, we must then add the closure rule to the list of closure rules allowed for BOM expansion.
In the Teamcenter Options locate and select the "ClosureRulesForBOMExpansion" preference. Add our custom closure rule name to the list of rules allowed and save the changes:
The creation of our custom closure rule is now complete and ready for use.
In Teamcenter Structure Manager open our assembly structure. At this point, the structure still looks the same and no changes are visible:
From the pull down menus select "Tools" -> "View/Set Closure Rule for Expansion":
In the "View/Set Closure Rule for Expansion" window select our custom closure rule and select "OK" to apply it:
Note in Structure Manager that once a closure rule is applied, the closure rule name is shown in the assembly details as a visual reference for the user to know that a closure rule is applied:
Once the closure rule has been applied, the Teamcenter structure is now configured to display based on the closure rule. In our example we set a closure rule to *not* show any Item Revisions that had an SE Occurrence property value "SE Assembly Reports" set to "0. Therefore only those line items with a "SE Assembly Reports" value equal to "1" are displayed:
The Teamcenter structure now resembles our Solid Edge Parts List and is no longer displaying any Item Revisions that were named as "reference" based on the Solid Edge Occurrence Property values:
As an added bonus, this configured structure can then be opened into Teamcenter Visualization and viewed as based upon the Solid Edge Occurrence Properties.
The structure as viewed in Teamcenter Visualization before applying the closure rule in Teamcenter Structure Manager:
The structure as viewed in Teamcenter Visualization after applying the closure rule in Teamcenter Structure Manager:
In our example outlined above, we have focused solely on working with the "Reports/Parts List" occurrence properties. However, this methodology can be applied to and used with any and all of the Solid Edge Occurrence Properties.
Here is a chart showing the Solid Edge Occurrence Properties and their respective Teamcenter Structure Manager column names:
Draft Reference = SE Reference Drawing Views = SE Drawing Views Higher Level = SE Higher Level Interference Analysis = SE Intf Analysis Physical Properties = SE Physical Props Reports/Parts List = SE Assembly Reports Selectable = SE Selectable
All of the occurrence properties as displayed in Solid Edge and the equivalent columns as displayed in Teamcenter:
As with anything, there are considerations to take into account when implementing this solution.
Because we are enabling and syncing Solid Edge Occurrence Property data, there is additional data that has to be uploaded from SEEC into Teamcenter. Additional data means more time required for processing. Therefore there will be a performance impact when enabling the "SEEC_Property_Synchronize_AsmOcc" preference. How much of an impact will be solely dependent on your specific environment and the size/volume of data you are syncing.
Solid Edge Occurrence Properties are unidirectional. Solid Edge is the master of the properties and the values cannot be changed from within Teamcenter.
In Teamcenter Structure Manager there is currently no way to set a default or persistent closure rule. Therefore the user will have to manually set the closure rule every time [s]he needs to view the structure based on Solid Edge Occurrence Properties.
If your Teamcenter site is already in production and you implement this solution after go-live, simply enabling the syncing of Solid Edge Occurrence Properties does not automatically provide values for any existing data. All existing Teamcenter data will have absolutely no values for the Solid Edge Occurrence Properties stored in the Teamcenter BOM. Further, simply opening and resaving an existing Solid Edge assembly will *not* then populate the occurrence property values into Teamcenter.
In order to sync occurrence property values for existing data you must manually toggle and specify a value for *every* line item in the Solid Edge assembly structure to force a write of occurrence property values for every line item.