Use Case 4: No BOM Transformation Based on the Part Type
Consider that the following structure is present in the BOM Transformer:
• An equivalent link exists between Upstream Parent Part (Design) and Downstream Parent Part (Manufacturing).
• All the parts except Part C2 (Design) in the structure have the part type as wt.part.WTPart.
• Part C2 (Design) in the structure have the part type as ElectricalPart.
To generate the downstream structure based on part types, you can specify the transformation and restructuring rules using rules file or properties file.
Using Rules File
{
"transformRules": [
{
"sourceType": "wt.part.WTPart",
"newAttributeMappings": [
[
"source.usage.AttributeNum1:String1",
"target.part.AttributeNum2:String2"
]
],
"targetType": "wt.part.WTPart",
"transformOption": "newPart"
},
{
"sourceType": "com.ptc.ElectricalPart",
"doNotTransform": "true"
}
]
}
Using Properties File
1. Access the associativity.properties.xconf file located in Windchill/codebase/com/ptc/core/foundation/associativity.
2. Add the following restructuring rules:
<Property name="com.ptc.windchill.associativity.reconciliation.addusage.wt.part.WTPart" multivalued="," default=""/>
<AddToProperty name="com.ptc.windchill.associativity.reconciliation.addusage.wt.part.WTPart" value="transformOption=newPart"/>
<AddToProperty name="com.ptc.windchill.associativity.reconciliation.addusage.wt.part.WTPart" value="targetType=wt.part.WTPart"/>
<AddToProperty name="com.ptc.windchill.associativity.reconciliation.addusage.wt.part.WTPart" value="attributeMapping.rule1=AttributeNum1:String1:AttributeNum2:String2"/>
| In case of properties that involve mapping, the mapping attributes specified for upstream and downstream must not be the same. |
<Property name="com.ptc.windchill.associativity.reconciliation.addusage.com.ptc.ElectricalPart" multivalued="," default=""/>
<AddToProperty name="com.ptc.windchill.associativity.reconciliation.addusage.com.ptc.ElectricalPart" value="doNotTransform=true"/>. This property takes precedence over the other properties
After you initiate the
action on the selected part in the upstream, the Windchill system traverses the structure below the selected part. This configuration ensures that :
• If the Windchill system detects a part with the part usage attribute AttributeNum1 set to String1, then the detected part is added in downstream as a new part, under the part whose part type is wt.part.WTPart and the part usage attribute AttributeNum2 value set to String2.
• If the Windchill system detects a part with part type as ElectricalPart, the part is not added under any part in the downstream.
The following structure appears in the BOM Transformer:
• Part C1 (Manufacturing) is added as a new part under Part T1 (Manufacturing) as Part T1 (Manufacturing) satisfies the criteria set in the property.
• Part C2 (Design) has the part usage attribute AttributeNum1 set to String1. However, it is not added in the downstream, as it is an electrical part. In this case, the <AddToPropertyname="com.ptc.windchill.associativity.reconciliation.addusage.com.ptc.ElectricalPart" value="doNotTransform=true"/> takes precedence over the other properties.