nonmptycrossjoin在pps中没有按预期工作

时间:2013-08-20 06:36:48

标签: ssas mdx dashboard

我在PPS中有2个链接过滤器,它们之间有连接公式:

   nonemptycrossjoin
    ( 
       [SAMPLECODE].[SAMPLECODE].members,
        { <<UniqueName>> }
    )

这个nonemptycrossjoin应该从过滤器中取出没有度量的SAMPLECODE成员(即空值)。 And this MDX works when i try it in SSMS.

为什么it's not working in PPS

1 个答案:

答案 0 :(得分:1)

如果完全相同的MDX语句根据同一个多维数据集上的环境(SSMS与PPS)的不同而行为不同,那么我只能想象连接参数或某些会话设置会影响结果。

然而,NonEmptyCrossJoindeprecated since SQL Server 2005。您可以使用NON EMPTY轴修改器和普通交叉连接(缩写为*,而不是使用此功能,如下所示:

select [Measures].[ASD] on 0,
       non empty
       [DCode].[DCode].children * [SAMPLECODE].[SAMPLECODE].members
       on 1
  from p

修改

As - 根据您的评论 - 您收到非空的错误消息,我在AS2008R2的Adventure Works上尝试过,以下查询工作正常:

select [Measures].[Internet Sales Amount] on 0,
       non empty
       [Customer].[Country].children * [Customer].[Gender].members
       on 1
  from [Adventure Works]

因此,我认为您在上述查询与真实查询之间的转换中存在错误。如果没有看到原始查询,我将无法找到它!