这似乎很合乎逻辑:
WITH
MEMBER [Date].[Date - Calendar Month].[Calendar Year].&[2013].[LastMth] AS
IIF(
Day(Now()) = 1,
TAIL([Date].[Date - Calendar Month].[Calendar Month],2).Item(1),
TAIL([Date].[Date - Calendar Month].[Calendar Month],2).Item(0)
)
SELECT
NON EMPTY
{
[Date].[Date - Calendar Month].[LastMth],
[Date].[Date - Calendar Month].[LastMth].PARENT
}
ON COLUMNS,
NON EMPTY
[Measures].[BillableIncome]
ON ROWS
FROM [ourCube]
我在脚本的第一行指定了计算成员的父级 - 因此我的成员LastMth将2013作为其父级,并且确定结果集将返回2013年以及上个月的总计。
如果我在第一行创建了它的父2012:
WITH
MEMBER [Date].[Date - Calendar Month].[Calendar Year].&[2012].[LastMth] AS
IIF(
...
...
......它并不担心我从(2013年)获得LastMth的地方,并按照指示使2012年成为父母 - 这种行为有些奇怪但可以理解。
以下内容为父级返回一个空集 - 我认为父级是[Date].[Date - Calendar Month].[(All)]
?什么是父母,我怎样才能揭露它的价值?
WITH
MEMBER [Date].[Date - Calendar Month].[LastMth] AS
IIF(
Day(Now()) = 1,
TAIL([Date].[Date - Calendar Month].[Calendar Month],2).Item(1),
TAIL([Date].[Date - Calendar Month].[Calendar Month],2).Item(0)
)
SELECT
NON EMPTY
{
[Date].[Date - Calendar Month].[LastMth],
[Date].[Date - Calendar Month].[LastMth].PARENT
}
ON COLUMNS,
NON EMPTY
[Measures].[BillableIncome]
ON ROWS
FROM [ourCube]
答案 0 :(得分:1)
如果您没有为计算成员说明父级,则会获得All
成员的兄弟,而不是其子级。
顺便说一句:我发现大多数客户端工具(包括Excel)不希望All
有兄弟姐妹,因此如果你create
计算脚本中的计算成员(而不是仅仅)在语句的WITH
子句中定义它,不显示这些,即使它们被指示显示计算成员。