將訊息佇列整合並將資訊插入 SQL 資料庫
概述
本範例的目標是建立一個訊息佇列整合,並包含「插入資料庫記錄」動作,以便儲存目前列印記錄的相關資訊。
Microsoft Message Queuing (MSMQ) 可以使用 XML 佇列訊息格式,而 BarTender 從 2019 版本起原生支援此格式,能夠收集有關列印作業的重要資訊。
與其他類型的整合不同,這種整合會接收 MSMQ 傳遞的 XML 資料,並將其拆解成可傳遞給標籤檔案的變數。
適用於
BarTender 2019 及之後版本。
資訊
情境說明
某公司需要透過其訊息佇列服務,使用 XML 資料發送列印作業。當資料(本例為 XML 資料)經由 Microsoft Message Queue 傳送並由 BarTender Integration Service 讀取後,列印作業會被執行。接著,他們需要將列印作業中的記錄插入 Microsoft SQL 資料庫。
實作方式
以下步驟說明如何針對上述情境設定、部署並驗證整合。
標籤設定
由於整合可以辨識 XML 的結構,您可以直接將 XML 記錄對應到文件中的命名資料來源。因此,這類標籤不需使用資料庫,而是透過命名資料來源來處理所有資料。以下將介紹如何設定這種標籤的基本步驟。更多資訊請參閱 說明文件中的命名資料來源。
-
- 建立一個新標籤。
- 在標籤設計區新增一個文字物件。
- 在標籤上按右鍵,選擇內容。
- 從清單中選擇資料來源,會顯示「範例文字」。
- 點選名稱欄位旁的方框。
- 在對話框中輸入一個唯一名稱,然後點選確定。本範例請使用 ORDERNUM。
- 確認類型設為「內嵌資料」。
- 當您建立更多文字物件時,命名資料來源對話框會有所不同。點選名稱欄位旁的方框時,請選擇第一個選項以建立新名稱。例如,請使用 CUSTOMER。
- 本範例中,請再建立一個命名資料來源,名稱為 CITY。
- 當您建立好所有需要的命名資料來源後,請儲存標籤。
建立 XML 觸發資料
在整合中,您需要一個 XML 格式的觸發資料來傳送到 MSMQ。XML 欄位名稱不必與您的命名資料來源名稱相同,因為您會在整合中將欄位對應到命名資料來源。這些 XML 欄位名稱會自動成為整合中的變數。請確保欄位名稱中不要有空格。
範例如下:
<?xmlversion="1.0">
<ItemInfo>
<Item>
<ORDERNUM>8</ORDERNUM>
<CUSTOMER>Bob Builder</CUSTOMER>
<CITY>Canada</CITY>
</Item>
</ItemInfo>
建立整合
- 開啟 Integration Builder,選擇建立新整合。
- 在新整合對話框中,選擇訊息佇列整合,然後點選確定。
- 首先,在整合標籤頁中指定使用者憑證。指定的使用者必須有足夠權限存取所用的訊息佇列。更多資訊請參閱文章 疑難排解指南:整合。
- 在左側選單中選擇輸入資料,然後將輸入資料格式改為XML 變數。
-
接下來,設定針對每筆資料庫記錄動作。
-
資料接收後,整合需要知道如何處理這些進來的記錄。
-
- 在左側選單中,點選動作旁的+按鈕。
- 在對話框中,點選資料庫類別,然後選擇針對每筆資料庫記錄,再點選確定。
- 在動作清單中點選列印文件動作,並將其拖曳到針對每筆資料庫記錄動作下方,直到出現縮排。這樣「列印文件」動作就會成為其子動作。
- 「針對每筆資料庫記錄」動作下嵌套「列印文件」動作,能確保 XML 資料在列印時正確處理。
- 選擇列印文件動作,然後點選右側的命名資料來源標籤。
- 勾選指定命名資料來源的值,並為每個命名資料來源輸入名稱與值。
設定 SQL 資料庫
- 再次點選動作旁的+按鈕。
- 點選資料庫類別,然後選擇插入資料庫記錄,再點選確定。
- 「插入資料庫記錄」動作同樣會作為「針對每筆資料庫記錄」動作的子動作,並在「列印文件」動作之後執行,這樣列印作業中的變數就會更新到資料庫中。
注意:插入資料庫記錄動作僅支援關聯式資料庫類型。此動作的資料庫設定精靈不會顯示非關聯式資料庫類型,例如文字檔、Access、Excel,或任何參考非關聯式資料庫的命名資料庫連線。 - 新增「插入資料庫記錄」動作後,請在「插入資料庫記錄」標籤頁中點選資料庫連線設定。
- 本範例將使用本機 Microsoft SQL Server 實例,因此選擇Microsoft SQL Server,然後點選下一步。
- 在下一頁輸入伺服器連線資訊、驗證模式及要使用的資料庫:
- 如需有關如何使用資料庫設定精靈的詳細說明,請參閱資料庫設定對話框。
- 資料庫連線設定完成後,需指定列印作業中儲存的變數作為更新資料庫記錄值的來源,因此請選擇要使用的每個欄位,並將變數輸入為要使用的值,如下圖所示:
- 點選上方工具列的測試整合按鈕。
- 點選右上角的綠色開始按鈕。
- 當指定訊息佇列收到 XML 資料時,整合會被觸發,標籤會被列印,資料也會寫入資料庫。