我有一个计算成员,我想通过YTD汇总一个度量。我还希望该措施能够在所有方面进行汇总。有一个维度值,我不想成为聚合的一部分。问题是,当我尝试过滤掉聚合时,不会在其他维度上滚动。
这样可以为[EK DIM OBJ KONTO]
维度中的所有值返回正确的值,并在所有维度上正常汇总:
Aggregate
(
YTD([DATUM D].[Period].CurrentMember)
,[Measures].[UTFALL V]
)
当我尝试添加EXCEPT
- 语句以排除[EK DIM OBJ KONTO]
维度中的一个值时,我得到了错误的结果。计算成员总是返回相同的答案,它没有注意到我试图用它切片的尺寸。
Aggregate
(
{YTD([DATUM D].[Period].CurrentMember)}
*
{
Except
(
[EK DIM OBJ KONTO].[KTOB2 ID].[KTOB2 ID]
,[EK DIM OBJ KONTO].[KTOB2 ID].&[-]
)
}
,[Measures].[UTFALL V]
)
答案 0 :(得分:0)
这违反了AdvWorks多维数据集,但似乎正在运行:
WITH
MEMBER [Measures].SumYtd AS
Aggregate
(
{YTD()}
,[Measures].[Internet Sales Amount]
)
MEMBER [Measures].SumException AS
Aggregate
(
{YTD()}
*
{
Except
(
[Customer].[Customer Geography].[Country].MEMBERS
,[Customer].[Customer Geography].[Country].&[United States]
)
}
,[Measures].[Internet Sales Amount]
)
SELECT
{
[Measures].[Internet Sales Amount]
,[Measures].SumException
,[Measures].SumYtd
} ON 0
,[Date].[Calendar].[Month].&[2007]&[11].Children ON 1
FROM [Adventure Works];