我有一个维度为CreatedOn(时间类型)且度量为IssueOpened的多维数据集。我需要获得IssueOpened的累计金额。
例如:
2009 IssueOpened=7 OpenedOnTheEndOfPeriod=7
2010 IssueOpened=12 OpenedOnTheEndOfPeriod=19
2011 IssueOpened=2 OpenedOnTheEndOfPeriod=21
所以,我创建了计算成员:
sum([CreatedOn].[Y-Q-M].currentmember.level.members(0):[CreatedOn].[Y-Q-M].currentmember.prevmember, Measures.[IssueOpened])
但它看起来不像我想要的那样工作。维度开始:
在维度的最后看起来像是一个真相:
可能是Time维度第一个成员的错误?我需要修复什么来获得所需的结果?
答案 0 :(得分:1)
你有没有看过http://www.ssas-info.com/analysis-services-articles/62-design/367-inventory-management-calculations-in-sql-server-analysis-services-2005-by-richard-tkachuk。如果你想尝试像你一样的事情,这是必读的。
要计算一个总计,你应该使用这样一个成员:
set Q as Nonempty( Order( [CreatedOn].[Y-Q-M].Members,[Measures].[IssueOpened], ASC )
,[Measures].[IssueOpened] )
Member [Measures].[RunningTotal] as Sum(
Head( Q, ( [Measures].[Level], [CreatedOn].[Y-Q-M].CurrentMember ) )
,[Measures].[IssueOpened] )