共用方式為


逐步解說 (X12):傳送 EDI 交換

本逐步解說提供一組逐步程式,可建立使用 BizTalk Server 傳送 EDI 交換的解決方案。

必要條件

您必須以 BizTalk Server Administrators 或 BizTalk Server B2B 操作員群組的成員身分登入。

解決方案如何傳送 EDI 交換

解決方案會執行下列動作:

  1. 單向 FILE 接收埠會從 Fabrikam 接收 EDI 訊息。

  2. 這個接收埠會使用 EdiReceive 管線來檢查訊息並將其轉換成 XML。 然後接收埠會將測試訊息拖曳到 MeassageBox。

  3. 靜態的單向傳送埠會從 MessageBox 拾取 XML 訊息。

  4. 靜態的單向傳送埠會依據訊息結構描述驗證 EDI 訊息、序列化 EDI 訊息成 EDI 交換,然後再將 EDI 訊息傳送到交易夥伴 Contoso 的本機資料夾。

此解決方案中的功能

本逐步解說使用下列功能:

  • 本逐步解說中不會測試通知的接收。 若要瞭解如何接收通知,請參閱示範的 逐步解說 (X12) :接收 EDI 交換和傳回通知

  • 這個解決方案是專為使用 X12 編碼 (而非 EDIFACT 編碼) 的交換所設計。

    注意

    用於 HIPAA 與 EDIFACT 編碼的組態,與用於 X12 編碼的組態近乎相同。

  • 將針對外寄交換執行 EDI 類型和擴充驗證。

  • 這個解決方案使用靜態單向傳送埠與 FILE 傳輸類型。

    注意

    您可以使用靜態雙向傳送埠以傳送交換並接收通知,來取代靜態單向傳送埠。 也可以使用動態單向傳送埠以傳送交換。 如需使用動態傳送埠的詳細資訊,請參閱 設定動態傳送埠以傳送 EDI 交換和通知

    注意

    您可以使用 HTTP 配接器和 AS2 傳輸。 如需這樣做的詳細資訊,請參閱 逐步解說 (AS2) :使用同步 MDN 透過 AS2 傳送 EDI 或逐步解說 (AS2) :使用非同步 MDN 透過 AS2 傳送 EDI

  • EDI 報告將會啟用,並會儲存交易集,以從交換狀態報告進行檢視。

  • 基於測試的目的,解決方案使用接收位置以接收測試訊息。

    下圖顯示這個解決方案的架構,其中使用靜態單向傳送埠。

    傳送 EDI 交換

設定和測試逐步解說

這個解決方案所需的程序包含下列步驟:

  • 將必要的訊息架構 () 新增至 BizTalk 專案,然後建置和部署專案,讓BizTalk Server可用於處理輸出交換的架構。

  • 建立接收埠和位置,讓BizTalk Server接收 EDI 交換。 此接收位置繫結至檔案資料夾,而 Fabrikam 會在此資料夾放置要傳送給 Contoso 的 EDI 交換。 接收位置將使用 EdiReceive 接收管線。

  • 建立BizTalk Server的傳送埠,以將 EDI 交換傳送至 Contoso。 在此逐步解說中,您將建立靜態單向傳送埠。

  • 為 Fabrikam 與 Contoso 建立合作對象 (交易夥伴)。

  • 分別為兩個交易夥伴建立商務設定檔。

  • 設定讓訊息收得到的 EDI 屬性,以建立這兩個設定檔之間的協議。

  • 使用測試 EDI 交換以測試逐步解說。

    注意

    對於測試訊息,您可以使用 EDI 介面開發人員教學課程中所使用的 SamplePO.txt 檔案。 該檔案隨附于 \Program Files (x86) \Microsoft BizTalk Server < VERSION > SDK\EDI 介面開發人員教學課程\ 資料夾中。 這是 X12 850 訊息。

設定逐步解說

本節說明設定逐步解說的程序。

