支援擴充編碼
根據預設,HL7 接收管線BTAHL72X僅支援 ASCII 編碼。 這表示輸入訊息中任何具有相等值大於 127 的字元會取代為 「?」。 這是因為在 ASCII 字元集中未表示值大於 127 的字元。
BizTalk Accelerator for HL7 (BTAHL7) 提供兩個新的編碼支援:
西歐語系
UTF-8
您可以建立並建置自訂管線元件,以實作擴充編碼支援。 自訂管線元件會使用 BTAHL7 2.X 反組譯程式。 您可以建立使用自訂管線來處理訊息的接收位置。 若要測試接收位置和自訂管線,您可以建立使用 BTAHL7 2.XSendPipeline 的傳送埠。
建立自訂管線
在 Visual Studio 2013 中,新增空白BizTalk Server專案。
在方案總管中,以滑鼠右鍵按一下新專案,按一下 [新增],然後按一下 [新增專案]。
在 [ 新增專案] 對話方塊中,新增 接收管線。
從管線工具箱中,將 BTAHL7 2.X 反組譯程式 拖曳至管線編輯器,並將它放入 [反組 譯程式] 階段 [ 放置這裡 ] 目標。
注意
如果 BTAHL7 2.7 反組譯程式不在工具箱中,請在工具箱中按一下滑鼠右鍵,然後按一下 [ 選擇專案]。 在 [ 選擇工具箱專案] 對話方塊的 [BizTalk 管線元件 ] 索引標籤上,選取 [BTAHL7 2.X 反組譯程式 ] 核取方塊,然後按一下 [ 確定]。
在 BTAHL7 2.X 反組譯程式的屬性窗格中,從 [編碼字元集 ] 下拉式清單中,選取 [ 西歐 ] 或 [UTF8 編碼]。
注意
HL7 僅支援 ASCII (預設) 、西歐和 UTF8 編碼。 請勿選取其他編碼選項,因為 HL7 不支援它們。
在 [檔案] 功能表上,按一下 [全部儲存]。
部署專案。
建立新的接收位置以繼續。
建立使用自訂管線的接收位置
在 [開始] 功能表上,按一下 [程式],指向[BizTalk Server],然後按一下[BizTalk Server系統管理]。
在 [BizTalk Server管理主控台] 中,依預設,依序展開 [BizTalk Server][系統管理]、[BizTalk 群組]、[應用程式] (指定的應用程式、BizTalk 應用程式 1) 、以滑鼠右鍵按一下 [接收位置]、指向 [新增],然後按一下 [單向接收位置]。
在 [ 接收位置屬性 ] 對話方塊的 [ 接收管線 ] 下拉式清單中,選取您建立的自訂管線名稱。 (這是自訂管線物件的名稱,而不是 BTAHL7 2X pipeline.)
建立傳送埠以測試接收位置和管線
在 [開始] 功能表上,按一下 [程式],指向[BizTalk Server],然後按一下[BizTalk Server系統管理]。
在 [BizTalk Server管理主控台] 中,依預設,依序展開 [BizTalk Server管理]、[BizTalk 群組]、[應用程式] (指定的應用程式、[BizTalk 應用程式 1]) 、以滑鼠右鍵按一下 [傳送埠]、指向 [新增],然後按一下 [靜態單向傳送埠]。
在 [ 傳送埠屬性 ] 對話方塊的 [ 傳送管線 ] 下拉式清單中,選取 [BTAHL72XSendPipeline]。
測試接收位置和管線
卸載包含特殊字元的檔案,並以您在自訂管線中指定的相同編碼方式儲存到接收位置中指定的位置。 輸出位置的檔案應該保留特殊字元。
注意
如果您嘗試處理使用不支援編碼的檔案, (請記住只支援 ASCII、西歐和 UTF8) ,則會在應用程式事件檢視器中記錄錯誤,並出現錯誤識別碼:5633。
注意
如果您要測試針對 UTF8 編碼設定的自訂管線,您應該將 Byte Order Mark (BOM) 字元附加至您傳遞的訊息。 如果您要測試針對西歐編碼設定的自訂管線,請勿附加 BOM 字元。