在计算的mdx成员中组合集和元组

时间:2014-06-13 07:30:14

标签: mdx

我在mdx查询中创建一个包含切片器信息的成员,最后一个是我的衡量标准。当我向我的元组添加一个集合(在一个维度上有多个切片器)时,我得到了这个错误。

  

此函数需要参数的字符串或数字表达式。   使用了元组集表达式。

当我将我的2位成员之一添加到我的元组中时,我不会收到此错误。

这意味着什么,我真的不知道该怎么做,从根本上说,添加切片机之间没有区别或

2 个答案:

答案 0 :(得分:1)

如果没有您的实际代码,很难帮助您。

无论如何,从您的问题来看,您似乎对集合和元组感到困惑(例如,您无法将集合添加到元组中)。我建议你查看解释这些基本概念的MDX教程:例如,icCube gentle MDX introduction应该没问题。

答案 1 :(得分:1)

元组是一个单元格。一组包含单元格。集合不能是元组的坐标之一,因为最终结果不是单元格(单元格由1给出,每个维度中只有一个成员,未指定的成员将被视为全部成员或默认值构件。

解决方法是创建计算成员:

With Member [Time].[Current Period] as { [Time].[2013], [Time].[2014] }
Select (... your query here ...)
Where ( [Products].[My product], [Time].[Current Period], ... )

在切片器中,您实际上有一个元组,因为在每个维度中都指定了一个成员。时间维度上的成员不是来自维度表列的“纯”成员,而是计算成员的事实没有影响。