使用 Azure Logic Apps 中的工作流程交換適用於 B2B 整合的 RosettaNet 訊息

適用於:Azure Logic Apps (使用量)

若要在您使用 Azure Logic Apps 建立的工作流程中傳送和接收 RosettaNet 訊息,您可以使用 RosettaNet 連接器,該連接器會提供遵循 RosettaNet 標準的管理和支援通訊的動作。 RosettaNet 是一個非營利性財團,已建立共用商務資訊的標準程式。 這些標準通常用於供應鏈流程,在半導體、電子和物流產業中很普遍。 RosettaNet 聯盟會建立和維護合作夥伴介面程式 (PIP),以提供所有 RosettaNet 訊息交換的通用商務程式定義。 RosettaNet 是以 XML 為基礎,並定義訊息指導方針、商務程式的介面,以及公司間通訊的實作架構。 如需詳細資訊,請流覽 RosettaNet 網站

連接器是以 RosettaNet 實作架構 (RNIF) 2.0.01 版為基礎,並支援此版本所定義的所有 PIN。 RNIF 是開放網路應用程式架構,可讓商務夥伴共同執行 RosettaNet PIP。 此架構會定義訊息結構、通知的需求、多用途因特網郵件延伸模組 (MIME) 編碼和數字簽名。 與合作夥伴的通訊可以是同步或異步的。 連接器提供以下功能:

  • 接收或譯碼 RosettaNet 訊息。
  • 傳送或編碼 RosettaNet 訊息。
  • 等候失敗通知的回應和產生。

本操作指南說明如何使用 Azure Logic Apps 和 RosettaNet 連接器,在工作流程中傳送和接收 RosettaNet 訊息,方法是完成下列工作:

  • 如果您還沒有 PIP 程式組態,請新增 PIP 程式設定。
  • 建立 RosettaNet 合約。
  • 新增接收或譯碼 RosettaNet 訊息的動作。
  • 新增傳送或編碼 RosettaNet 訊息的動作。

RosettaNet 概念

下列概念和詞彙對 RosettaNet 規格而言是唯一的,當您建置 RosettaNet 型整合工作流程時,請務必瞭解:

  • 匹 普

    RosettaNet 組織會建立和維護 PIP,以提供所有 RosettaNet 訊息交換的通用商務程序定義。 每個 PIP 規格都會提供檔案類型定義 (DTD) 檔案和訊息指導方針檔。 DTD 檔案會定義服務內容訊息結構。 訊息指導方針檔是人類可讀取的 HTML 檔案,會指定專案層級條件約束。 這些檔案一起提供商務程式的完整定義。

    PI 會依高階商務功能、叢集和子函式或區段分類。 例如,“3A4” 是採購單的 PIP,而 “3” 是訂單管理功能,而 “3A” 則是報價和訂單專案子函式。 如需詳細資訊,請流覽 RosettaNet 網站

  • 動作

    PIP 的一部分動作訊息是合作夥伴之間交換的商務訊息。

  • 訊號

    PIP 的一部分,訊號訊息是回應動作訊息所傳送的通知。

  • 單一動作和雙動作

    對於單一動作 PIP,唯一的回應是通知訊號訊息。 針對雙動作 PIP,啟動器除了單一動作訊息流程之外,還會收到回應消息和回復通知。

連接器技術參考

RosettaNet 連接器僅適用於取用邏輯應用程式工作流程。

邏輯應用程式 Environment 連接器版本
耗用 多重租用戶 Azure Logic Apps 受管理連接器,顯示在設計工具的 Standard 標籤下。 RosettaNet 連接器只提供動作,但您可以使用任何適用於您案例的觸發程式。 如需詳細資訊,請參閱下列文件:

- RosettaNet 連接器作業
- 訊息大小的 B2B 通訊協定限制
- Azure Logic Apps 的受控連接器
耗用 整合服務環境 (ISE) 內建連接器,其會出現在具有CORE標籤的設計工具中。 RosettaNet 連接器只提供動作,但您可以使用任何適用於您案例的觸發程式。 如需詳細資訊,請參閱下列文件:

- RosettaNet 連接器作業
- ISE 訊息限制
- Azure Logic Apps 中的受控連接器

RosettaNet 作業

RosettaNet 連接器沒有觸發程式。 下表描述 RosettaNet 連接器在傳輸訊息時,用來建立安全性和可靠性的動作

