通過 WebSphere Partner Gateway V6.2 實現 EDI,第 2 部分

CloudSpace發表於2010-08-30
Sonali Samantaray, 軟體工程師, IBM

簡介: 本文章系列講述如何使用 WebSphere Partner Gateway V6.2 進行 Electronic Data Interchange (EDI) 轉換。第 2 部分演示如何實現兩個不同的拆封和 EDI 轉換操作 —— EDI 到 XML 轉換和 EDI 到面向記錄的資料(Record-Oriented Data,ROD)轉換。

簡介

本文介紹 IBM® WebSphere® Partner Gateway V6.2 中的兩個轉換和封裝(enveloping)場景。在場景 1 中,WebSphere Partner Gateway 從一個內部或外部合作伙伴接收一些 XML 文件,將它們轉換為 EDI 事務,封裝事務,然後將它們返回內部或外部合作伙伴。在場景 2 中,WebSphere Partner Gateway 從一個內部或外部合作伙伴接收一些面向記錄的資料(ROD)文件,將這些文件轉換為 EDI 事務,封裝事務,然後將它們返回內部或外部合作伙伴。(ROD 文件是遵守一個專用格式的文件。)

拆封(de-enveloping)指的是將一個單一的 EDI 文件拆分為它的多個元素 EDI 業務文件,這些文件稱為 “事務”。在 EDIFACT 標準中,這些文件稱為 “訊息”。每個事務或訊息作為單獨的業務文件流流經文件管理器。拆封不同於分割(splitting)。當多個 EDI 文件被放置到一個檔案中時適合使用分割方法,而且這些文件相互之間可能沒有任何關係。EDI 拆分程式提取 Enveloper 級別、Group 級別和 Transaction 級別資訊。

先決條件

  • 應該安裝並執行 WebSphere Partner Gateway V6.2
  • 下載本文末尾的 samples.zip 並將其解壓縮到一個資料夾中,它包含樣例對映和輸入檔案。

場景 1. EDI 到 XML 文件流

在場景 1 中,來自源貿易伙伴的一個入站 EDI X12 ISA 穿過一個集線器,這個 EDI 在集線器中轉換為 XML,輸出 XML 然後被髮送到目標貿易伙伴。對映是 EDI-XMLcompiled.eif,輸入檔案是 EDI_855_XMLInput.edi。


圖 1. EDI 到 XML 文件流
EDI 到 XML 文件流

步驟 1. 匯入對映

  1. 登入 WebSphere Partner Gateway 社群控制檯。
  2. 導航到 Wizards => EIF Import Wizard
  3. 單擊 Browse 並從檔案系統選擇 EDI-XMLcompiled.eif
  4. 單擊 Import

    圖 2. 使用 EIF Import Wizard 匯入一個對映
    使用 EIF Import Wizard 匯入一個對映

  5. 下一個螢幕開啟:

    圖 3. Import summary 螢幕
    Import summary 螢幕

  6. 單擊 Next 檢視使用這個對映匯入建立的事務:

    圖 4. 建立的預設互動
    建立的預設互動

  7. 單擊 Next,然後單擊 Finish

    圖 5. Import completion 螢幕
    Import completion 螢幕

步驟 2. 驗證對映匯入

  1. 導航到 Hub Admin => Hub Configuration => Maps => Transformation maps。轉換對映 EDI_XML_PO-ACK 應該被列示出來。
  2. 單擊 View details 圖示檢查在源和目標端的文件定義。

    圖 6. 從源到目標的文件定義
    從源到目標的文件定義

步驟 3. 建立接收器

  1. 導航到 Hub Admin => Receivers
  2. 單擊 Create Receiver
  3. 指定接收器的名稱。例如:FileReceiver
  4. 選擇 Transport 作為 File directory
  5. 指定 Document Root Path。例如:/FileReceiver
  6. 單擊 Save。只有在預期輸入文件帶有多個 EDI ISA 時才需要 EDI Splitter。

