2014-09-29 53 views
0

嗨,我使用SSRS 2008從報表主要數據集的多值參數使用列

我的設立是MainReport與數據集1和1個參數 - 訂單ID。數據集1中的一列是ShippingID。 我的其他報告稱爲 - 子報表有1個多值參數 - ShippingID。

我正在嘗試使用主報表中的ShippingID作爲子報表的多值參數。 我在這裏嘗試了不同的線程,但大多數情況下它們與我的場景不同。 我該如何着手設置,這甚至可能嗎? 我一直試圖設置它整整一天,但沒有成功。

在我的方案中,一個訂單可以在多個貨件上。

我嘗試的一件事是在MainReport中創建新的多值參數 - 將其稱爲shippingIDs_sub並將其默認值映射到dataset1.ShippingID。但是,當我嘗試運行報告時,出現錯誤「'shippingIDs_sub'參數缺少值」 - 因爲我的MainReport有時會在ShippingID列中返回NULL。

我的場景與此非常相似 SSRS passing parameter to subreport 儘管我有時在用作多值參數源的列中獲得NULL值。 有什麼辦法可以過濾掉NULL並只爲現有的ID運行子報告?

回答

0

在調用子報表的操作中,在映射到shippingIDs_sub的位置,只要數據集中的值爲NULL,就使用表達式傳遞某個有效值。

=IIF(IsNothing(Fields!ShippingID.value),"Some Valid Value",Fields!ShippingID.value) 

至於這樣的:

有什麼辦法可以過濾掉空值只爲 現有的ID運行報表?

不,你不能關閉去子報表的能力,但你可以通過改變任何外觀的用戶點擊,這樣它看起來並不像它的可點擊「隱藏」了。例如,在我們的報告中,當某些內容可點擊時,我們會用藍色下劃線。所以,如果我不想用戶點擊它,我只是將它與所有其他文本的字體顏色/樣式相同。但是,如果他們想要的話,它不會阻止確定的用戶點擊它。

+0

謝謝Tab,我最終決定直接在數據集中用單個空間符號替換所有NULL值,但是您的解決方案將以同樣的方式工作,所以我接受了它。 – wiciuo 2014-09-30 14:32:32

相關問題