SSAS 2008R2 MDX脚本
我对mdx脚本有一个问题,我试图使用SUM函数聚合两个集合 基本上,我有2个计算成员,将给我的日期范围窗口 mdx脚本中的成员如下所示:SSAS 2008R2 MDX脚本,ssas,mdx,Ssas,Mdx,我对mdx脚本有一个问题,我试图使用SUM函数聚合两个集合 基本上,我有2个计算成员,将给我的日期范围窗口 mdx脚本中的成员如下所示: CREATE MEMBER CURRENTCUBE.[Measures].[NumberOfWeeksInPeriodLY] AS COUNT(DESCENDANTS([Date].[Retail Calendar].CurrentMember.Lag(2),3),INCLUDEEMPTY)-1; // This one will give me 15
CREATE MEMBER CURRENTCUBE.[Measures].[NumberOfWeeksInPeriodLY] AS
COUNT(DESCENDANTS([Date].[Retail Calendar].CurrentMember.Lag(2),3),INCLUDEEMPTY)-1;
// This one will give me 15
CREATE MEMBER CURRENTCUBE.[Measures].[StartingWeekLY] AS
(DESCENDANTS([Date].[Retail Calendar].CurrentMember.Lag(2),3)).Item(0).Member_Key;
//This one will give me 130;
CREATE MEMBER CURRENTCUBE.[Measures].[EndingWeekLY] AS
Cint([Measures].[StartingWeekLY]+[Measures].[NumberOfWeeksInPeriodLY]); //This will give me 145
我想做的是:
在MDX脚本中,我有:
SCOPE([Date].[Retail Calendar].[Retail Semester].MEMBERS);
[Date Analysis - Retail Calendar].[Test53Weeks] =
SUM(
{
(
DESCENDANTS
(
[Date].[Retail Calendar].CurrentMember,3
)
.Item(1).Lag(53)
)
:
[Date].[Retail Calendar].[Retail Week].**Item([Measures].[EndingWeekLY]))**
}
,[Date Analysis - Retail Calendar].[Current Time Period]
);
END SCOPE;
如果我在[Date].[Retail Calendar].[Retail Week]对值进行硬编码,项目(145)
它起作用了,但是我得到了正确的聚合
如果我使用[Date].[Retail Calendar].[Retail Week].Item([Measures].[EndingWeekLY]),
即使计算成员([Measures].[EndingWeekLY])
确实包含145的值,我得到了整个等级的加成
到目前为止,我已经尝试了strotmember、strotuple和strotset函数,我还尝试显式地将相同的结果转换为int(CInt(([Measures].[EndingWeekLY])
有没有想过赫克错在哪里
谢谢
瑞克