2013-03-01 66 views
1

我們有幾個表格用於存儲報告的二進制blob及其元數據。我想做一個總結這些表格內容的報告。我爲每個表創建了一個轉換,它們都輸出相同的變量。然後我有一個轉換,讀取值,然後格式化並寫入到一個XML文件。如何合併水壺中的兩個(或更多)轉換流?

每個錶轉換都與輸出轉換隔離。然而,如果我將他們全部指向輸出轉換,那麼似乎只有其中一個工作,結果只反映一個表(我假設他們每個都運行,但它們相互覆蓋)。

因此,我假設我需要以某種方式合併流。我不想將這個代碼硬編碼到表格轉換中,因爲我想讓它們保持可重用和解耦。我也不想將這個代碼硬編碼到報表編寫器中,因爲每當我只需要對一部分表進行報告時,我就需要對它進行處理。

我嘗試使用「Join \ Merge Rows」或「Flow \ Append」流,但這些流在工作級別似乎不可用,並且您似乎無法在其他轉換中嵌入轉換。

這甚至可能在水壺?在版本4.1中如何?如果不是,它是在一個新的版本?

我的工作的二元組看起來像這樣。我所有的表格轉換都使用「複製行結果」,而作者使用「從結果中獲取行」。

 Table1 
    / \ 
    / \ 
Start  Output Report 
    \ /
     \ /
     Table2 

回答

1

您無法合併作業中的流。工作並不是真正意圖進行並行處理,我甚至不知道當你像你一樣分流時可能發生什麼(你可以做一些基本的工作分支,但就是這樣)。您需要在轉換中執行此操作,即使這意味着您只需創建一個包含調用轉換步驟的包裝作業即可。

+0

但是在轉換中我不能嵌入另一個轉換AFAICT,那麼這是否意味着我不能爲每個表單獨轉換? – ArtB 2013-03-02 19:24:59

+0

我不確定我是否按照你在這裏做的,但是你可以在變換中嵌入變換 - 有點。這就是一個映射(子轉換)。那是你在找什麼?順便說一句,目前社區版本的水壺是4.4。 – 2013-03-16 00:36:30