PowerPivot在列中滚动总计

时间:2017-03-23 17:37:03

标签: powerpivot dax subtotal

我被要求查看事件的响应和解决时间。不幸的是,我们现有的工具在这方面没有帮助。以下是2张门票的数据摘录:

y = foreach x generate CONCAT('00',(chararray)val1);

该工具仅表示票证不在SLA中,这归因于团队关闭票证,即使他们不是负责延迟的人。

理想情况下,我正在尝试为RowTotal旁边的每个事件获取一个正在运行的总列:

Incident_Id | Status           |Begin_Time        |End_Time          | RowTotal
------------|------------------|------------------|------------------|--------
IM3415346   | Open             | 10/03/2017 11:20 | 10/03/2017 11:33 | 787
IM3415346   | Work In Progress | 10/03/2017 11:33 | 10/03/2017 11:55 | 1325
IM3415346   | Work In Progress | 10/03/2017 11:55 | 10/03/2017 13:20 | 5099
IM3415346   | Work In Progress | 10/03/2017 13:20 | 10/03/2017 13:56 | 2133
IM3415346   | Closed           | 10/03/2017 13:56 | 10/03/2017 13:56 | 0
IM3415483   | Open         | 10/03/2017 12:30 | 10/03/2017 12:39 | 530
IM3415483   | Work In Progress | 10/03/2017 12:39 | 10/03/2017 12:53 | 848
IM3415483   | Work In Progress | 10/03/2017 12:53 | 10/03/2017 14:10 | 4579
IM3415483   | Work In Progress | 10/03/2017 14:10 | 10/03/2017 14:30 | 1199
IM3415483   | Work In Progress | 10/03/2017 14:30 | 10/03/2017 16:55 | 8700
IM3415483   | Closed           | 10/03/2017 16:55 | 10/03/2017 16:55 | 0

我已经看到如何使累积总数依次累计每个事件......

RowTotal | RunningTotal |
---------|--------------|
787      | 786          |
1325     | 2111         |
5099     | 7210         |
2133     | 9343         |
0        | 9343         |
530      | 530          |
848      | 1377         |
4579     | 5956         |
1199     | 7155         |
8700     | 15855        |
0        | 15855        |

但我真的在努力应对这种全面的方法。有没有人可能曾经遇到过这个问题?

1 个答案:

答案 0 :(得分:0)

我无法在提供的数据中看到TotalSeconds,因此我只是使用RowTotal来说明。请随意更改以适应您的确切用例。

RunningTotal = 
CALCULATE(
    SUM(Query[RowTotal]),
    FILTER(
        Query,
        Query[Incident_Id] = EARLIER(Query[Incident_Id]) &&
        Query[Begin_Time] <= EARLIER(Query[Begin_Time])
    )
)

您错过了FILTER函数,以使行上下文正常工作。您还需要在Begin_Time上添加一个过滤器,以便它只会记录上一次记录的时间,而不是事件中的所有行。

取决于您可能需要在StatusEnd_Time上添加过滤器的业务逻辑,但这超出了讨论范围。

结果:

result