動作 描述
RosettaNet 編碼 動作 使用遵循 RosettaNet 標準的編碼傳送 RosettaNet 訊息。
RosettaNet 譯碼 動作 使用遵循 RosettaNet 標準的譯碼接收 RosettaNet 訊息。
RosettaNet 等候回應 動作 讓主機等候接收者的 RosettaNet 回應或訊號訊息。

必要條件

  • Azure 帳戶和訂用帳戶。 若您沒有訂用帳戶,請建立一個免費帳戶

  • 您想要在其中使用 RosettaNet 作業的取用邏輯應用程式資源和工作流程。

  • 用來 儲存合約和其他企業對企業 (B2B) 成品的整合帳戶

    重要

    若要共同作業,您的企業整合帳戶和邏輯應用程式資源必須存在於相同的 Azure 訂用帳戶和 Azure 區域中。 若要在工作流程中使用整合帳戶成品,請務必 將邏輯應用程式資源連結至整合帳戶

  • 在您的整合帳戶中至少定義兩個合作夥伴,並在 Azure 入口網站 中使用 [商務身分識別] 底下的 DUNS 限定符。

    注意

    請確定您選取 [DUNS] 作為限定符,您可以在限定符清單底部附近找到,而不是 1 - D-U-N-S (Dun & Bradstreet)

  • 用於加密、解密或簽署您上傳至整合帳戶之訊息的選擇性 憑證 。 只有在您使用簽署或加密時,才需要憑證。

新增 PIP 程式設定

若要傳送或接收 RosettaNet 訊息,如果您還沒有 PIP 程式設定,您的整合帳戶就需要 PIP 程式設定。 進程組態會儲存所有 PIP 組態特性。 您接著可以在與合作夥伴建立合約時參考此設定。

  1. 在 Azure 入口網站,移至您的整合帳戶。

  2. 在 [整合帳戶] 導覽功能表上的 [設定] 下,選取 [RosettaNet PIP]。

    Azure 入口網站和整合帳戶頁面的螢幕快照。在導覽功能表上,已選取 RosettaNet PIP。

  3. [RosettaNet PIP] 頁面上,選取 [ 新增]。 在 [ 新增合作夥伴介面程式] 窗格中,輸入您的 PIP 詳細數據。

    [RosettaNet PIP] 頁面的螢幕快照,其中已選取 [新增]。[新增夥伴介面程式] 窗格包含名稱、程序代碼和版本的方塊。

    屬性 必要 描述
    名稱 Yes 您的 PIP 名稱。
    PIP 程式代碼 Yes 三位數的 PIP 程式代碼。 如需詳細資訊,請參閱 RosettaNet PIP
    PIP 版本 Yes PIP 版本號碼,視您選取的 PIP 程式代碼而定。

    如需這些 PIP 屬性的詳細資訊,請流覽 RosettaNet 網站

  4. 當您完成時,請選取 [ 確定 ] 以建立 PIP 設定。

  5. 若要檢視或編輯程式設定,請選取 PIP,然後選取 [ 編輯為 JSON]。

    所有進程組態設定都來自 PIP 的規格。 Azure Logic Apps 會將大部分設定填入這些屬性最常使用的預設值。

    [RosettaNet PIP] 頁面的螢幕快照,其中已選取 [編輯為 JSON] 和 [PIP]。在 [編輯為 JSON] 下,會顯示編碼的 PIP 屬性。

  6. 確認這些設定對應至適當 PIP 規格中的值,並符合您的業務需求。 如有必要,請更新 JSON 中的值,並儲存這些變更。

