2012-10-22 83 views
1

我有返回包含多個記錄一個簡單的表一的StoredProcedure:普爾多個消息與BizTalk 2006 SQL適配器

DECLARE @STEPS_TABLE AS TABLE(OrchestrationID唯一標識符,[信息]爲nvarchar(1000));

- 把值裝載這裏

SELECT * FROM @STEPS_TABLE作爲步驟FOR XML AUTO,XMLDATA,ELEMENTS

我使用的SQL傳輸架構生成嚮導來創建我的架構和可配置端口正確。如果我在我的編排中使用這個模式,它可以很好地工作。每次@STEPS_TABLE有多條記錄時,BizTalk啓動一個業務流程實例。

閱讀微軟技術文檔,他們建議在一次調用中獲取多條消息,然後使用XML管道將多行BizTalk消息拆分爲單行BizTalk消息。

我以前沒有使用過XML管道,所以我嘗試了所提供的步驟,但無法讓它工作。

有人可以給我一個「如何」的鏈接(在經過幾個小時的搜索後才發現任何東西),或給我一些成功的提示。

在此先感謝。

回答

2

...幾個小時後,我可以自己想出來。因此,如果有人遇到與我相同的問題,請在此處提供一些指導方針,以使其適用於您的環境。

最後,我跟隨了Microsoft的不同演練,完全避免了流水線建議。我找到的文檔名爲「使用SQL適配器反彙編結果集」,並且完全符合我的要求。您可以按照Microsoft的整個演練,但避免創建發送端口,並對接收端口稍作調整。

繼技術文檔後,您將得到兩個模式,爲了這個練習,我會將它們稱爲消息和信封(包含幾條消息)。在編排中,您可以創建映射到郵件的接收端口,然後在將其配置爲SQL端口並將其鏈接到存儲過程(或選擇語句)時,只需將文檔根元素名稱更改爲信封根名稱; XML接收管道(在BizTalk 2006中默認提供)將對拆分信封中包含的消息以及爲每條消息實例化編排提供幫助。

微軟「反彙編結果集使用SQL適配器」演練下可以找到:

http://msdn.microsoft.com/en-us/library/aa562098(v=bts.20).aspx

任務完成:)

+0

良好的工作:-)標記爲答案,如果你願意。 –

+0

謝謝......必須等3個小時......;) –