2013-05-31 64 views
1

在我的圖在某一點上,我有一個過濾器行。如果結果爲TRUE,我想做一個SELECT,否則(FALSE)另一種選擇。我做了兩個input table對象。在過濾器執行後在水壺中的具體查詢

實際上,在過濾器行之後,執行兩個input table可能是因爲在開始時被初始化。我也嘗試過使用SQL腳本,但它似乎具有相同的行爲。

回答

1

這是正確的,這是PDI的工作原理。所有步驟都會在同一時間進行初始化,這可能會導致恰好出現這種情況。你的具體問題是表中的一個輸入可能沒有得到任何行,並且這會爆炸?

在這裏看到:http://forums.pentaho.com/archive/index.php/t-78324.html

各種解決方案,是你 「的每一行執行」?在這種情況下,您可以動態構建字符串中的SQL。否則需要更多的信息來設計一個解決方案 - 有點棘手。

+1

謝謝。我試圖使用每行的執行作爲一個技巧,沒有參數(我不需要參數),但如果我沒有指定參數,它會拋出'沒有參數定義'。可能是因爲添加假的WHERE 1 =?並且以前是一個常數值1? – 0x41ndrea

+0

是的 - 我已經完成了之前的1 = 1技巧:) – Codek

+0

謝謝,但最終我選擇了不同的解決方案,使用兩種不同的轉換。我認爲這更具可讀性。 – 0x41ndrea