SSAS MDX脚本 - 除[All]成员

时间:2015-09-24 23:29:37

标签: scope ssas mdx

是否还要写一个范围语句,该范围语句将覆盖除[All]成员之外的日期层次结构的所有成员?

我尝试了许多使用FILTER,EXCEPT,DESCENDANTS等的方法,但每次都会收到错误消息: 当前上下文中不允许使用任意形状的集合。

我需要在低于ALL成员的级别进行一些计算,然后让它按上下文汇总(根据excel数据透视表选择)

有什么想法吗?

现在我已经在我的盘子上待了将近一个星期了,除了为层次结构的每个级别编写多个范围语句之外我还没有办法解决这个问题,但最后我将不得不多次重复这个问题。我们正在为许多日期维度执行此操作

必须有一种更简单的方法,对吧?

2 个答案:

答案 0 :(得分:1)

Scope([Date].[Date].Members, [Date].[Year].[Year].Members)

Date.Date是Date维度中的关键属性。 [Date].[Date].Members表示所有维度,包括最低级别及更高级别。 [Date].[Year].[Year].Members表示年级,但不是总计。

答案 1 :(得分:1)

我找到的最佳方法是将Descendants函数与 AFTER 描述标记一起使用:

SCOPE([Date].[Date].[All], , AFTER);
// Calculations here.
END SCOPE;
相关问题