这是我的剧本:
WITH MEMBER [Date].[Date - Calendar Month].[2MthPrev] AS
(
ANCESTOR(
CLOSINGPERIOD([Date].[Date - Calendar Month].[Calendar Month]),
2
))
SELECT
NON EMPTY
{
[Date].[Date - Calendar Month].[2MthPrev]
}
ON ROWS,
NON EMPTY
[Measures].[Revenue]
ON COLUMNS
FROM [OurCube]
查询运行时没有错误,但结果窗格为空。
我尝试在层次结构级别[Date - Calendar Month]
中的上个月前两个月的[Calendar Month]
层次结构中创建自定义成员。因此,如果多维数据集中最后一个加载的月份是2013年7月,那么我希望[2MthPrev]
将显示2013年5月的结果。
我认为问题在于自定义成员[2MthPrev]
及其对ANCESTOR
的使用 - 这是如何解决的?
答案 0 :(得分:2)
不确定理解查询,但假设[日历月]最多有2个级别(全部+几个月),我猜你要求的是:
[a-month].parent.parent = [all].parent = null
[2MthPrev]是标量值而不是成员;如果你想调试到像:
with [2MthPrev] as ancestor( ... ).uniqueName
希望有所帮助。
答案 1 :(得分:2)
此查询返回给定度量值组的上一个填充日期之前2个月。您可能不得不使用它来制作计算成员。 tail中的第二个参数是可选的。如果不包含它,则默认值为1.
所以我将返回该项目的第一项(项目(0))之前的2项,其中包括该月份中有值的最后一个月(尾部)。度量组(存在子句)。
select {Tail(Exists([Date].[Date - Calendar Month].[Calendar Month].members, , "Measure Group Name")).Item(0).lag(2)} on 0
from [OurCube]