若要部署訊息結構描述
  1. 在 Visual Studio 中,建立或開啟 BizTalk 專案。

    注意

    本主題假設您已經在「BizTalk EDI 應用程式」中加入了自己應用程式的參考 (包含 EDI 結構描述、管線和協調流程), 如果沒有,請參閱將參考新增至 BizTalk Server EDI 應用程式

  2. 以滑鼠右鍵按一下您的專案,指向 [ 新增],然後按一下 [ 現有專案]。 移至架構位於 \Program Files (x86) \Microsoft BizTalk Server VERSION > XSD_Schema < \EDI 的資料夾,然後按兩下您的架構。

    注意

    如果 EDI 架構尚未解壓縮至 \XSD_Schema\EDI 資料夾,請執行 \XSD_Schema\EDI 資料夾中的 MicrosoftEdiXSDTemplates.exe 檔案,將架構解壓縮到預設資料夾。

    注意

    如果您使用 EDI 介面開發人員教學課程中使用的 SamplePO.txt 檔案,則必須使用 \Program Files (x86) \Microsoft BizTalk Server < VERSION > SDK\EDI 介面開發人員教學課程\Inbound_EDI 資料夾中隨附的 X12_00401_850.xsd 架構。 您不得在 \Program Files (x86) \Microsoft BizTalk Server < VERSION > XSD_Schema 資料夾中使用 X12 850 架構。

  3. 將組件金鑰檔案加入專案,然後建置並部署組件。

建立單向接收埠 (供 Fabrikam 使用) 以接收 EDI 交換
  1. 在 Windows 檔案總管中,建立本機資料夾,以接收交換。

  2. 在 BizTalk Server 管理主控台中,以滑鼠右鍵按一下BizTalk 應用程式 1節點下的 [接收埠] 節點,指向 [新增],然後按一下[單向接收埠]。

  3. 將接收埠命名為 ,然後按一下主控台樹中的 [ 接收位置 ]。

  4. 按一下 [新增]

  5. 將接收位置命名為 ,針對[類型] 選取[FILE],然後按一下 [設定]。

  6. 輸入 [接收] 資料夾的資料夾,然後輸入 *.txt 作為檔案遮罩。

  7. 按一下 [確定]。

  8. 針對 [接收管線],選取 [EdiReceive]。

  9. 按一下 [確定],然後再按一下 [確定]。

  10. 在主控台樹中,按一下 [ 接收位置]。 在 [ 接收位置] 窗格中,以滑鼠右鍵按一下您的接收位置,然後按一下 [ 啟用]。

建立靜態單向傳送埠 (供 Contoso 使用) 以傳送 EDI 交換
  1. 在 Windows 檔案總管中,建立本機資料夾,以便將 EDI 交換傳送至此本機資料夾。

  2. 在 BizTalk Server 管理主控台中,以滑鼠右鍵按一下BizTalk 應用程式 1節點下的 [傳送埠] 節點,指向 [新增],然後按一下 [靜態單向傳送埠]。

  3. 在 [ 傳送埠屬性 ] 對話方塊中,將傳送埠命名為 。

  4. 在 [ 傳輸 ] 區段中,選取 [類型],例如 FILE

  5. 如果使用 FILE 類型,請按一下 [ 設定]。 在 [目的地] 資料夾中,流覽至要傳送交換的目的檔案夾。 針對 [檔案名],輸入 %MessageID%.edi。 按一下 [確定]。

  6. [傳送管線] 中,選取 [EdiSend]。

  7. 在主控台樹中,選取 [ 篩選],然後輸入傳送埠的篩選運算式,以用來訂閱訊息。 例如,您可以使用將要接收原始測試訊息的接收位置做為篩選條件運算式。 若要這樣做, 請在 [屬性]中輸入 BTS。ReceivePortName;針對 [運算子],輸入 == ;針對 [ ],輸入您建立以從 Fabrikam 接收 XML 訊息的接收埠名稱。

    注意

    您可以依您的選擇篩選其他屬性,例如 BTS.MessageType。

  8. 按一下 [確定]。

  9. 按一下管理主控台中的 [ 傳送埠 ] 節點,以滑鼠右鍵按一下您的傳送埠,然後按一下 [ 啟動]。

