2015-03-02 72 views
0

我目前正在使用這樣的:發送多個選定值逗號分隔的存儲過程

params["RPBla"].join(",") 

作爲(存儲過程)數據集的默認參數。這工作得很好,並從報表參數RPBLA發送一個或多個選擇的值存儲過程,例如:

1,2,3 

不幸的是,這不,如果用戶不選擇任何價值的工作。任何想法做什麼。 Actuate BIRT應該發送NULL而不是例如1,2,3。

回答

1

怎麼樣在這個默認值表達式測試內容是這樣的:

if (params["RPBla"].value==null){ 
    null; 
}else{ 
    var list=params["RPBla"].join(","); 
    list.length>0 ? list : null; 
} 

當然,你可以返回任何東西,你需要在這裏的「空」代替,例如返回的特定值警告存儲過程應該禁用過濾器。

+0

謝謝 - 我會測試這個。對不起剛剛開始與Actuate的腳本... – cs0815 2015-03-04 12:01:24

+0

對不起... – cs0815 2015-03-04 21:56:58

+0

它沒有什麼幫助。沒有選擇任何東西時,預期的行爲是什麼?顯示所有值,什麼也沒有或具體的默認值?當選擇爲空時,此存儲過程預期哪個值?正如你所提到的「BIRT應該發送NULL」,我相信null在存儲過程中被考慮到了,但似乎我誤解了。 – Dominique 2015-03-05 09:49:19