使用 Azure Logic Apps 中的工作流程交換 X12 訊息

適用於:Azure Logic Apps (使用量 + 標準)

若要在使用 Azure Logic Apps 建立的工作流程中傳送和接收 X12 訊息,請使用 X12 連接器,其可提供支援和管理 X12 通訊的作業。

本操作指南說明如何將 X12 編碼和解碼動作新增至現有的邏輯應用程式工作流程。 X12 連接器並未包含任何觸發程序,因此,您可以使用任何觸發程序來啟動工作流程。 此指南中的範例會使用要求觸發程序

連接器技術參考

X12 連接器有一個版本可跨多租用戶 Azure Logic Apps、單一租用戶 Azure Logic Apps 和整合服務環境 (ISE) 中的工作流程。 如需 X12 連接器的技術資訊,請參閱下列文件:

必要條件

  • Azure 帳戶和訂用帳戶。 如果您還沒有 Azure 訂用帳戶,請先註冊免費的 Azure 帳戶

  • 您在其中定義和儲存成品的整合帳戶資源 (例如交易夥伴、合約、憑證等),藉以用於企業整合和 B2B 工作流程。 此資源必須符合下列需求:

    • 您的企業整合帳戶和邏輯應用程式資源必須存在於相同的 Azure 訂用帳戶和 Azure 區域中。

    • 定義參與您的工作流程中使用的 X12 作業的至少兩個合作物件。 這兩個物件的定義必須使用相同的 X12 商務識別限定詞。

    • 定義參與您的工作流程的合作物件之間的 X12 協議。 每個合約都需要一個主機合作夥伴和一個客體合作夥伴。 您與其他合作夥伴之間的訊息內容必須符合合約類型。 如需接收及傳送訊息時要使用的協議設定的相關資訊,請檢閱 X12 訊息設定

      重要

      如果您使用的是健康保險流通與責任法案 (HIPAA) 結構描述,則必須將 schemaReferences 區段新增至合約。 如需詳細資訊,請參閱 HIPAA 結構描述和訊息類型

    • 定義要用於 XML 驗證的結構描述

      重要

      如果您使用健康保險流通與責任法案 (HIPAA) 結構描述,請務必檢閱 HIPAA 結構描述和訊息類型

  • 根據您使用的是取用或標準邏輯應用程式工作流程,您的邏輯應用程式資源可能需要連至您整合帳戶的連結:

    邏輯應用程式工作流程 需要連結嗎?
    耗用 需要連線和連結至整合帳戶。 您可以在將 X12 作業新增至工作流程時建立連線。
    標準 需要連線至整合帳戶,但不需要連結。 您可以在將 X12 作業新增至工作流程時建立連線。
  • 您想要使用 X12 作業的邏輯應用程式資源和工作流程。

    如需詳細資訊,請參閱下列文件:

編碼 X12 訊息

編碼為 X12 訊息作業會執行下列工作:

  • 藉由比對傳送者和接收者內容屬性來解析協議。
  • 序列化 EDI 交換並將 XML 編碼訊息轉換為交換中的 EDI 交易集。
  • 套用交易集標頭和結尾區段。
  • 產生交換控制編號、群組控制編號和每個傳出交換的交易集控制編號。
  • 取代承載資料中的分隔符號。
  • 驗證 EDI 和夥伴特定屬性。
    • 針對訊息結構描述進行交易集資料元素的結構描述驗證。
    • 交易集資料元素上的 EDI 驗證。
    • 交易集資料元素上的延伸驗證。
  • 要求技術和功能確認 (若已設定)。
    • 標頭驗證後產生技術確認。 技術確認會報告位址接收者處理交換標頭和結尾的狀態。
    • 內文驗證後產生功能確認。 功能確認會報告處理接收的文件時遇到的每個錯誤。
  1. Azure 入口網站中,於設計工具內開啟您的邏輯應用程式資源和工作流程。

  2. 在設計工具中,遵循這些一般步驟,將名為依協議名稱編碼為 X12 訊息X12 動作新增至工作流程

    注意

    如果您想要改用 [依識別編碼為 X12 訊息] 動作,您稍後必須提供不同的值,例如 X12 協議指定的傳送者識別碼接收者識別碼。 您也必須指定要編碼的 XML 訊息,這可以是觸發程序或前一個動作的輸出。

  3. 出現提示時,請為您的整合帳戶提供下列連線資訊:

    屬性 必要 描述
    連線名稱 Yes 連線的名稱
    整合帳戶 Yes 從可用的企業整合帳戶清單中,選取要使用的帳戶。

    例如:

    Screenshot showing Consumption workflow and connection information for action named Encode to X12 message by agreement name.

  4. 完成時,選取建立

  5. 在 X12 動作資訊方塊中,提供下列屬性值:

    屬性 必要 描述
    X12 協議的名稱 Yes 要使用的 X12 協議。
    要編碼的 XML 訊息 Yes 要編碼的 XML 訊息
    其他參數 No 此作業包含下列其他參數:

    - 資料元素分隔符號
    - 元件分隔符號
    - 取代字元
    - 區段結束字元
    - 區段結束字元尾碼
    - 控制版本號碼
    - 應用程式傳送者識別碼/代碼 GS02
    - 應用程式接收者識別碼/代碼 GS03

    如需詳細資訊,請檢閱 X12 訊息設定

    例如,您可以使用來自要求觸發程序的本文內容輸出作為 XML 訊息承載:

    Screenshot showing Consumption workflow, action named Encode to X12 message by agreement name, and action properties.

