个人日计算,在MDX中,具有事实表中的开始和结束日期

时间:2011-06-06 07:07:53

标签: date ssas mdx

我有一个ssas多维数据集,其事实表包含:

  • FactID
  • 状态
  • 开始日期
  • 结束日期

日期链接到日期维度(状态维度的状态)。

我试图获得一份报告,显示两周内每天状态的事实数量,例如:

         01 May 2011, 02 May 2011, 03 May 2011 etc...
status1          300          310          320    ...
status2          250          240          265    ...
status3          125          546          123    ...

我可以使用以下方法获取一天的数据:

select 
{
 [TOTAL NUMBER FACT]
} on 0  

,{
descendants([DIM STATUS].[STATUS DESCRIPTION])
} on 1
from [DW_CUBE]
WHERE   
([DIM HISTORY START DATE].[YEAR MONTH DAY].FirstMember:[DIM HISTORY START DATE].[YEAR MONTH DAY].&[20110501], 
 [DIM HISTORY END DATE].[YEAR MONTH DAY].&[20110501]:[DIM HISTORY END DATE].[YEAR MONTH DAY].LastMember)

但我能让这个工作超过一天吗?

非常感谢

1 个答案:

答案 0 :(得分:1)

查看以下链接:

http://www.bp-msbi.com/2010/10/avoiding-multiple-role-playing-date-dimensions/

http://cwebbbi.wordpress.com/2011/01/21/solving-the-events-in-progress-problem-in-mdx-part-1/

简而言之,您可以使用MDX通过LinkMember执行此操作,或者如果您正在计算正在进行的事件 - 从开始计算到现在,并从另一个事件中减去一个事件。

你也可以解决建模问题 - 在我的帖子中通过旋转和克里斯的角色扮演测量小组的后续行动。