Дополнительные возможности > Управление производственным процессом > Преобразование ведомости конструкционных материалов в производственную ведомость материалов > Создание производственной ведомости материалов > Обзор действия "Генерировать дочернюю структуру" > Примеры использования действия "Генерировать дочернюю структуру" > Пример использования 8. Генерирование дочерней структуры путем пропуска детали на основе двух атрибутов
  
Пример использования 8. Генерирование дочерней структуры путем пропуска детали на основе двух атрибутов
Обратите внимание, что в преобразователе вед. материалов присутствует следующая структура:
Связь эквивалентности существует между Upstream Parent Part (Design) и Downstream Parent Part (Manufacturing).
Part C2 (Design), Part C3 (Design), Part C5 (Design) и Part C6 (Design) имеют атрибут использования детали Attribute1 со значением true.
* 
Attribute1 является атрибутом логического типа. В Windchill значениями этого атрибута являются Yes и No. true и false являются синонимами для Yes и No соответственно.
Все детали в структуре имеют тип детали wt.part.WTPart.
1. Откройте файл associativity.properties.xconf в папке Windchill/codebase/com/ptc/core/foundation/associativity.
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=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=Attribute1:true:CustomAttribute1:String1"/>
<AddToProperty name="com.ptc.windchill.associativity.reconciliation.addusage.wt.part.WTPart" value="skipAttribute.source=Buy"/>
<AddToProperty name="com.ptc.windchill.associativity.reconciliation.addusage.wt.part.WTPart" value="skipAttribute.Attribute2=true"/>
<AddToProperty name="com.ptc.windchill.associativity.reconciliation.addusage.wt.part.WTPart" value="doAndValidationForAttr=true"/>
* 
После инициирования действия с выбранной деталью в родительской структуре система Windchill проходит по структуре ниже выбранной детали. Эта конфигурация обеспечивает следующее:
Если система Windchill находит деталь в родительской структуре с атрибутом детали Attribute1 с заданным значением true, она преобразуется в дочерней структуре под деталь, у которой атрибут CustomAttribute1 имеет значение String1. Она преобразуется как новая деталь.
Если система Windchill обнаруживает в родительской структуре деталь с атрибутом использования детали Source со значением Buy, а атрибут Attribute2 имеет значение true, деталь пропускается и не добавляется в дочернюю структуру. Однако будет выполнен проход по структуре под обнаруженной деталью.
3. Выберите Upstream Parent Part (Design) и щелкните на панели инструментов средней панели.
4. В преобразователе вед. материалов появится следующая структура:
* 
Деталь Part C1 (Design) пропускается. Она не добавляется в дочернюю, так как удовлетворяет критериям, заданным в следующих свойствах:
<AddToProperty name="com.ptc.windchill.associativity.reconciliation.addusage.wt.part.WTPart" value="skipAttribute.source=Buy"/>
<AddToProperty name="com.ptc.windchill.associativity.reconciliation.addusage.wt.part.WTPart" value="skipAttribute.Attribute2=true"/>
<AddToProperty name="com.ptc.windchill.associativity.reconciliation.addusage.wt.part.WTPart" value="doAndValidationForAttr=true"/>
Part C4 (Design) не добавляется в дочернюю структуру, так как для Attribute1 задано значение false.
Ни одна деталь не добавляется под деталью Part T2 (Manufacturing), так как для атрибута использования детали CustomAttribute1 задано значение String2, а не String1.