步驟 4. 建立合作伙伴

  1. 建立一個 Internal Partner,名稱為 Manager,DUNS id 為 123123123。
  2. 建立一個 External Partner,名稱為 Partner,DUNS id 為 321321321。
  3. 編輯輸入檔案 EDI_855_XMLInput.edi,修改 Sender 和 Receiver IDs,如下所示:

    圖 7. 修改輸入 XML 檔案中的 Sender 和 Receiver IDs
    Sender ID 和 Receiver ID

步驟 5. 建立目的地

  1. 選擇 transport 作為 File Directory,建立 Manager 和 Partner 的 Destinations。

步驟 6. 建立互動

  1. 對於 EDI 到 XML 場景,建立兩個互動:一個對應於拆封,另一個對應於生成的已拆封訊息到 XML 的轉換。
  2. 驗證和轉換的互動已經在匯入對映時建立。
  3. 導航到 Hub Admin => Document Definition => Create interaction
  4. 選擇以下專案,為拆封建立一個互動:
    • Source Package: N/A, Protocol: EDI-X12(ALL), Document Flow: ISA(ALL)
    • Target Package: None, Protocol:EDI-X12(ALL), Document Flow:ISA (ALL)
    • Action EDI De-envelope

步驟 7. 為合作伙伴啟用 B2B 功能

  1. 為 Manager (Internal Partner) 啟用以下 Package、Protocol 和 Document Flow:
    • Package: None, Protocol: EDI-X12 (ALL), Document Flow: ISA (ALL)
    • Package: N/A (N/A), Protocol: X12V4R1 (ALL), Document Flow: 855 (ALL)
  2. 為 Partner (External Partner) 啟用以下 Package、Protocol 和 Document Flow:
    • Package: N/A, Protocol: EDI-X12 (ALL), Document Flow: ISA (ALL)
    • Package: None (N/A), Protocol: CUSTOM_XML(ALL), Document Flow: PURCHASE_ORDER_ACK(ALL)

步驟 8. 啟用連線

  1. 導航到 Account Admin => Connections
  2. 從 Source 下拉選單中選擇 Manager
  3. 從 Target 下拉選單中選擇 Partner
  4. 這些連線應該被啟用,如下所示:

    圖 8. 啟用合作伙伴連線
    啟用合作伙伴連線

步驟 9. 支援帶有副本 IDs 的元素

每個封裝的 EDI 文件都有一個關聯的控制編號,作為 ISA 段的一部分,這個控制編號惟一識別入站文件。為了多次使用相同的輸入文件,需要告知 WebSphere Partner Gateway 允許副本控制編號,否則,它將不處理文件,並丟擲一個副本交換錯誤:

  1. 導航到 Hub Admin => Hub Configuration => Document Definition
  2. 單擊 Package: None 旁邊的展開節點圖示,這將開啟所有可用協議的列表。
  3. 單擊 Protocol: EDI-X12 (ALL) 旁邊的編輯屬性圖示。
  4. 定位 Document Flow Context Attributes 下方的 Allow documents with duplicate document ids 屬性,從下拉選單中選擇 Yes
  5. 單擊 Save

步驟 10. 執行場景

  1. 將輸入檔案 EDI_855_XMLInput.edi 複製到 FileReceiver/Documents/Production 資料夾。
  2. 導航到 Viewers => Document Viewer,檢查文件狀態。這個 EDI 文件應該被拆封並轉換為 XML。
  3. 這個 XML 文件被髮送到 Partner 目的地。
  4. 輸出事務如下所示:

    圖 9. Document Viewer 中的事務
    Document Viewer 中的事務

場景 2. EDI 到 ROD 文件流

在場景 2 中,一個來自源貿易伙伴的入站 EDI X12 ISA 穿過集線器,該 EDI 在集線器中轉換為 ROD,然後被髮送到目標貿易伙伴。對映是 compiledEDI_ROD.eif,輸入檔案是 edi2adf.inp:


