設定外寄批次
若要定義BizTalk Server將交易集批次處理成 EDI 交換的方式,您必須為合約建立一或多個批次組態。 BizTalk Server與該合約相關聯的所有交換,且符合批次篩選準則的所有交換都會根據該批次設定的相同發行準則進行批次處理和釋放。
批次組態包括了批次名稱、批次識別碼、篩選條件定義、群組定義、批次釋放準則和批次啟動準則。 所有與批次相關的屬性和選項都可以在 [合約屬性] 對話方塊之單向合約索引標籤的[批次組態] 頁面上取得。 若要建立合約的批次組態,請參閱 設定 Batching (X12) 。
注意
批次的文件標準是由協議屬性本身決定。 例如,如果協議是針對 X12 訊息,則批次的文件標準會是 X12。
批次類別
使用 [ Batch 組態 ] 頁面右上角的下拉式清單來判斷要顯示的批次組態。
全部:顯示所有批次組態。
作用中:只顯示作用中的批次組態。
非使用中:只顯示非作用中的批次組態。
批次識別
批次識別包含批次名稱、描述、批次識別碼和批次協調流程執行個體識別碼。
批次名稱
批次組態是根據 [合約內容] 對話方塊中單向合約索引標籤的Batch 組態頁面中指定的批次名稱所建立。 多個批次可以共用相同的組態設定,但是必須具有唯一的批次名稱。
批次描述
批次描述文字方塊可提供批次組態的描述。
批次識別碼
在 [批次組態] 頁面中建立新的批次組態時,會自動產生批次識別碼BizTalk Server。 BatchMarker 管線元件使用此值,為符合特定批次組態之批次篩選條件的內送交換加上旗標。 此值也會做為與特定批次組態相關聯之批次處理協調流程的訂閱篩選條件。
協調流程執行個體識別碼
針對此批次組態啟動之批次協調流程執行個體的協調流程執行個體識別碼。
批次篩選條件
批次是根據 [合約內容] 對話方塊中單向合約索引標籤之[批次組態] 頁面中所套用的批次篩選定義所建立。 在這個篩選條件中,您會決定要批次處理哪些交易集或訊息。 您可以在批次協調流程的執行個體已啟動的情況下,同時變更這個篩選條件的值。 變更這個篩選條件並不會影響批次釋放準則。
注意
如果您變更作用中批次的批次篩選條件,則由於 Biztalk Server 會快取此資訊的關係,您將需要等候 15 分鐘的時間讓新的篩選條件準則變成作用中。 無法修改此重新整理間隔。
若要強制新篩選立即變成作用中,請重新開機BizTalk Server主機進程。
外寄批次可包含多個群組,但一種交易類型只能有一個群組。 一個群組可以包含多個交易集,但每個交易集的交易類型都必須相同。
多個批次組態可以共用同一個批次篩選條件,而符合多個批次篩選條件的文件將會路由至所有相符的批次。
群組定義
您可以透過在協議屬性中定義功能群組標頭 (X12 編碼為 GS,EDIFACT 編碼為 UNG),決定批次輸出中的群組組成方式。 群組則會根據其「交易集識別代碼」(ST1,X12 適用) 或「訊息類型」(UNH2.1,EDIFACT 適用)、所屬版本及其目標命名空間來加以定義。 例如,交換可以包含組合了一種訊息類型的一個群組,以及另一個組合有其他種訊息類型的群組。 如需設定群組的詳細資訊,請參閱 設定 EDI 屬性。
注意
交換中的群組則未定義順序。
批次釋放準則
批次將會根據 [合約內容] 對話方塊中單向合約索引標籤的 [批次組態] 頁面所設定的準則來發行。 批次可能會根據下列任一方法來加以釋放:
根據每小時、每天或每週一次的排程。
當交易集達到可湊成群組的特定數目。
當交易集達到可湊成交換的特定數目。
當字元達到可處理成批次的特定數目。
外部觸發程序何時由 BizTalk Server 外部的應用程式執行。
如果您在 [批次排程] 對話方塊中選取 [傳送空白批次訊號] 屬性,則即使批次協調流程未收到訊息,BizTalk Server仍會在排程傳送批次時傳送空的批次訊息。
批次啟動準則
只有在符合批次啟動準則時,才會根據批次釋放準則來釋放批次。 若要啟用協調流程的實例,您必須在 [合約內容] 對話方塊的 [單向合約] 索引標籤的 [批次組態] 頁面中,按 [開始] 按鈕。 這樣會建立批次組態的協調流程執行個體。 如果 [ 開始] 按鈕可供按一下,則目前尚未啟動批次組態的協調流程實例。
按下 [ 開始] 按鈕之後,只有在下列條件成立時,才會收集批次的訊息:
這些訊息符合批次篩選條件中的準則。
日期和時間是在 [ 開始 ] 欄位中輸入的日期時間之後。
日期和時間是在 [ 結束日期 ] 欄位中輸入的值之前,或處理的批次數目小於或等於 [ 結束 (發生次數] 欄位之後的) 出現 次數,或已選取 [ 沒有結束日期 ] 選項。 所有三個選項都可在 [ 終止] 區段下取得。
啟用準則是在 [合約屬性] 對話方塊的 [單向合約] 索引標籤的 [Batch 組態] 頁面中設定。
在您按下 [ 開始] 按鈕來啟動批次處理協調流程的實例之後,在傳遞 Start 屬性的時間之前,將不會收集批次的訊息。 在 [ Batch 組態 ] 頁面中,如果未選取 [ 立即啟動 ],而且 [ 開始日期 時間] 會在您按下 [ 開始 ] 按鈕之前設定為值,則當協調流程作用中時,批次處理將會立即啟動。 如果啟動日期時間是在未來時間,批次處理將會在該時間開始。
您可以將 [開始日期 時間] 設定為未來的日期時間。 不過,如果您在未來啟動日期時間時按一下 [開始] 按鈕,就會啟動協調流程實例,但在開始日期時間發生之前不會收集任何訊息。 BatchMarker 管線元件會等到開始日期時間到了,才會升級要將訊息路由到路由協調流程或是批次處理協調流程時所需要的適當屬性。 這樣一來,系統就不會批次處理該訊息。 不過,任何傳送埠或協調流程都會挑選訊息,以個別訊息的形式訂閱這些訊息。 如需 BatchMarker 管線元件用途的詳細資訊,請參閱 組合批次 EDI 交換。
批次終止準則
在 End by datetime 之後,或 (出現次數之後的 End 屬性之後,就會停止收集批次 ) 的 訊息。 如果您不想停用批次處理協調流程,請選取 [沒有結束日期 ] 選項。
注意
如果已選取 (發生之後的結束) 屬性,則空批次訊號會計入結束批次啟用範圍所需的出現次數。 如果發生通常會導致發出空批次訊號的情況 (在批次已排程傳送時,批次處理協調流程卻沒有收到任何訊息),但是卻由於該訊號未設定而沒有傳送任何空的批次訊號時,發生次數也會進行遞增。