2010-06-16 77 views
0

我有一個數據流任務,並通過OLE DB源組件連接到數據庫以提取數據。這些數據輸入到一個條件拆分組件中,根據一個簡單的表達式來分離數據。SSIS中的條件拆分的處理結果

對此表達式進行評估後,數據將在兩個位置中的任一位置結束:位置A或位置B.

好吧,我已經設置好並正常工作了。一旦數據被分離到這兩個位置,將對記錄進行額外的處理。

這裏是我卡住的地方:我需要處理LocationA中的記錄之前處理LocationB中的記錄。

有沒有一種方法可以設置哪些任務優先於其他任務?如果不是,處理這個問題的最好方法是什麼?我想我可能需要將位置A和位置B中的數據寫回數據庫,並在控制流中創建新的數據流任務以處理這些記錄必須處理的順序。

任何幫助,非常感謝!

回答

0

我假設您需要位置B處理LocationB處理的結果嗎? 我沒有可以向您展示的這個工作實現,但從概念上講,您可以將LocationA處理的結果與LocationB的輸入進行合併或連接,但實際上並不使用輸出中的值。這將迫使LocationA在LocationB運行之前完成。 alt text http://heeroz.com/multicast.png

+0

您是對的:我需要在處理LocationB之前插入LocationA的記錄,因爲我需要使用LocA中新插入記錄的PrimaryKey來綁定LocB記錄。但是,我必須承認,你的圖對我來說有點混亂。你會介意只是稍微擴展一下嗎?感謝您一直以來的幫助! – Sesame 2010-06-16 03:12:24

+0

我更新了圖表。關鍵是合併連接中的連接條件,因爲您不希望數據集發生更改,所以它必須對位置b處理的輸入保持中立。 – cdonner 2010-06-16 17:28:26