步驟 12:設定協調流程圖形
在此步驟中,您會完成協調流程圖形的設定,以移除設定智慧標籤不足。 您會將 DoorbellOutputMessage 指定為第一個轉換程式的輸出,並將 DoorbellMap.btm 指定為該程式中使用的對應。 接著,您會將 DoorbellFinalMessage 指定為第二個轉換程式的輸出,並新增運算式,以額外的欄位資料擴充訊息。
設定協調流程圖形
在 Visual Studio 的協調流程設計檢視介面上,按一下 ConstructMessage_1 圖形。
在 [ 屬性 ] 視窗中,按一下 [訊息建構 ] 屬性,從下拉式清單中選取 [ DoorbellOutputMessage ],然後按 Enter。
在協調流程設計檢視介面上,按一下ConstructMessage_1圖形內的DoorbellTransform圖形。 在 [ 屬性 ] 視窗中,按一下 [ 對應名稱],然後按一下屬性欄位中的省略號 (...) 按鈕。
在 [轉換組態] 對話方塊中,選取 [現有對應]。 在 [ 完整地圖名稱] 下拉式清單中,按一下 [BTAHL7_Project.DoorbellMap]。
按一下左窗格中的 [來源 ]。
按一下 [變數名稱 ] 底下的空白方塊,然後從下拉式清單中按一下 [ DoorBellInputMessage ]。
按一下左窗格中的 [ 目的地 ]。
按一下 [變數名稱 ] 底下的空白方塊,然後從下拉式清單中按一下 [ DoorbellOutputMessage ]。
按一下 [確定] 以儲存變更。
在協調流程設計檢視介面上,按一下 ConstructMessage_2 圖形。
在 [ 屬性 ] 視窗中,按一下 [建構的訊息],從下拉式清單中選取 [ DoorbellFinalMessage ],然後按 Enter。
在協調流程設計檢視介面上,按一下ConstructMessage_2圖形內的DoorbellFinalTransform圖形。 在 [ 屬性 ] 視窗中,按一下 [ 運算式],然後按一下省略號 (...) 按鈕以開啟 BizTalk 運算式編輯器。
在 BizTalk 運算式編輯器中,按一下文字欄位並貼上下列文字:
HeaderInfo = new System.Xml.XmlDocument(); HeaderInfo.LoadXml("<ns0:MSH_25_GLO_DEF xmlns:ns0=\"http://microsoft.com/HealthCare/HL7/2X\"> <MSH><MSH.2_EncodingCharacters>^~\\&</MSH.2_EncodingCharacters><MSH.3_SendingApplication> <HD.0_NamespaceId>SrcApp</HD.0_NamespaceId><HD.1_UniversalId>SrcAppUid</HD.1_UniversalId> </MSH.3_SendingApplication><MSH.4_SendingFacility><HD.0_NamespaceId>srcFac</HD.0_NamespaceId> <HD.1_UniversalId>srcFacUid</HD.1_UniversalId></MSH.4_SendingFacility><MSH.5_ReceivingApplication> <HD.0_NamespaceId>dstApp</HD.0_NamespaceId><HD.1_UniversalId>dstAppUid</HD.1_UniversalId> </MSH.5_ReceivingApplication><MSH.6_ReceivingFacility><HD.0_NamespaceId>dstFac</HD.0_NamespaceId> <HD.1_UniversalId>dstFacUid</HD.1_UniversalId></MSH.6_ReceivingFacility><MSH.7_DateTimeOfMessage> <TS.1>200307092343</TS.1></MSH.7_DateTimeOfMessage><MSH.8_Security>sec</MSH.8_Security> <MSH.9_MessageType><CM_MSG.0_MessageType>ADT</CM_MSG.0_MessageType> <CM_MSG.1_TriggerEvent>A04</CM_MSG.1_TriggerEvent></MSH.9_MessageType> <MSH.10_MessageControlId>msgid2134</MSH.10_MessageControlId><MSH.11_ProcessingId> <PT.0_ProcessingId>P</PT.0_ProcessingId></MSH.11_ProcessingId><MSH.12_VersionId> <VID_0_VersionId>2.2</VID_0_VersionId></MSH.12_VersionId></MSH></ns0:MSH_25_GLO_DEF>"); DoorbellFinalMessage.MSHSegment = HeaderInfo; DoorbellFinalMessage.BodySegments = DoorbellOutputMessage; DoorbellFinalMessage.ZSegments = ""; DoorbellFinalMessage(BTAHL7Schemas.MSH1) = 124; DoorbellFinalMessage(BTAHL7Schemas.MessageEncoding) = 65001; DoorbellFinalMessage(BTAHL7Schemas.MSH2) = "^~\\&"; DoorbellFinalMessage(BTAHL7Schemas.ParseError) = false; DoorbellFinalMessage(BTAHL7Schemas.ZPartPresent) = false; DoorbellFinalMessage(BTAHL7Schemas.SegmentDelimiter2Char) = true;
按一下 [確定]。
重要
在 「HeaderInfo.LoadXml」 運算式中,刪除運算式內的歸位字元和空格。 「HeaderInfo.LoadXml」 語句應該位於一行。
注意
上述文字的第一個區塊是硬式編碼 XML 標頭的範例。 BTAHL7 序列化程式需要標頭區段。 您可以根據您的環境需求自訂這些標頭值。 上述文字的第二個區塊會定義多部分訊息所需的三個訊息部分。 BTAHL7 序列化程式需要多部分訊息。 上述文字的第三個區塊包含 BTAHL7 序列化程式檢查的升級屬性,以便將 XML 訊息序列化為 HL7 一般檔案訊息。
繼續進行 步驟 13:建立和設定埠。