2013-07-30 23 views
1

我使用MDX作爲SSRS報告的基礎。我現在試圖創建一個參數來定義NULL-Entry行是否應該顯示在報表中。有沒有寫一個MDX在排序的可能性:MDX - 有或沒有空行取決於參數

select 
CASE @WithNull 
WHEN 'false' THEN 'NONEMPTY' 
WHEN 'true' THEN '' 
END 
{[Dimension1]} on 0, 
{[Dimension2] 
* [Dimension3]} on 1 
from [Cube] 

含義,如果用戶設置的「真」參數「WithNull」,那麼MDX將顯示NULL條目,否則會遺漏了。

我已經試圖在報告中解決它,但它也沒有解決。

Thanx提前爲您提供幫助。 菲爾

回答

1

我不認爲你可以直接參數化查詢的一部分,但隨着軸MDX集,它應該是可以計算這些(我沒有嘗試):

select 
CASE @WithNull 
    WHEN 'false' THEN NonEmpty({[Dimension1]}) 
    ELSE       {[Dimension1]} 
END 
on 0, 
{[Dimension2] * [Dimension3]} 
on 1 
from [Cube] 

我在這裏使用了NonEmpty函數,它需要一個參數集並返回一個集合。 NON EMPTY關鍵字只允許作爲軸子句的第一部分,我認爲,不適用於任意集合。