1

我使用 MDX 作为 SSRS 报告的基础。我现在正在尝试创建一个参数来定义 NULL-Entry 行是否应显示在报告中。是否有可能以以下方式编写 MDX:

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

这意味着,如果用户将参数“WithNull”设置为“True”,则 MDX 将显示 NULL-Entries,否则它们将被忽略。

我已经尝试在报告中解决它,但也没有成功。

提前感谢您的帮助。菲尔

4

1 回答 1

1

我不认为你可以直接参数化这部分查询,但由于轴是 MDX 集,应该可以计算这些(我没有尝试过):

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

我在NonEmpty这里使用了这个函数,它需要一个集合作为参数并返回一个集合。我认为,NON EMPTY 关键字只允许作为轴子句的第一部分,而不是任意集合。

于 2013-07-30T18:29:52.943 回答