我在Azure分析模型中有一些表,如下所示。我正在使用PowerBI编写一些措施。
DimProducts
+-----------------+--------+
| ProductId | Name |
+-----------------+--------+
| 1 | p1 |
| 2 | p2 |
| 3 | p3 |
| 4 | p4 |
| 5 | p5 |
| 6 | ` p7 |
+-----------------+--------+
FactSales
+-----------+-------------+----------+
| ProductId | Date | Quantity |
+-----------+-------------+----------+
| 1 | 2016-02-01 | 1 |
| 1 | 2016-02-01 | 5 |
| 1 | 2016-02-05 | 7 |
| 2 | 2016-02-05 | 7 |
| 2 | 2016-02-08 | 10 |
+-----------+-------------+----------+
我需要找到销售总额。 我需要在过滤器外部找到最大日期的售出数量总和。例如,日期过滤器为2016-02-08。 该过滤器下方的最大日期是2016-05-02,产品编号2的总数量是7(实际上是销售表的第四行)。 我该如何为此制定措施?
答案 0 :(得分:0)
计算所选日期之前的最大日期,然后使用该日期替换CALCULATE
中的过滤器上下文。
MaxDateSum =
VAR SelectedDate = MAX ( FactSales[Date] )
VAR MaxDate =
CALCULATE (
MAX ( FactSales[Date] ),
FILTER ( ALL ( FactSales[Date] ), FactSales[Date] < SelectedDate )
)
RETURN
CALCULATE ( SUM ( FactSales[Quantity] ), FactSales[Date] = MaxDate )