建立 RosettaNet 合約

  1. Azure 入口網站 中,移至您的整合帳戶。

  2. 在 [整合帳戶] 導覽功能表上的 [設定] 下,選取 [合約]。

    此螢幕快照顯示已開啟整合帳戶頁面 Azure 入口網站。在導覽功能表上,已選取 [合約] 選項。

  3. 在 [ 合約] 頁面上,選取 [ 新增]。 在 [新增] 下,輸入您的合約詳細數據。

    此螢幕快照顯示已選取 [新增] 選項的 [合約] 頁面。在名為 [新增] 的窗格中,會顯示合約名稱和類型和合作夥伴資訊的方塊。

    屬性 必要 描述
    名稱 Yes 合約的名稱。
    合約類型 Yes 合約的類型。 選取 [RosettaNet]。
    主機合作夥伴 Yes 設定合約的組織。 合約需要主機和來賓合作夥伴。
    主機身分識別 Yes 主機夥伴的標識碼。
    來賓合作夥伴 Yes 與主機合作夥伴進行業務的組織。 合約需要主機和來賓合作夥伴。
    來賓身分識別 Yes 來賓夥伴的標識碼。
    接收 設定 不定 套用至主機夥伴所接收之所有訊息的屬性。
    傳送 設定 不定 套用至主機夥伴所傳送之所有訊息的屬性。
    RosettaNet PIP 參考 Yes 合約的 PIP 參考。 所有 RosettaNet 訊息都需要 PIP 設定。
  4. 若要設定合約以接收來賓合作夥伴的傳入訊息,請選取 [接收 設定]。

    1. 若要啟用傳入訊息的簽署或加密,請在 [訊息] 底下,選取 [訊息應簽署] 或 [訊息] 應分別加密

      屬性 必要 描述
      訊息應簽署 No 使用所選憑證登入傳入訊息的選項
      [MSSQLSERVER 的通訊協定內容] 是,如果已啟用簽署 要用於簽署的憑證
      啟用訊息加密 No 使用所選憑證加密傳入訊息的選項
      [MSSQLSERVER 的通訊協定內容] 是,如果已啟用加密 要用於加密的憑證
    2. 在每個選取專案下,選取 您要用於簽署或加密之整合帳戶中的憑證

    [接收 設定] 頁面的螢幕快照,其中包含簽署和加密訊息和輸入憑證的選項。

  5. 若要設定合約以將訊息傳送給來賓合作夥伴,請選取 [傳送 設定]。

    1. 若要啟用傳出訊息的簽署或加密,請在 [訊息] 底下,分別選取 [啟用訊息簽署] 或 [啟用訊息加密]。 在每個選取專案下,選取您要用於簽署或加密之整合帳戶中的演算法和 憑證

      屬性 必要 描述
      啟用訊息簽署 No 使用選取的簽署演算法和憑證簽署傳出訊息的選項
      簽署演算法 是,如果已啟用簽署 要使用的簽署演算法,根據選取的憑證
      [MSSQLSERVER 的通訊協定內容] 是,如果已啟用簽署 要用於簽署的憑證
      啟用訊息加密 No 使用選取的加密演演算法和憑證加密傳出訊息的選項
      加密演算法 是,如果已啟用加密 要使用的加密演算法,根據選取的憑證
      [MSSQLSERVER 的通訊協定內容] 是,如果已啟用加密 要用於加密的憑證
    2. [端點] 下,指定要用來傳送動作訊息和通知的必要 URL。

      屬性 必要 描述
      動作 URL Yes 用於傳送動作訊息的 URL。 URL 是同步和異步訊息的必要欄位。
      通知 URL Yes 用來傳送通知訊息的 URL。 URL 是異步訊息的必要欄位。

    此螢幕快照顯示 [傳送 設定] 頁面,其中包含簽署和加密訊息的選項,以及輸入演算法、憑證和端點。

  6. 若要為合作夥伴設定與 RosettaNet PIP 參考的合約,請選取 [RosettaNet PIP 參考]。 在 [PIP 名稱]下,選取您稍早建立的 PIP 名稱。

    顯示具有一個數據列之 PIP 資訊的數據表螢幕快照。該數據列包含預設值,但已選取的名稱 MyPIPConfig 除外。

    您的選取專案會填入其餘屬性,這些屬性是根據您在整合帳戶中設定的 PIP。 如有必要,您可以變更 PIP 角色

    顯示具有 PIP 資訊的數據表螢幕快照。名為 MyPIPConfig 之 PIP 的數據列會顯示精確的資訊。

完成這些步驟之後,您就可以傳送或接收 RosettaNet 訊息。

