Publishing Multiple Effectivity Information
A part or product is manufactured based on the applied effectivities. It is important to publish the applied effectivities to the downstream Enterprise Resource Planning (ERP) system.
Effectivities are applied to parts, extended data and department data objects. The effectivity can be a date, lot or serial number. For more information, see
About Effectivity.
You can publish the applied effectivity information in the Windchill Enterprise Systems Integration (ESI) response to a distribution target using the ERP Connector. The configuration required for the effectivity information to get published in the Windchill ESI response is provided by default.
You can publish the effectivity from the raw material link object along with the BOM.
1. To publish effectivity from manufacturing history object through change notice:
a. In esi.properties.xconf file, set the default value to true in the following property:
<Property default="false" name="com.ptc.windchill.esi.publishEffectivityInformationFromManufacturingHistory"/>
b. Run the following command:
xconfmanager -pf
c. After propagating the property you will see com.ptc.windchill.esi.publishEffectivityInformationFromManufacturingHistory in esi.properties file.
4. Click > . The Update Distribution Targets page opens. On this page, search for and select the check boxes of the target that you want to publish to.
5. Click OK.
6. Select the root part in upstream or downstream view and click > . The Send To Distribution Target page opens.
7. Click Next. The Included Objects section displays the list of targets selected for publishing.
8. Click Send. A message confirms that publishing has started.
9. Resolve the change notice.
The following response is generated:
Effectivity
<Effectivity>
<ObjectID>OR:wt.effectivity.WTDatedEffectivity:198919:222562873-1634234454365-525180031-1-0-0-127@vagrant.ptcnet.ptc.com</ObjectID>
<Class>com.ptc.windchill.esi.Part</Class>
<StartEffectivity>2021-10-27 00:00:00</StartEffectivity>
<EndEffectivity>2021-10-31 00:00:00</EndEffectivity>
<EffectivityCxtPartNumber/>
<EffectivityType>Date Effectivity</EffectivityType>
<EffectivityQualifier>Exact</EffectivityQualifier>
<PartMaster>0000000064</PartMaster>
<TargetID>FILE_0001</TargetID>
</Effectivity>
Publishing Effectivity as an Element in a Separate Group
Windchill ESI enables you to publish multiple effectivity information associated with an object to a distribution target using the ERP Connector. By default, the effectivity associated with the following objects is published as a separate group in the ESI response:
• Part
• Made from Set
• Co-Produce
• BOM Header
• BOM Component
• Enterprise Data
• Plant Data
• Department Data
• Production Version
In the ESI response, effectivity is published in the Added, Unchanged, or Deleted groups. Effectivity applied to the extended data and department data is published outside of their respective groups. It is not combined with the part effectivity information, even if the extended data and department data attributes are combined with the part attributes.
Refer to the following sample of part and effectivity elements in the ESI response. Note that the AssociatedEffectivityID attribute in the part matches the ObjectID attribute in the effectivity.
<AddedBOMs NAME="AddedBOMs" TYPE="Unknown" STATUS="0">
<BOMHeader>
<ObjectID>OR:wt.part.WTPart:234172:885848332-1727961145874-1013430185-147-200-228-10@vagrant.ptcnet.ptc.com</ObjectID>
<Class>com.ptc.windchill.esi.BOMHeader</Class>
<LastChangedBy>wcadmin</LastChangedBy>
<Number>SXKMB00224</Number>
<Version>A</Version>
<Iteration>2</Iteration>
<EnterpriseVersion/>
<PreviousVersion/>
<Usage/>
<Alternate/>
<IsCADPhantom>false</IsCADPhantom>
<IsCollapsible>false</IsCollapsible>
<AssociatedEffectivityID>OR:wt.part.ProductSerialNumberEffectivity:234224:885848332-1727961145874-1013430185-147-200-228-10@vagrant.ptcnet.ptc.com</AssociatedEffectivityID>
<EffectivityCxtPartNumber>SXKMB00164</EffectivityCxtPartNumber>
<PreviousChangeNumber/>
<Type>Part</Type>
<TargetPlant/>
<Quantity/>
<Unit/>
<AssociatedMadeFromObjectID/>
<IsAllocatedAsResource>false</IsAllocatedAsResource>
<TargetID>FILE_DT_01</TargetID>
</BOMHeader>
</AddedBOMs>
...
<AddedEffectivities NAME="AddedEffectivities" TYPE="Unknown" STATUS="0">
<Effectivity>
<ObjectID>OR:wt.part.ProductSerialNumberEffectivity:234224:885848332-1727961145874-1013430185-147-200-228-10@vagrant.ptcnet.ptc.com</ObjectID>
<Class>com.ptc.windchill.esi.Part</Class>
<StartEffectivity>32</StartEffectivity>
<EndEffectivity>98</EndEffectivity>
<EffectivityCxtPartNumber>SXKMB00164</EffectivityCxtPartNumber>
<EffectivityType>End Item Serial Number Effectivity</EffectivityType>
<EffectivityQualifier>Exact</EffectivityQualifier>
<PartMaster>SXKMB00224</PartMaster>
<TargetID>FILE_DT_01</TargetID>
</Effectivity>
</AddedEffectivities>
By default, the effectivity is published as an element in a separate group. To change the default behavior, set one of the following properties:
• To publish effectivity within the same group as of the associated object, set the following property to true using xconf manager:
xconfmanager -s com.ptc.windchill.esi.renderEffectivityElementInPartElement=true -t codebase/com/ptc/windchill/esi/esi.properties -p
• To publish effectivity as an attribute within the object element, set the following property to true using xconf manager:
xconfmanager -s com.ptc.windchill.esi.renderEffectivityWithPartAttributes=true -t codebase/com/ptc/windchill/esi/esi.properties -p
Incremental Publishing of BOM Based on Effectivity Context
To publish BOM based on the effectivity context, set the preference Enable computation of difference in BOM based on effectivity context to Yes. This preference can be configured as the Site or Organizations level by navigating to > > > . When the preference is set to Yes, the BOM being published is compared with its earlier version published that was published with the same effectivity context for the same distribution target. When set to No, which is the default value, the BOM being published is compared with the last published BOM without considering the effectivity context.
| To implement incremental publishing based on the effectivity context, additional metadata about the effectivity context is saved with the release activities for BOM header, BOM component, substitute links, and reference designator links. However, BOMs published using earlier Windchill releases will not have the required metadata persisted. For this feature to work with BOMs published using earlier Windchill releases, you can manually load the relevant release activities with effectivity context and change number information. For more information, see Loading Release History. |
In ECN-centric mode of publication, the preferences, Include Effectivity Context and Validate effectivity Context should be set accordingly to publish the BOM based on the effectivity context. Consider the following scenarios when publishing a BOM with the preference Enable computation of difference in BOM based on effectivity context set to Yes:
Scenario | BOM Structure | ESI Response | Remarks |
|---|
1 | Create and publish the part structure with the following effectivity: ParentPart_1 (A.1) ChildPart_1 ChildPart_2 Apply effectivity to ParentPart_1 Context: Cntxt_1 (Part number - 0000000001) Serial No: 1-100 | Added Parts: ParentPart_1 ChildPart_1 ChildPart_2 Added Effectivity: End Item Serial Number Effectivity 1-100 EffectivityCxtPartNumber: 0000000001 (Cntxt_1) Added BOM Header: ParentPart_1 Added BOM Components: ChildPart_1 ChildPart_2 | In this scenario, all parts, BOM header, and components are created. Effectivity is added. |
2 | Revise ParentPart_1 to add ChildPart_3 and publish the following structure with a different effectivity context. ParentPart_1 (B.1) ChildPart_1 ChildPart_2 ChildPart_3 Apply effectivity to ParentPart_1 Context: Cntxt_2 (Part number 0000000002) Serial No: 1001-1100 | Added Parts: ChildPart_3 Changed Parts: ParentPart_1 Unchanged Parts: ChildPart_1 ChildPart_2 Added Effectivity: End Item Serial Number Effectivity: 1001-1100 EffectivityCxtPartNumber: 0000000002 Added BOM Header: ParentPart_1 Added BOM Components: ChildPart_1 ChildPart_2 ChildPart_3 | • Parts are added, changed, or unchanged as per the actions performed. • Effectivity is published as added. • BOM header and components are added as the effectivity context for ParentPart_1 (B.1) is different from ParentPart_1 (A.1). |
3 | Revise ParentPart_1. Update the quantity of ChildPart_1 and ChildPart_2. Publish the following structure with the same effectivity context as in scenario 1. ParentPart_1 (C.1) ChildPart_1 (with updated quantity) ChildPart_2 (With updated quantity) ChildPart_3 Apply effectivity to ParentPart_1 Context: Cntxt_1 (Part number 0000000001) Serial No: 101-200 | Changed Parts: ParentPart_1 Unchanged Parts: ChildPart_1 ChildPart_2 ChildPart_3 Deleted Effectivity: End Item Serial Number Effectivity: 1-100 EffectivityCxtPartNumber: 0000000001 Added Effectivity: End Item Serial Number Effectivity: 101-200 EffectivityCxtPartNumber: 0000000001 Changed BOM Header: ParentPart_1 Added BOM Components: ChildPart_3 Changed BOM Components: ChildPart_1 ChildPart_2 | • Parts are added, changed, or unchanged as per the actions performed. • Previous effectivity is deleted, and the new effectivity is published as added. • BOM header and components for parts ParentPart_1, ChildPart_1, and ChildPart_2 are published as changed, as they were published previously (see Scenario 1). • BOM component for ChildPart_3 is published as added as this part was not available in BOM for version A.1 |
| • Publishing Made from Set and Co-produce objects based on effectivity is supported when the preference Enable computation of difference in BOM based on effectivity context is set to Yes. • If the effectivity context part is not the immediate parent and the preference Enable computation of difference in BOM based on effectivity context is set to Yes, an ESI response is generated. However, an error message is displayed by the middleware when publishing in Oracle Applications. |