發佈多個生失效資訊
製造零件或產品時,會以套用的生失效為基礎。將套用的生失效發佈到下游企業資源計劃 (ERP) 系統是很重要的。
生失效會套用至零件、延伸資料以及部門資料物件。生失效可以是日期、批號或序號。如需詳細資訊,請參閱關於生失效
您可使用 ERP Connector,將 Windchill Enterprise Systems Integration (ESI) 回應中的已套用生失效資訊發佈至發佈目標。預設會提供要在 Windchill ESI 回應中發佈生失效資訊所需要的組態。
您可從原料連結物件以及 BOM 發佈生失效。
1. 欲透過變更通知從製造記錄物件發佈生失效:
a. esi.properties.xconf 檔案中,將下列內容的預設值設定為 true
<Property default="false" name="com.ptc.windchill.esi.publishEffectivityInformationFromManufacturingHistory"/>
b. 執行下列指令:
xconfmanager -pf
c. 傳播內容之後,您將會在 esi.properties 檔案中看到 com.ptc.windchill.esi.publishEffectivityInformationFromManufacturingHistory
2. 在 BOM 轉換器中開啟零件,並使用 > 「插入材質」動作新增原料零件。如需詳細指示,請參閱將半成品或原料零件與零件相關聯
3. 建立變更通知 ECN_001、將其與 BOM 結構相關聯並新增生失效
4. 按一下 > 「更新發佈目標」「更新發佈目標」頁即會開啟。在此頁面中,搜尋並選取您要發佈至之目標的核取方塊。
5. 按一下「確定」
6. 在上游或下游檢視中選取根零件,然後按一下 > 「傳送至發佈目標」「傳送至發佈目標」頁即會開啟。
7. 按一下「下一步」「已包括物件」部份會顯示選取要發佈之目標的清單。
8. 按一下「傳送」。會有一則訊息確認發佈已經開始。
9. 解決變更通知。
系統會產生下列回應:
生失效
<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>
將生失效發佈為單獨群組中的元素
Windchill ESI 可讓您使用 ERP Connector,將與物件相關聯的多個生失效資訊發佈至發佈目標。依預設,會在 ESI 回應中將與下列物件相關聯的生失效發佈為單獨的群組:
零件
構成集
共同生產
BOM Header
BOM 元件
企業資料
工廠資料
部門資料
生產版本
在 ESI 回應中,會在「已新增」、「未變更」或「已刪除」群組中發佈生失效。套用至延伸資料與部門資料的生失效會在其各自的群組之外發佈。即使將延伸資料及部門資料屬性與零件屬性組合在一起,該資訊也不會與零件生失效資訊組合。
請參閱 ESI 回應中零件與生失效元素的以下範例。請注意,零件中的 AssociatedEffectivityID 屬性與生失效中的 ObjectID 屬性相符。
<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>
依預設,會將生失效發佈為單獨群組中的元素。欲變更預設行為,請設定下列其中一個內容:
欲在與相關聯物件相同的群組中發佈生失效,請使用 xconf 管理員將下列內容設定為 true
xconfmanager -s com.ptc.windchill.esi.renderEffectivityElementInPartElement=true -t codebase/com/ptc/windchill/esi/esi.properties -p
欲將生失效發佈為物件元素內的屬性,請使用 xconf 管理員將下列內容設定為 true
xconfmanager -s com.ptc.windchill.esi.renderEffectivityWithPartAttributes=true -t codebase/com/ptc/windchill/esi/esi.properties -p
根據生失效前後關聯增量發佈 BOM
欲根據生失效前後關聯發佈 BOM,請將「根據生失效前後關聯在 BOM 中啟用差異計算」偏好設定設為「是」。您可導覽至「公用程式」 > ESI > 設定 > BOM,將此偏好設定配置為「網站」或「組織」層級。當將此偏好設定設為「是」時,會將要發佈的 BOM 與之前使用相同發佈目標之相同生失效前後關聯所發佈的已發佈版本進行比較。當此偏好設定設為「否」(預設值) 時,會將要發佈的 BOM 與上次發佈的 BOM 進行比較,而不考慮生失效前後關聯。
在以 ECN 為中心的發佈模式中,應相應設定「包括生失效前後關聯」「驗證生失效前後關聯」偏好設定,以根據生失效前後關聯發佈 BOM。
「根據生失效前後關聯在 BOM 中啟用差異計算」偏好設定設為「是」的情況下發佈 BOM 時,請考慮下列情境:
情況
BOM 結構
ESI 回應
備註
1
建立及發佈具有下列生失效的零件結構:
ParentPart_1 (A.1)
ChildPart_1
ChildPart_2
將生失效套用至 ParentPart_1
前後關聯:Cntxt_1 (零件編號 - 0000000001)
序號:1-100
新增的零件:
ParentPart_1
ChildPart_1
ChildPart_2
新增的生失效:
最終項目序號生失效 1-100
EffectivityCxtPartNumber: 0000000001 (Cntxt_1)
新增的 BOM 標題:
ParentPart_1
新增的 BOM 元件:
ChildPart_1
ChildPart_2
在此情境下,會建立所有零件、BOM 標題與元件。
已新增生失效。
2
版本修訂 ParentPart_1 以新增 ChildPart_3,並發佈具有不同生失效前後關聯的下列結構。
ParentPart_1 (B.1)
ChildPart_1
ChildPart_2
ChildPart_3
將生失效套用至 ParentPart_1
前後關聯:Cntxt_2 (零件編號 0000000002)
序號:1001-1100
新增的零件:
ChildPart_3
變更的零件:
ParentPart_1
未變更的零件:
ChildPart_1
ChildPart_2
新增的生失效:
最終項目序號生失效:1001-1100
EffectivityCxtPartNumber:0000000002
新增的 BOM 標題:
ParentPart_1
新增的 BOM 元件:
ChildPart_1
ChildPart_2
ChildPart_3
會根據執行的動作新增、變更或不變更零件。
生失效會發佈為已新增。
會新增 BOM 標題與元件,因為 ParentPart_1 (B.1) 與 ParentPart_1 (A.1) 的生失效前後關聯不同。
3
版本修訂 ParentPart_1。更新 ChildPart_1 與 ChildPart_2 的數量。發佈下列結構,其生失效前後關聯與情境 1 中相同。
ParentPart_1 (C.1)
ChildPart_1 (數量已更新)
ChildPart_2 (數量已更新)
ChildPart_3
將生失效套用至 ParentPart_1
前後關聯:Cntxt_1 (零件編號 0000000001)
序號:101-200
變更的零件:
ParentPart_1
未變更的零件:
ChildPart_1
ChildPart_2
ChildPart_3
已刪除的生失效:
最終項目序號生失效:1-100
EffectivityCxtPartNumber:0000000001
新增的生失效:
最終項目序號生失效:101-200
EffectivityCxtPartNumber:0000000001
變更的 BOM 標題:
ParentPart_1
新增的 BOM 元件:
ChildPart_3
變更的 BOM 元件:
ChildPart_1
ChildPart_2
會根據執行的動作新增、變更或不變更零件。
會刪除上一個生失效,並將新生失效發佈為已新增。
會針對 ParentPart_1、ChildPart_1 與 ChildPart_2 零件發佈 BOM 標題與元件,而且會將其發佈為已變更,就像之前發佈時 (情境 1) 一樣。
ChildPart_3 的 BOM 元件會發佈為已新增,因為,此零件在 A.1 版本的 BOM 中不可用
* 
當將「根據生失效前後關聯在 BOM 中啟用差異計算」偏好設定設為「是」時,支援根據生失效發佈「構成集」與「共同生產」物件。
在 SAP 系統中發佈生失效資訊
在 SAP 系統中發佈生失效資訊時,請考慮以下事項:
TIBCO 中介軟體中的全域變數 RenderEffectivityInSeparateElement 可決定是否在 ESI 回應中的單獨元素中發佈生失效資訊。依預設,此全域變數設定為 true。欲在 part 元素內發佈生失效資訊或將其發佈為零件屬性,您必須將此全域變數設定為 false
針對 SAP 中的耗用,會考慮與 ESI 回應中 AddedEffectivities 元素中之物件顯示相關聯的生失效。
在 SAP 系統中,會耗用相同類型之生失效資訊的多個實例。
系統會略過不同生失效類型的多個生失效,而且發佈物件時不會顯示任何生失效資訊。
當在 ESI 回應中的單獨元素中發佈生失效資訊時,與 TIBCO 全域變數 PartEffectivityFlag 相關的行為不適用。
SAP 系統中只會耗用使用變更通知發佈的生失效資訊。不會耗用在沒有變更通知的情況下發佈的生失效資訊。
TIBCO business logic 不會耗用企業資料與工廠資料的生失效。這也適用於部門資料。
SAP 中基於生失效前後關聯的增量 BOM 耗用
只有在 ESI 回應中的單獨元素中發佈生失效,且中介軟體中的全域變數 RenderEffectivityInSeparateElement 設為 true 時,才會在 SAP 中耗用根據生失效前後關聯發佈的增量 BOM。
根據生失效前後關聯發佈的增量 BOM 耗用取決於各物件的 EffectivityCxtPartNumber 屬性值。如果此屬性使用值發佈,但 ESI 回應不包括變更通知,則中介軟體會產生錯誤訊息。
SAP 允許發佈具有多個生失效前後關聯的多個 BOM;但是,所有生失效前後關聯都會套用至所有 BOM,因此會導致結果不正確。
對於單一變更通知,您必須針對所有 BOM 僅發佈一個生失效前後關聯。如果變更通知包含與多個生失效前後關聯相關聯的多個 BOM,則中介軟體會產生錯誤訊息。
基於生失效前後關聯的增量 BOM 耗用僅與序列生失效相關。在 SAP 系統中,日期生失效不包括前後關聯資訊。
這是否有幫助?