共用方式為


傳送保留的批次交換

當 EDI 傳送管線處理保留的輸出批次交換時,它會將該批次交換一起處理。 它通常會重複使用現有的信封 (控制項) 區段來建立 EDI 交換,而不是根據合約套用信封。 當 [輸入批次處理] 選項 屬性設定為 [ 保留交換 - 發生錯誤時暫停交換][保留交換 - 在錯誤時暫停交易集] 時,就會發生這種情況。

結構描述驗證

BizTalk Server 會使用批次結構描述和服務結構描述來驗證保留批次的信封。 批次結構描述可用來驗證保留訊息的根節點,而服務結構描述則用於驗證交換、群組,以及交易集標頭和結尾。 如需批次架構的詳細資訊,請參閱 EDI 批次架構。 如需服務架構的詳細資訊,請參閱 EDI 服務和控制架構

BizTalk Server 會使用專案中的文件結構描述來驗證批次交換中的文件。

傳送端處理

當 EDI 組合器處理保留交換時,它通常會使用收到批次交換時該批次中現有的相同交換、群組和交易集標頭。

  • 對於 X12 交換,在 [合約屬性] 對話方塊的 [單向協定] 索引標籤中,不同頁面上的屬性設定 (決定BizTalk Server如何建立傳出交換的 ISA、GS 和 ST 標頭,) 通常不適用。

  • 若是 EDIFACT 交換,通常會使用協議屬性中的 UNA 設定。 UNA 區段在 EDIFACT 編碼訊息中是選用項目,但在序列化保留的批次交換時是必要項目。 如果 XML 執行個體中的 UNA 區段沒有指定值,則會使用傳送管線元件的預設屬性值。 如果未指定傳送管線元件屬性的值,保留批次中繼 XML 訊息將會遭到擱置。

  • 如果您在 EDI.PopulateInterchangeValues 自訂群組件) 保留交換上的內容屬性為 「True (」,則傳送埠中的 EdiAssembler 會將所有交換、群組和交易集標頭填入合約屬性中所設定的值。

  • 如果您在傳送管線處理內容之前,將交換內容屬性升階 EDIOverride.OverrideEdiHeader 為 「True」,您可以藉由設定適當的 EDIOverride 內容屬性值來覆寫輸出檔案的信封值。 如需詳細資訊,請參閱 覆寫 EDI 標頭

    對於沒有錯誤的保留交換,組合器會保留交換群組中的交易集順序和交換中的群組順序。

注意

您可以透過 XML 傳送管線來傳送保留批次。 不過,這時您必須修改該批次結構描述的命名空間。 如需詳細資訊,請參閱 使用 XML 傳送管線傳送保留的批次

處理時發生錯誤

EDI 傳送管線會因為 XML 中的保留標記,而將批次 EDI 交換辨識為保留批次。 這個標記 < X12InterchangeXml > 或 < EdifactInterchangeXml > 會由 EDI 接收管線套用至 XML。

下列特殊案例適用於發生錯誤時擱置交易集的情況:

  • 如果群組中的所有交易集全都無效,EDI 傳送管線就會將群組控制區段包含到產生的 EDI 中,但該群組不會包含任何交易集 (因為已經捨棄)。 群組尾總計會更新為零。 交換控制區段則保持不變。

  • 如果交換中的所有交易集全都無效,交換控制區段仍然會包含在產生的 EDI 交換中,但該交換不會包含任何交易集 (因為已經捨棄)。 這會構成空白交換。

  • 如果群組控制區段或交換控制區段無效,就不會產生 EDI 編碼交換。 事件檢視器中將會建立記錄檔,表示該次交換已遭拒絕。

另請參閱

批次處理外寄 EDI 訊息