若要為 Fabrikam 建立合作對象與商務設定檔
  1. 以滑鼠右鍵按一下 [BizTalk Server 管理主控台中的[合作物件] 節點,指向 [新增],然後按一下 [合作物件]。

  2. 在 [ 名稱 ] 文字方塊中輸入合作物件的名稱,然後按一下 [ 確定]。

    注意

    選取 [本地 BizTalk 處理合作物件 OR 所接收的訊息] 支援從此合作物件傳送訊息核取方塊,您可以指定所建立的物件是同時裝載BizTalk Server的相同組織。 據此,建立協議時將會啟用或停用某些屬性。 不過,就本逐步解說而言,您可以讓這個核取方塊保持選取狀態。

  3. 以滑鼠右鍵按一下合作物件名稱,指向 [ 新增],然後按一下 [商務設定檔]。

  4. 在 [配置檔案屬性] 對話方塊的 [一般] 頁面上,于 [名稱] 文字方塊中輸入Fabrikam_Profile

    注意

    當您建立合作對象時,會同時建立設定檔。 您可以重新命名再使用該設定檔,而不需建立新設定檔。 若要重新命名設定檔,請以滑鼠右鍵按一下設定檔,然後選取 [ 屬性]。 在 [ 一般] 頁面中,指定設定檔的名稱。

若要為 Contoso 建立合作對象與商務設定檔
  1. 以滑鼠右鍵按一下 [BizTalk Server 管理主控台中的[合作物件] 節點,指向 [新增],然後按一下 [合作物件]。

  2. 在 [ 名稱 ] 文字方塊中輸入合作物件的名稱,然後按一下 [ 確定]。

    注意

    選取 [本地 BizTalk 處理合作物件 OR 所接收的訊息] 支援從此合作物件傳送訊息核取方塊,您可以指定所建立的物件是同時裝載BizTalk Server的相同組織。 據此,建立協議時將會啟用或停用某些屬性。 不過,就本逐步解說而言,您可以讓這個核取方塊保持選取狀態。

  3. 以滑鼠右鍵按一下合作物件名稱,指向 [ 新增],然後按一下 [商務設定檔]。

  4. 在 [配置檔案屬性] 對話方塊的 [一般] 頁面上,于 [名稱] 文字方塊中輸入Contoso_Profile

    注意

    當您建立合作對象時,會同時建立設定檔。 您可以重新命名再使用該設定檔,而不需建立新設定檔。 若要重新命名設定檔,請以滑鼠右鍵按一下設定檔,然後選取 [ 屬性]。 在 [ 一般] 頁面中,指定設定檔的名稱。

在兩個商務設定檔之間建立協議
  1. 以滑鼠右鍵按一下 [Fabrikam_Profile],指向 [ 新增],然後按一下 [ 合約]。

  2. 在 [ 一般屬性] 頁面的 [ 名稱 ] 文字方塊中,輸入合約的名稱。

  3. 從 [ 通訊協定 ] 下拉式清單中,選取 [X12]。

  4. 在 [ 第二個合作夥伴 ] 區段中,從 [ 名稱 ] 下拉式清單中,選取 [Contoso]。

  5. 在 [ 第二個合作夥伴 ] 區段中,從 [ 設定檔 ] 下拉式清單中,選取 [Contoso_Profile]。

    您會發現[ 一般 ] 索引標籤旁邊會新增兩個新的索引標籤。每個索引標籤都用於設定單向合約,而每個單向合約都代表訊息 (的完整交易,包括訊息傳輸和通知傳輸) 。

  6. 在 [ 一般 ] 索引標籤的 [ 一般屬性 ] 頁面的 [ 一般主機設定 ] 區段中,選取 [ 開啟報告],然後選取 [ 儲存訊息承載以供報告]。

  7. [Fabrikam-Contoso > ] 索引標籤上執行下列工作。

    1. 在 [交換設定] 區段下的 [識別碼]頁面上,輸入符合測試訊息中這些標頭欄位值的限定詞和識別碼欄位 (ISA6ISA7 和 ISA8) 。

      注意

      BizTalk Server需要傳送者和接收者的限定詞和識別碼欄位,才能執行合約解析。 它會比對交換標頭中ISA5ISA6、ISA7ISA8的值,以及合約屬性中的值。 BizTalk Server也會比對傳送者辨識符號和識別碼 (來解決合約,而不需要接收者限定詞和識別碼) 。 如果BizTalk Server無法解決合約,則會使用後援合約屬性。

      注意

      如果您使用「EDI 介面開發人員教學課程」 中的 SamplePO.txt 檔案作為測試訊息,請將 ISA5 設定為 ZZISA6 設為 THEMISA7 設為 ZZ,並將 ISA8 設定為 US

    2. 在 [交換設定] 區段下的 [驗證] 頁面上,確定未核取[檢查重複的 ISA13] 選項。

      注意

      清除 [檢查是否有重複的 ISA13 ] 屬性可讓您接收相同訊息的多個實例。

    3. 在 [交換設定] 區段下的[字元集和分隔符號] 頁面上,選取CR LF選項。

    4. 在 [交換設定] 區段下的 [傳送埠] 頁面上,建立將從 Fabrikam 接收 EDI 交換的傳送埠產生關聯。 在 [ 傳送埠 ] 方格的 [ 名稱 ] 資料行底下,按一下空白資料格,然後從下拉式清單中選取從 Fabrikam 接收 EDI 結算所建立的傳送埠。

    5. 在 [交易集設定] 區段下的 [驗證] 頁面上,保留[EDI 類型驗證] 檢查,然後核取 [擴充驗證]。

    6. 如果您使用隨附于BizTalk Server的標準架構之一,請在 [交易集設定] 區段下的 [本機主機設定] 頁面上,選取要用來處理傳入交換之架構的命名空間。

      使用 作法
      預設值 選取欄中的核取方塊
      For ST1 選取 [850 - 採購單]。
      GS2 輸入 THEM
      目標命名空間 請選取 http://schemas.microsoft.com/BizTalk/EDI/X12/2006

      注意

      設定屬性可讓BizTalk Server判斷要用於處理傳入 850 交換的架構。 如果交換的 GS02 和 ST01 值是輸入在格線行中,則將會使用同一行的目標命名空間來判斷要使用的結構描述。

    7. 在 [交易集設定] 區段下的[信封] 頁面上,輸入方格第一行中所有資料行的值。

      使用 作法
      預設值 選取 [預設] 資料行中的核取方塊。 注意:當您選取此資料列做為預設值時,即使交易類型版本/版本目標命名空間的值與訊息不符,仍會使用GS1GS2GS3、GS7 和 GS8的值。
      交易類型 選取測試訊息的訊息類型, 850 - 採購單
      版本/版次 輸入 EDI 版本 00401
      目標命名空間 請選取 http://schemas.microsoft.com/BizTalk/EDI/X12/2006
      GS1 確認已選取測試訊息的訊息類型, PO - 採購單 (850)
      GS2 輸入應用程式傳送者的值。
      GS3 輸入應用程式接收者的值。
      GS4 選取您想要的日期格式。 注意: 您必須在下拉式清單中選取值,而不只是按一下欄位以顯示預設值。 如果您按一下欄位而未從下拉式清單中選取值,實際上不會選取值。
      GS5 選擇您要的時間格式。
      GS7 選取 [X - 認證標準委員會 X12]。
      GS8 確認已輸入 EDI 版本 00401

      注意

      BizTalk Server會根據針對交易類型版本/版本目標命名空間輸入的值,設定 GS01、GS02、GS03、GS04、GS05、GS07 和 GS08 的值。 傳送管線會嘗試將交易集類型、X12 版本和目標命名空間,與訊息標頭中的對應值進行比對。 如果成功,它會使用與 交易類型版本/發行目標命名空間 值相關聯的 GS 值。

  8. [Contoso-Fabrikam > ] 索引標籤 上執行下列工作。

    注意

    在此逐步解說中,我們在索引標籤中指定必要值,以便可以順利地建立協議。 若要成功建立合約,這兩個單向合約索引標籤都必須定義ISA5、ISA6ISA7ISA8的值。

    1. 在 [交換設定] 區段下的 [識別碼]頁面上,輸入符合測試訊息中這些標頭欄位值的限定詞和識別碼欄位 (ISA6ISA7 和 ISA8) 。

      注意

      如果您使用「EDI 介面開發人員教學課程」中的 SamplePO.txt 檔案作為測試訊息,請將ISA5設定為 ZZ、ISA6設為USISA7設為ZZ,並將ISA8設定為它們

  9. 按一下 [套用]。

  10. 按一下 [確定]。 新增的合約會列在[合作物件和商務設定檔] 窗格的 [合約] 區段中。 預設會啟用新增的協議。

測試逐步解說

本節提供關於如何測試逐步解說的資訊。

若要測試逐步解說
  1. 在 Windows 檔案總管中,將測試 EDI 交換置放到本機接收資料夾中。

    注意

    對於測試訊息,您可以使用 EDI 介面開發人員教學課程中所使用的 SamplePO.txt 檔案。 該檔案隨附于 \Program Files (x86) \Microsoft BizTalk Server < VERSION > SDK\EDI 介面開發人員教學課程資料夾中。 這是 X12 850 訊息。 如果您使用此訊息,您必須已部署 \Program Files (x86) \Microsoft BizTalk Server < VERSION > SDK\EDI 介面開發人員教學課程\Inbound_EDI 資料夾中隨附的 X12_00401_850.xsd 架構。 您不得在 \Program Files (x86) \Microsoft BizTalk Server < VERSION > XSD_Schema 資料夾中使用 X12 850 架構。

  2. 在 Windows 檔案總管中,開啟為傳送埠指定的目的資料夾。 確認資料夾包含輸出 EDI 交換,其 ISA、GS 和 ST 標頭符合您在協議屬性中輸入的值。

另請參閱

開發和設定 BizTalk Server EDI 解決方案