圖 10. EDI 到 ROD 文件流
EDI 到 ROD 文件流

步驟 1. 匯入對映

  1. 使用 EIF Import Wizard 匯入對映,如場景 1 的步驟 1 所述:

    圖 11. Map import completion 螢幕
    Map import completion 螢幕

步驟 2. 驗證對映匯入

參見場景 1 的步驟 2 驗證:S-DT-EDI-TO-ADF 是否列示,文件定義是否建立。

步驟 3. 建立接收器

  1. 導航到 Hub Admin => Receivers
  2. 單擊 Create Receiver
  3. 指定 Receiver 的名稱。例如:EDItoRODFileReceiver。
  4. 選擇 Transport 作為 File Directory
  5. 指定 Document Root Path。例如:/EDItoRODFileReceiver。
  6. 單擊 Receiver Creation 頁面上的 Save

步驟 4. 建立合作伙伴

在場景 1 的步驟 4 中建立的合作伙伴可以在這個場景中重用,或者,也可以建立新的合作伙伴。為簡便起見,重用場景 1 中建立的合作伙伴。編輯輸入檔案 edi2adf.inp,修改 Sender 和 Receiver IDs,如圖 7 中的 場景 1 所示。

步驟 4. 建立目的地

選擇 transport 作為 File Directory,建立 Manager 和 Partner 的 Destinations。這個步驟可以重用場景 1 中建立的目的地。

步驟 5. 建立互動

對於 EDI 到 ROD 場景,建立兩個互動:一個對應於拆封,一個對應於生成的已拆封訊息到 ROD 的轉換。第一個互動已經在場景 1 的步驟 6 中建立,第二個互動已在轉換對映匯入時建立。

步驟 6. 為合作伙伴啟用 B2B 功能

  1. 為 Manager (Internal Partner) 啟用以下 Package、Protocol 和 Document Flow:
    • Package: None, Protocol: EDI-X12 (ALL), Document Flow: ISA (ALL)
    • Package: N/A, Protocol: X12V2R1 (ALL), Document Flow: 850 (ALL)
  2. 為 Partner (External Partner) 啟用以下 Package、Protocol 和 Document Flow:
    • Package: N/A, Protocol: EDI-X12 (ALL), Document Flow: ISA (ALL)
    • Package: None, Protocol: DEMO850CL_DICTIONARY (ALL), Document Flow: DEMO850CLSUW (ALL)

步驟 7. 啟用連線

  1. 導航到 Account Admin => Connections
  2. 從 Source 下拉選單中選擇 Manager
  3. 從 Target 下拉選單中選擇 Partner
  4. 啟用連線,如下所示:

    圖 12. 啟用合作伙伴連線
    啟用合作伙伴連線

步驟 8. 支援帶有多個 IDs 的元素

這個配置已經在場景 1 的步驟 9 中完成。

步驟 9. 執行場景

  1. 將輸入檔案 edi2adf.inp 複製到 EDItoRODFileReceiver/Documents/Production 資料夾。
  2. 導航到 Viewers => Document Viewer,檢查文件狀態。這個 EDI 文件應該被拆封並轉換為 ROD。
  3. 這個 ROD 文件然後被髮送到 Partner 的目的地。輸出事務如下所示:

    圖 13. Document Viewer 中的事務
    Document Viewer 中的事務

結束語

本文演示了在 WebSphere Partner Gateway V6.2 中進行拆封和轉換的兩個場景 —— EDI 到 XML 轉換和 EDI 到 ROD 轉換。

原文連結:http://www.ibm.com/developerworks/cn/websphere/library/techarticles/1005_samantaray/1005_samantaray.html

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14789789/viewspace-672138/,如需轉載,請註明出處,否則將追究法律責任。

相關文章