Windchill+ 管理說明 > Windchill 管理與組態 > 特定管理 > MPMLink 管理 > 自訂用於產生製造結構的來源範本
自訂用於產生製造結構的來源範本
目標
自訂預設邏輯來解決「來源」清單中的製程計劃或途程計劃範本。
解決方案
使用現成委派架構來利用範本產生下游結構,同時可讓您延伸及套用自訂邏輯來填入「初始化製造結構」對話方塊中的「來源」清單。
必備知識
若要執行此任務,您必須瞭解下列項目:
Java 基礎原理 (繼承、集合)
Windchill 委派與 xconfmanager 公用程式
解決方案元素
RelatedSourceDelegate
由 Windchill 呼叫的抽象類別,用來擷取重複或「另存新檔」零件的來源範本。
DefaultRelatedSourceDelegate
用來擷取來源範本的預設實行。
CustomRelatedSourceDelegate
為根據專案需求解決來源範本而量身打造的自訂實行。
程序
欲實行用於擷取範本的自訂邏輯,請遵循下列步驟:
1. 透過延伸 DefaultRelatedSourceDelegate 來建立新委派類別,例如 CustomRelatedSourceDelegate
2. BaseServer-service.properties.xconf 檔案中註冊委派。
3. 視需要取代這些方法:
a. getSourceTemplates - 自訂用於擷取途程計劃範本的邏輯。
b. getSourceProcessPlans - 自訂用於擷取製程計劃範本的邏輯。
4. 執行 xconfmanager -p 以傳播變更。
5. 重新啟動應用伺服器,以使變更生效。
預設實行
以下是用來擷取來源途程計劃的預設實行:
範例 XCONF 程式碼片段
以下是註冊自訂委派的範例 XCONF 組態:
<Service context="default" name="com.ptc.windchill.baseserver.delegate.RelatedSourceDelegate">
<Option cardinality="singleton"
requestor=”null”
serviceClass="com.ptc.windchill.baseserver.delegate.CustomRelatedSourceDelegate"
selector="default"/>
</Service>
範例實行
下列範例顯示相關來源委派的自訂實行,其可從不同的 helper 擷取來源製程計劃 (例如,零件屬性中的製程計劃 OID 清單)。
public class CustomRelatedSourceDelegate extends DefaultRelatedSourceDelegate {
@Override
protected Set<String> getSourceProcessPlans(final WTPart selectedPart, NavigationCriteria nc, boolean flag) {
//Fetch the list of process plan oids and related mbom oid from attribute.
Map<String, String> partToProcessPlans = CustomHelper.getMBomToProcessPlanMap(selectedPart, nc);
Set<String> processPlans = new HashSet<>();
for(Entry<String, String> mapEntry : partToProcessPlans.entrySet()) {
String mBomOid = mapEntry.getKey();
String processPlanOid = mapEntry.getValue();
If (flag) {
processPlans.add(mBomOid + “|” + processPlanOid);
} else {
processPlans.add(processPlanOid);
}
}
return processPlans;
}
這是否有幫助?