我正在尝试在我的PowerPivot工作簿中应用一些时间智能功能,这些功能涉及项目和收到的资金。我有三个相关的表格;事项,付款和日期表。
每个问题都有一个creationDate和一个closureDate(来自链接表)。同样,每笔付款都有一个日期。我的报告设置不错,但我现在正试图使用时间智能来更清楚地过滤这一点。
如何设置PowerPivot数据透视表,以便显示的唯一事项是所选时段内存在的事项。例如如果我选择2014年的切片机,我不想展示在2015年创建的事件,或者在2013年关闭的事件。该事项应该在指定的时间段内处于活动状态。
这可能吗?
答案 0 :(得分:1)
除了您正在查看的日期范围的上限或ClosureDate在您正在查看的日期范围的下限之前,您希望显示所有事项,除非创建日期超出您所查看的日期范围的上限。
假设你有这样的数据结构,左边的表是事项,右边的是付款:
如果您有一个名为[总付款]的计算字段,只是将付款表中的所有付款相加,那么类似于此的公式就可以使用: -
[Payment in Range]:=IF(OR(MIN(Matters[Creation Date])>MAX('Reporting Dates'[Date]),MAX(Matters[Closure Date])<MIN('Reporting Dates'[Date])),BLANK(),[Total Payments])
以下是在时间轴中选择一个月的结果:
或者在年份切片机中选择了一年:
注意:在我的示例中,我使用了断开连接的日期表。
此外,您将看到Grand Total将所有付款加起来,因为它占所有创建日期中的最低值,并且是所有关闭日期中最高的,以确定是否显示总付款值。如果Grand Total正确显示非常重要,则需要采取额外措施:
[Fixed Totals Payment in Range]:=IF(COUNTROWS(VALUES(Matters[Matter]))=1,[Payment in Range],SUMX(VALUES(Matters[Matter]),[Payment in Range]))
使用此新度量替换数据透视表中的[范围内付款],并且总计将正确显示,但是,这仅在Matters [Matter]用作数据透视表中的某个字段时才有效。
答案 1 :(得分:0)
使用过滤器&amp;计算功能。
所以,如果你要汇总付款,那就好像......
2014年付款:=计算(合并([付款]),日期表[年] = 2014年)
Sum函数需要全部付款和&amp;过滤功能仅根据连接到您的日期表的数据捕获2014年的付款。