ユースケース 5: 部品に基づいて特定の構造をスキャンせずに下流構造を生成
BOM トランスフォーマに以下の構造が存在するとします。
• Upstream Parent Part (Design) と Downstream Parent Part (Manufacturing) の間に対応リンクが存在します。
• 構造内の Part C2 (Design) を除くすべての部品の部品タイプは wt.part.WTPart です。
• Part C2 (Design) の部品タイプは ElectricalPart です。
構造のスキャンに基づいて下流構造を生成するには、規則ファイルまたはプロパティファイルを使用して変換規則と再構築規則を指定できます。
規則ファイルを使用
{
"transformRules": [
{
"sourceType": "wt.part.WTPart",
"newAttributeMappings": [
[
"source.usage.AttributeNum1:String1",
"target.part.AttributeNum2:String2"
]
],
"targetType": "wt.part.WTPart",
"transformOption": "newPart"
},
{
"sourceType": "com.ptc.ElectricalPart",
"doNotTraverse": "true"
},
]
}
プロパティファイルを使用
1. Windchill/codebase/com/ptc/core/foundation/associativity にあるファイル associativity.properties.xconf にアクセスします。
2. 以下の再構築規則を追加します。
<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=newBranch"/>
<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"/>
| マッピングを含むプロパティの場合、上流と下流に指定されているマッピング属性が同じであってはなりません。 |
<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="transformOption=newBranch"/>
<AddToProperty name="com.ptc.windchill.associativity.reconciliation.addusage.com.ptc.ElectricalPart" value="doNotTraverse=true"/>
上流で選択した部品に対して
操作を開始すると、選択した部品の下の構造がスキャンされます。このコンフィギュレーションによって以下の処理が行われます。
• 部品親子関係属性 AttributeNum1 が String1 に設定されている部品が検出された場合、検出された部品は、下流の、部品の親子関係タイプが wt.part.WTPart で部品親子関係属性 AttributeNum2 が String2 に設定されている部品の下に、新規ブランチとして追加されます。
• 部品の親子関係タイプが ElectricalPart である部品が検出された場合、その部品は新規ブランチとして追加されます。ただし、検出された部品の下の構造はスキャンされません。
この場合、ElectricalPart のマッピングに関連するプロパティは追加されません。ElectricalPart は wt.part.WTPart のサブタイプです。ElectricalPart は wt.part.WTPart から GDS マッピングプロパティを継承します。
BOM トランスフォーマに以下の構造が表示されます。
• ElectricalPart のマッピングに関連するプロパティは追加されません。この場合も、Part C2 (Manufacturing) は部品の親子関係タイプが wt.part.WTPart で部品親子関係属性 AttributeNum2 が String2 に設定されている下流部品の下に新規ブランチとして追加されます。これは、ElectricalPart が wt.part.WTPart のサブタイプであるためです。ElectricalPart は wt.part.WTPart から GDS マッピングプロパティを継承します。wt.part.WTPart には GDS マッピングプロパティが定義されています。
• Part C2 (Design) は ElectricalPart なので、<AddToPropertyname="com.ptc.windchill.associativity.reconciliation.addusage.com.ptc.ElectricalPart" value="doNotTraverse=true"/> で設定されている基準に従って、Part C2 (Design) の下の構造は変換されません。