接收或譯碼 RosettaNet 訊息

  1. Azure 入口網站中,在設計工具中開啟您的取用邏輯應用程式工作流程。

    您的工作流程應該已經有觸發程式和您想要在新增 RosettaNet 宏指令之前執行的任何其他動作。 此範例會繼續進行要求觸發程式。

  2. 在觸發程式或動作下,選取 [ 新增步驟]。

    設計工具的螢幕快照。在 [要求] 觸發程式下,選取 [新增步驟]。

  3. 在 [選擇作業] 搜尋方塊底下,選取 [全部]。 在搜尋方塊中,輸入 rosettanet。 從動作清單中,選取名為 RosettaNet Decode 的動作。

    設計工具的螢幕快照。[選擇作業搜尋] 方塊包含 rosettanet,並選取 [RosettaNet 譯碼] 動作。

  4. 輸入動作屬性的資訊:

    RosettaNet 譯碼動作的螢幕快照,其中方塊可供訊息、標頭和角色使用。

    屬性 必要 描述
    訊息 Yes 要譯碼的 RosettaNet 訊息
    標題 Yes 提供版本值的 HTTP 標頭,也就是 RNIF 版本,以及回應類型,表示夥伴之間的通訊類型,而且可以是同步或異步的
    Role Yes PIP 中主機合作夥伴的角色

    RosettaNet 譯碼動作的輸出包含 輸出訊號。 您可以將此輸出編碼並傳回給合作夥伴,也可以對此輸出採取任何其他動作。

傳送或編碼 RosettaNet 訊息

  1. Azure 入口網站中,在設計工具中開啟您的取用邏輯應用程式工作流程。

    您的工作流程應該已經有觸發程式和您想要在新增 RosettaNet 宏指令之前執行的任何其他動作。 此範例會繼續進行要求觸發程式。

  2. 在觸發程式或動作下,選取 [ 新增步驟]。

    設計工具的螢幕快照。在 [要求] 觸發程式下,選取 [新增步驟]。

  3. 在 [選擇作業] 搜尋方塊底下,選取 [全部]。 在搜尋方塊中,輸入 rosettanet。 從動作清單中,選取名為 RosettaNet Encode 的動作。

    設計工具的螢幕快照。[選擇作業搜尋] 方塊包含 rosettanet,並選取 [RosettaNet 編碼] 動作。

  4. 輸入動作屬性的資訊:

    RosettaNet Encode 動作的螢幕快照,其中顯示訊息、合作夥伴、PIP 資訊、訊息類型和角色的方塊。

    屬性 必要 描述
    訊息 Yes 要編碼的 RosettaNet 訊息
    主機合作夥伴 Yes 主機夥伴名稱
    來賓合作夥伴 Yes 來賓合作夥伴名稱
    PIP 程式代碼 Yes PIP 程式代碼
    PIP 版本 Yes PIP 版本
    PIP 實例身分識別 Yes 這個 PIP 訊息的唯一標識碼
    訊息類型 Yes 要編碼之訊息的類型
    Role Yes 主機夥伴的角色

    編碼的訊息現在已準備好傳送給合作夥伴。

  5. 若要傳送編碼的訊息,下列範例會使用 HTTP 動作,此動作已重新命名為 HTTP - 將編碼的訊息傳送至夥伴

    設計工具的螢幕快照,其中已將 HTTP 動作重新命名為 HTTP - 將編碼訊息傳送給合作夥伴,並輸入 URI、標頭和本文值。

    根據 RosettaNet 標準,只有在 PIP 定義的所有步驟都完成時,才會將商務交易視為完成。

  6. 主機將編碼的訊息傳送給合作夥伴之後,主機會等候訊號和通知。 若要完成這項工作,請新增名為 RosettaNet 等候回應的動作。

    RosettaNet 等候回應動作的螢幕快照,其中方塊可供本文、PIP 實例身分識別、重試計數和角色使用。

    等候使用的持續時間,以及重試次數是以整合帳戶中的 PIP 組態為基礎。 如果未收到回應,就會產生失敗通知。 若要處理重試,請一律將編碼等候響應動作放在 Until 迴圈中

    設計工具的螢幕快照。Until 迴圈包含編碼和傳送訊息以及等候響應的動作。

RosettaNet 範本

若要加速開發和建議整合模式,您可以使用取用邏輯應用程式範本來譯碼和編碼 RosettaNet 訊息。 當您建立取用邏輯應用程式工作流程時,您可以從設計工具中的範本資源庫選取。 您也可以在適用於 Azure Logic AppsGitHub 存放庫中找到這些範本。

設計工具的螢幕快照。已選取用於譯碼和編碼 RosettaNet 訊息的企業整合類別和範本。

下一步