與其他應用程式整合 > Windchill ESI 簡介 > 整合 Windchill ESI 與 SAP > 疑難排解 > 識別文件的問題
  
識別文件的問題
本節將描述與文件相關的常見問題和可能的原因。下列所示為一系列常見問題的清單。您可以使用這些連結,直接找到您所經歷問題的資訊。如果在清單中找不到您所經歷的問題,或者其建議的動作無法完全解決問題,請聯絡系統管理員。
無法建立文件 (在 SAP 中看不到它)
無法建立文件連結 (在 SAP 中看不到它)
即使已為 ESITarget 工廠從 Windchill 中刪除了文件,其連結仍在 SAP 中。
文件建立操作似乎成功,但出現了警告訊息 (40433)
文件變更操作似乎成功,但出現了警告訊息 (40445)
文件連結顯示在所有工廠中,但該連結之前僅存在於一個工廠中。
在物料圖形使用者介面中沒有出現文件連結
嚐試檢視 SAP 建立的文件或 BOM 時,描述欄位為空值。
SAP 中不顯示零件的未來生失效日期,但會顯示文件的生失效日期
變更主檔狀況 02 不允許變更接收到的訊息
與零件相關聯的文件並不會發行至所有相關聯的發佈目標
不會隨 ESI 回應傳送與零件相關聯的參考文件
將文件的生命週期狀態設定為「已發行」時,無法發行該文件
無法在 ESI 回應中發佈文件子類型的自訂 IBA
無法建立文件 (在 SAP 中看不到它)
下列原因可能會導致此問題:
文件編號超出範圍
屬性無效或遺失
URL 無效
指派給零件的 ESITarget 工廠不正確或無效
使用者於 SAP 中檢視錯誤的 ESITarget 工廠
文件與 Windchill 中的零件並無關聯,因此發行零件時不會發行它
文件與 Windchill 中的零件相關聯,但發佈目標屬性「發佈相關文件」的值為「否」
文件編碼的前置零被截斷
無法建立文件連結 (在 SAP 中看不到它)
下列原因可能會導致此問題:
文件與 Windchill 中的零件並無關聯,因此發行零件時不會發行它
文件與 Windchill 中的零件相關聯,但發佈目標屬性「發佈相關文件」的值為「否」
零件不存在於 SAP 中
即使已為 ESITarget 工廠從 Windchill 中刪除了文件,其連結仍在 SAP 中。
有一個中介軟體組態旗標,要求為工廠專屬的文件連結 (ESIFlags/EnableDocumentLinksToMARA) 在 MARA 表中建立文件連結。如果該旗標設定為 true,則會為所有由 Windchill 傳送的工廠專屬文件連結,在 SAP 的 MARA 表中自動建立文件連結。工廠專屬的連結也會建立於 MARC 表中。只有 Windchill 傳送請求,要刪除非工廠專屬之文件連結時,才會刪除 MARA 表中的連結。
文件建立操作似乎成功,但出現了警告訊息 (40433)
40433︰呼叫 BAPI_DOCUMENT_CREATENEWVRS2 時,SAP 傳回文件已經存在的功能錯誤。假設功能成功,繼續處理文件的作業。
SAP 的文件並非工廠專屬;因此,文件在傳送到相同 SAP 系統及用戶端中的多元 ESITarget 工廠時,導致 Windchill ESI 傳送原可安全忽略的多餘訊息至 SAP。
文件變更操作似乎成功,但出現了警告訊息 (40445)
40445.*.*=在 SAP 變更一個文件失敗
SAP 的文件並非工廠專屬;因此,文件在傳送到相同 SAP 系統及用戶端中的多元 ESITarget 工廠時,導致 Windchill ESI 傳送原可安全忽略的多餘訊息至 SAP。一旦在 ESITarget 工廠中變更文件,Windchill ESI 會將狀況設為「已發行」,阻擋接下來的變更。
文件連結顯示在所有工廠中,但該連結之前僅存在於一個工廠中。
有一個中介軟體組態旗標,要求為工廠專屬的文件連結 (ESIFlags/EnableDocumentLinksToMARA) 在 MARA 表中建立文件連結。如果該旗標設定為 true,則會為所有從 Windchill 傳送的工廠專屬文件連結,在 SAP 的 MARA 表中自動建立文件連結。工廠專屬的連結也會建立於 MARC 表中。若連結建立於 MARA 表中,則可透過物料 GUI 在所有物件存在的工廠中看見文件連結,但只能由為某種商業目的指定的工廠使用。
在物料圖形使用者介面中沒有出現文件連結
有一個中介軟體組態旗標,要求為工廠專屬的文件連結 (ESIFlags/EnableDocumentLinksToMARA) 在 MARA 表中建立文件連結。如果該旗標設定為 false,則不會為所有由 Windchill 傳送的工廠專屬連結,在 SAP 的 MARA 表中自動建立文件連結。工廠專屬的連結只會建立於 MARC 表中。
若連結未建立於 MARA 表中,則無法透過物料 GUI 看見文件連結,而是由為特定商業目的所指定的工廠使用。該連結只能透過文件 GUI 才可以看見。
嚐試檢視 SAP 建立的文件或 BOM 時,描述欄位為空值。
在 SAP 中,每個沒有文字的欄位皆具備一個相對應的語言鍵。
登入 SAP 時,只有指派給使用者的語言鍵中的文件描述搷入「描述」欄位中的「文件資料」標籤。文件使用者介面中的「文件描述」標籤保留所有的描述。如果在「文件資料」的標籤中沒有看見文件描述,則會列在「文件描述」標籤中。文件描述的語言鍵會在建立文件時設定。這個值會在 API 中傳送。它是 ESIDefaults.properties 檔中的預設值。這個值可以配置。
登入 SAP 時,只有指派給使用者的語言鍵的 BOM 描述,會出現在 BOM 編號的旁邊。在建立物料時設定 BOM (物料) 描述的語言鍵。這個值會在 API 中傳送。它是 ESIDefaults.properties 檔中的預設值。這個值可以配置。
關於您公司中 ESI 組態的相關問題,請聯絡 ESI 管理員。
SAP 中不顯示零件的未來生失效日期,但會顯示文件的生失效日期
這是預期的行為。ESI 將零件的生失效日期設定為今天,將文件的生失效日期設定為未來某一天。
變更主檔狀況 02 不允許變更接收到的訊息
當嘗試要從 Windchill 將已新增或已刪除的文件連結 (零件與文件之間的關係) 發行到 SAP 時,在 Windchill ESI 交易記錄檔中出現訊息「變更主物件狀況 02 不允許變更」,且在 SAP 中的文件連結未變更。
Windchill ESI 可以配置為允許 (或不允許) 在不修改文件版本的情況下更新文件連結。該組態由 TIBCO 中名為 ESIFlags/EnableDocumentECNLock 的全域變數所控制。
如果 ESIFlags/EnableDocumentCNLock 設定為 true,則在建立或變更文件時,將「變更主紀錄」資料寫入至 SAP 的文件物件。一旦將文件版本發行到 SAP,就不能在該文件中做任何變更,除非重新修訂該文件。在這種情況下,SAP 將會傳回訊息「變更主檔狀況 02 不允許變更」。
如果 ESIFlags/EnableDocumentCNLock 設定為 false,則在建立或變更文件時,不將「變更主記錄」資料寫入至 SAP 的文件物件。在這種情況下,變更會限制為文件連結與發佈目標,並會在沒有重新修訂文件的情形下,對相同的文件做變更。
不論此全域變數設定的方法為何,文件連結與發佈目標以外的文件資料變更,經常需要變更版本。在以零件為中心的環境中,此全域變數並不適用,並且文件連結與發佈目標可以在不修改文件版本的情況下修改。
如果全域變數設定為 true,並且使用者嚐試變更已發行的文件版本,就會發生這種情況。
如果已配置 Windchill ESI,來讓使用版本修訂的變更管理不在 SAP 中啟用,您可能也會遇到此問題。
關於您公司中 Windchill ESI 組態的相關問題,請聯絡 Windchill ESI 管理員。
與零件相關聯的文件並不會發行至所有相關聯的發佈目標
與相關零件比較,這可能會在文件與其他發佈目標相關聯時發生。在此情況下,文件將只會發行至與零件相關聯的目標。
若要將文件發行至其他目標,請使這些目標與零件相關聯,或在「變更通知」中將文件發行為獨立物件,或發行為產生的物件。
不會隨 ESI 回應傳送與零件相關聯的參考文件
如果符合以下任一條件,則會發生此情形:
Windchill ESI 的「發佈參考文件」偏好設定的值為「否」
與零件相關聯的參考文件主物件無法使用「參考文件組態規格狀態」偏好設定指定的值解析至版序。確保正確設定此偏好設定。
將文件的生命週期狀態設定為「已發行」時,無法發行該文件
如果符合以下任一條件,則會發生此情形:
「自動啟動 ESI 工作流程」偏好設定的值為「否」
「觸發文件發行的生命週期狀態」(或「觸發 CAD 文件發行的生命週期狀態」) 偏好設定的值中並沒有其中一個字符是 RELEASED
確保正確設定這些偏好設定。
無法在 ESI 回應中發佈文件子類型的自訂 IBA
不會在 ESI 回應中發佈文件子類型的自訂 IBA。如果符合以下條件,則會發生此情形:
如果在 ESI 回應中繼資訊檔案 (ESIResponseMetaInfo.xml) 中,則不會在 MapInformation 元素中定義文件的屬性與子類型。
解決方案:請確保已將可重新使用屬性與文件的子類型新增至 ESI 回應中繼資訊檔案,以針對文件子類型發佈自訂 IBA。請參閱下列範例,以瞭解建議的解決方案。
1. 「類型及屬性管理員」中,轉至「管理可重新使用屬性」並建立字串屬性,如下所示:
顯示名稱:string1
內部名稱:string1
2. 建立文件的子類型,如下所示:
顯示名稱:Subtype_Document
內部名稱:com.ptc.ptcnet.sub_Doc
3. 針對文件的子類型 (在步驟 2 中所建立) 建立 IBA (使用在步驟 1 中建立的可重新使用屬性),並包含下列資料:
內部名稱:string1
顯示名稱:string1
4. 在 ESI 回應中繼資訊檔案 (ESIResponseMetaInfo.xml) 中,更新如下所述的區段。
a. <!-- ESI Document Mapping --> 區段中,將黃色反白部份所示的可重新使用屬性 string1 新增至文件的子類型。
b. <!-- ESI Document Mapping Information--> 區段中,更新 <esi:typedef>,具體方式為:新增包含文件基礎類型的文件子類型 (在步驟 2 中所建立),並用 "|" 符號分隔,如下所示,或例如 wt.doc.WTDocument|com.ptc.ptcnet.sub_Doc
* 
如果修改了 Map 元素的 ID 屬性,則應以相同值修改 mapRef 元素。
5. 以不同名稱在下列位置儲存為 ESI 回應 XML 檔案:"WT_HOME\codebase\com\ptc\windchill\esi"。重新啟動應用伺服器。
6. 建立子類型 (在步驟 2 中所建立) 的文件,並為屬性 string1 提供值。將此另存新檔的文件與各自的發佈目標相關聯。
7. 使用「傳送至發佈目標」動作發佈此文件。檢查 string1 屬性的值是否已在 ESI 回應檔案中發佈。
* 
如需瞭解修改 ESI 回應中繼資訊檔案的更多相關資訊,請參閱 Windchill ERP Connector Customizer's Guide (Windchill ERP Connector 自訂指南) 中的 "ESI Response Meta Information File" 與 "Points to note while modifying the ESI response information file" 兩節。您可從「參考文件」頁搜尋此指南。