2016-08-22 51 views
0

我有一个事实表壳体不同粒度(日期谷物)OBIEE YTD问题

  1. 每月

  2. 每日

的月份的数据可以由通过端过滤进行访问月份日期或使用YYYYMM日期格式。在OBIEE RPD repo中,事实被设置为LAST Aggregation。

我想执行年至日分析。我只想总结月结束日期。

使用功能TODATE(测量),它往往通过了我想YTD忽略50,并返回400月e.grain

Date   Amount YTD TODate(Amount) 
31/01/2106  100  100 
28/02/2016  200  300 
14/03/2016  50  350* 
31/03/2016  100  450 

总结了所有的数据,所以也可以是任何其他日期落在在任何一个月内。如果我选择14/03/2016我想要350返回。

谢谢。

+0

你能编辑基础表/ RPD吗?有些LTS工作你应该这样做会为你做到这一点/加快性能。 –

+0

感谢您的回复。是的,我可以编辑基础表和RPD ...请帮助确定LTS工作..谢谢。 – Abacus

回答

0

改变表格添加一个标记,如果记录位于指定的每月颗粒上,则标记为Y;如果记录不在指定的每月颗粒上,则表示N

在逻辑层中,创建两个截然不同的LTSs,并在Y的标志上进行第一次过滤。这将是您计算和获取所有迄今为止措施的地方。第二个LTS可以过滤到N,或者可以留给所有数据,具体取决于您想要用它做什么。

性能增加应该来自这样一个事实,即您每月生成的每月度量值只会触及标记为月份的记录,并会绕过所有其他不相关的数据。因此,如果用户只运行报告询问每月度量,则查询将自动过滤到该特定数据。

如果用户在同一个报表上选择了您的日期度量和特定日期度量,会发生什么情况,OBIEE应该根据公共维度激发两个单独的查询以获取数据并缝合在一起。

有人可以在前端创建这个吗?大概。你将不得不做一些PERIODROLLING函数,并告诉它在月份级别进行汇总,但恐怕它可能仍然会将这些日子变成比预期更大的数字。 A TODATE功能在这里不起作用。