MDX计算成员所选成员汇总的总和

时间:2011-03-31 01:00:04

标签: ssas mdx olap

我正在尝试编写一个计算成员,该成员将根据轴上提供的选定值沿着维度滚动。

产品 - >子类别 - >类别 lexus - >轿车 - >汽车 lexus-coupe - >轿跑车 - >汽车 宝马 - >轿车 - >汽车 bmw-coupe - >情侣 - >汽车 福特 - >皮卡 - >卡车 chev - >皮卡 - >卡车 ford-suv - > suv - >卡车 lincoln-nav - > suv - >卡车

[计算量度] = [度量]。[a] + [度量]。[b]

假设用户想要在汽车级别看到[计算量度]仅用于lexus-coupe和bmw。如何根据维度中选择的内容创建将在汽车级别汇总的计算度量?

提前谢谢!

1 个答案:

答案 0 :(得分:1)

我之前编写过MDX来检查行(或列)上使用的维度,并更改计算度量的方式。这有点乱。

此示例查看轴1(行?)是否正在使用任何度量,并可以相应地更改计算:

IIF(InStr(1, SetToStr(StrToSet("Axis(1)")), "[Measures].") = 0, blah, blah)

不记得我为什么选择了StrToSet,然后是SetToStr,但它确实有效!

您可以使用像InStr()这样的VBA字符串函数来检查用户在行和列上选择的内容,并相应地调整您的计算成员......