傳送 EDI 通知
通知可指示 EDI 訊息傳輸的狀態。 BizTalk Server收到 EDI 交換之後,它會根據已啟用的通知,將一或多個通知傳回給 EDI 交換的傳送者。
根據驗證層級而定,EDI 訊息通知可分成兩種:
標頭驗證所產生的 技術通知 。 技術確認會報告位址接收者處理交換標頭和結尾的狀態。
由於主體驗證所產生的 功能通知 。 它會報告處理所接收文件時遇到的每個錯誤。
BizTalk Server可以傳回技術和功能通知,以回應單一交換。 BizTalk Server會針對每個交換傳回單一技術通知。 對於 X12 交換,它會為每個收到的群組傳回一個功能通知。 對於 EDIFACT 交換,無論交換包含多少個群組,它只會為每個交換傳回一個功能通知。
X12 通知
X12 技術通知
如果 X12 訊息的 ISA 標頭和 IEA 結尾有效 (不管其他內容如何),即會傳送正值 TA1 通知。 如需 TA1 通知內容的詳細資訊,請參閱 X12 TA1 通知。
X12 功能通知
997 通知是用來通知收到交換或功能群組、接受或拒絕一或多個功能群組或交易,或驗證和報告是否符合標準。 如果BizTalk Server收到與多個群組的交換,則會傳回每個群組的通知。 如果群組包含多個交易集,依據是否針對接受的交易集產生 AK2 迴圈而定,該群組的通知將會包含多個 AK2 迴圈 (每個交易集一個)。 如需 997 通知內容的詳細資訊,請參閱 X12 997 通知。
注意
當 EDI 接收管線建立 X12 功能通知的「功能群組標頭」(GS) 區段時,會從接受通知的功能群組擷取「應用程式傳送者代碼」(GS02) 和「應用程式接收者代碼」(GS03)。 不過,內送訊息的 GS02 會對應至通知的 GS03,而內送訊息的 GS03 會對應至通知的 GS02。
EDIFACT 通知
EDIFACT 技術通知
對 EDIFACT 來說,不會使用單獨的技術通知,但接收通知會重複使用功能通知或 CONTRL 通知 (請參閱下文) 的區段。 這就相當於技術通知。
如需技術 CONTRL 通知的詳細資訊,請參閱 EDIFACT CONTRL 訊息作為技術通知。
EDIFACT 功能通知
對 EDIFACT 來說,功能 CONTRL 通知是用來通知收到交換、群組和訊息、接受或拒絕收到的交換、群組和訊息,以及列出任何語法錯誤或其中包含的不受支援功能。 CONTRL 通知會報告針對完整接收的交換進行語法檢查的結果。
如需功能 CONTRL 通知的詳細資訊,請參閱 EDIFACT CONTRL 訊息作為功能通知。
產生通知的時機
如果符合下列任一條件,EDI 接收管線將會產生通知:
所接收交換中的資料項目提示通知。 針對 X12 編碼的訊息,如果 ISA14 資料元素設定為 1,接收管線將會產生技術 TA1 ACK。 針對 EDIFACT 編碼的訊息,如果 UNB9 資料元素設定為 2,接收管線會產生技術 CONTRL ACK,如果 UNB9 資料元素設定為 1,則會產生功能性 CONTRL ACK。
協議屬性提示通知。 針對 X12 交換,這些屬性是 [合約屬性] 對話方塊之 [雙向合約] 索引標籤之 [通知] 頁面中的[TA1 預期] 和997 [預期] 屬性。 針對 EDIFACT 交換,這些屬性是 [合約屬性] 對話方塊之 [通知] 索引標籤之 [通知] 頁面中的 [接收] 訊息 (CONTRL) 預期,以及 [通知] (CONTRL) 。 若啟用一種通知,您也可以指定是否要批次處理該類型的通知。
如果無法判斷交換的協議,全域屬性會提示通知。 這些屬性是:
TA1 [預期] 和[997 預期] 屬性位於[X12 後援設定] 對話方塊之 [合約] 索引標籤的[通知] 頁面中。
在[EDIFACT 後援設定] 對話方塊的 [合約] 索引標籤的 [通知] 頁面中,收到訊息 (CONTRL) 預期和通知) (CONTRL。
針對 EDIFACT,如果同時提示技術通知和功能通知,EDI 接收管線會傳回兩個個別 CONTRL 通知。 技術 CONTRL 通知只包含接收通知資訊, 功能 CONTRL 通知則同時包含接收資訊和功能通知資訊。 如需詳細資訊,請參閱 EDIFACT CONTRL 通知。
識別含有控制編號的通知
每個通知都必須以 X12 的交易集控制編號 (ST2 資料項目) 或 EDIFACT 的交易集參考編號 (UNH1 資料項目) 來識別。 如果已針對傳出通知設定合約,BizTalk Server會根據下列專案,將交易集控制項或參考編號設定為合約的值:
針對 X12 通知– (ACK 控制項編號 ([本機主機設定] 頁面 ([接收者設定] 區段中的 [合約屬性] 索引標籤的 [設定] 區段 (ST0) 2屬性)
針對 EDIFACT 通知– ([本機主機設定] 頁面中的[Edifact Ack 控制項編號] 屬性 ([合約屬性] 對話方塊中合約索引標籤的 [設定] 區段)
如果BizTalk Server未決定通知的合約,則會使用上述相同屬性,但在[X12 後援設定] 廣告[EDIFACT 後援設定] 對話方塊的 [合約] 索引標籤上提供。 如果同時設定技術和功能通知,這個設定會同時套用到兩者。 每產生一個通知或交換,此整數編號就會遞增 1。
通知的信封是根據通知控制結構描述,從所收到訊息中的資料建立。
準備通知
BizTalk Server 建立通知信封的方式與建立訊息信封的方式一樣,都是查看「交換控制標頭」和「功能群組標頭」的定義。 如需詳細資訊,請參閱 傳出 EDI 訊息的合約解析和架構判斷。
若要在 TA1、997 或 CONTRL) 啟用產生的通知 (順暢路由,EDI 反組譯程式會在通知上填入 DestinationPartyReceiverQualifier
、 DestinationPartyReceiverIdentifier
DestinationPartySenderQualifier
和 DestinationPartySenderIdentifier
屬性。
同步和非同步通知
您可以選擇同步或非同步傳送 EDI 通知。 如果選擇同步傳送,BizTalk Server 會將通知直接路由傳送至雙向要求-回應接收埠的傳送管線。 如果選擇非同步傳送,BizTalk Server 會將通知路由傳送至 MessageBox,再由傳送埠訂閱該訊息。
若要指定BizTalk Server同步傳送通知,請在 [本機主機設定] 頁面的 [本機主機設定] 頁面 ([接收者的設定] 區段中,選取 [路由 ACK] 以在[X12] 和 [EDIFACT 合約] () 的 [交換設定] 區) 段 (傳送管線。 如果清除此屬性,則必須設定雙向接收埠的傳送管線,才能傳回 EDI 交換。
如果使用要求-回應接收埠,而且同時啟用了技術通知和功能通知,則技術通知會以同步方式傳回,而功能通知會以非同步方式傳回。
當透過 HTTP/HTTPS 接受 EDIINT/AS2 編碼訊息時,如果 (對相同的通訊端) 送出 MDN 以回應 MIME 包裝的 EDI 內容,則不會以同步方式送出 EDI 通知。 如果在此情況下,會核取路由 ACK 以在要求回應接收埠屬性上傳送管線,BizTalk Server將會忽略 屬性。
另請參閱
EDI 通知結構
EDI 服務和控制結構描述
X12 TA1 通知
X12 997 通知
EDIFACT CONTRL 通知
EDIFACT CONTRL 訊息作為技術通知
EDIFACT CONTRL 訊息作為功能通知