我是Power BI的新手,因此在Power BI报表中遇到此问题时,这些列的总计不会累加。非常感谢您的帮助,以下是公式
Rolling 3 Months =
CALCULATE (
SUM ( Deliveries[NetRevenue] ),
DATESBETWEEN (
Deliveries[DeliveryDate],
MAX ( Deliveries[DeliveryDate] ) - 90,
MAX ( Deliveries[DeliveryDate] )
)
)
Prior 3 Months =
CALCULATE (
SUM ( Deliveries[NetRevenue] ),
DATESBETWEEN (
Deliveries[DeliveryDate],
MAX ( Deliveries[DeliveryDate] ) - 180,
MAX ( Deliveries[DeliveryDate] ) - 90
)
)
结果截图
答案 0 :(得分:0)
这可能是因为MAX ( Deliveries[DeliveryDate] )
的每一行都不相同。
最大值是在本地过滤器上下文中求值的,而不是在整个Deliveries
表(或与您的过滤器设置匹配的表的子集)中求值。
我猜您可能想定义一个变量用作日期,而不是(可能)对矩阵的每一行进行不同的计算。例如
Prior 3 Months =
VAR LastDate =
CALCULATE ( MAX ( Deliveries[DeliveryDate] ), ALLSELECTED ( Deliveries ) )
RETURN
CALCULATE (
SUM ( Deliveries[NetRevenue] ),
DATESBETWEEN ( Deliveries[DeliveryDate], LastDate - 180, LastDate - 90 )
)
根据您的具体情况,您也许可以使用TODAY()
来代替LastDate
计算。