解碼 X12 訊息

解碼 X12 訊息作業會執行下列工作:

  • 針對交易夥伴協議驗證信封。

  • 驗證 EDI 和夥伴特定屬性。

    • EDI 結構驗證及延伸結構描述驗證
    • 交換信封結構驗證
    • 針對控制結構描述進行信封的結構描述驗證
    • 針對訊息結構描述進行交易集資料元素的結構描述驗證
    • 交易集資料元素上的 EDI 驗證
  • 驗證交換、群組和交易集控制編號並未重複。

    • 針對先前已接收的交換檢查交換控制編號。
    • 針對交換中的其他群組控制編號檢查群組控制編號。
    • 針對該群組中其他交易集控制編號檢查交易集控制編號。
  • 將交換分割成交易集,或保留整個交換:

    • 將交換分割成交易集或發生錯誤時暫停交易集:剖析每個交易集。 X12 解碼動作只會輸出未通過 badMessages 驗證的交易集,並將剩餘的交易輸出到 goodMessages

    • 將交換分割成交易集或發生錯誤時暫停交換:剖析每個交易集。 如果交換中有一或多個交易集無法通過驗證,X12 解碼動作會將該交換中的所有交易集輸出到 badMessages

    • 保留交換或發生錯誤時暫停交易集:保留交換並處理整個批次交換。 X12 解碼動作只會輸出未通過 badMessages 驗證的交易集,並將剩餘的交易輸出到 goodMessages

    • 保留交換或發生錯誤時暫停交換:保留交換並處理整個批次交換。 如果交換中有一或多個交易集無法通過驗證,X12 解碼動作會將該交換中的所有交易集輸出到 badMessages

  • 產生技術和功能確認 (若已設定)。

    • 標頭驗證後產生技術確認。 技術確認會報告位址接收者處理交換標頭和結尾的狀態。
    • 內文驗證後產生功能確認。 功能確認會報告處理接收的文件時遇到的每個錯誤。
  1. Azure 入口網站中,於設計工具內開啟您的邏輯應用程式資源和工作流程。

  2. 在設計工具中,遵循這些一般步驟,將名為解碼 X12 訊息X12 動作新增至工作流程

  3. 出現提示時,請為您的整合帳戶提供下列連線資訊:

    屬性 必要 描述
    連線名稱 Yes 連線的名稱
    整合帳戶 Yes 從可用的企業整合帳戶清單中,選取要使用的帳戶。

    例如:

    Screenshot showing Consumption workflow and connection information for action named Decode X12 message.

  4. 完成時,選取建立

  5. 在 X12 動作資訊方塊中,提供下列屬性值:

    屬性 必要 描述
    要解碼的 X12 一般檔案訊息 Yes 要解碼的一般檔案格式 X12 訊息

    注意:訊息陣列的 XML 訊息承載或內容 (無論好壞) 會是 base64 編碼。 因此,您必須使用處理此內容的運算式。 例如,下列運算式會將訊息內容處理為 XML:

    xml(base64ToBinary(item()?['Body']))
    其他參數 No 此作業包含下列其他參數:

    - 保留交換
    - 發生錯誤時暫停交換

    如需詳細資訊,請檢閱 X12 訊息設定

    例如,您可以使用來自要求觸發程序的本文內容輸出作為 XML 訊息承載,但您必須先使用運算式前置處理此內容:

    Screenshot showing Consumption workflow, action named Decode X12 message, and action properties.

下一步