在筛选器上下文之外计算值 - Powerbi



我在 Azure 分析模型中有几个表,如下所示。我正在使用PowerBI编写一些度量值。

暗淡产品

+-----------------+--------+
| ProductId       | Name   |
+-----------------+--------+
|               1 |     p1 |
|               2 |     p2 |
|               3 |     p3 |
|               4 |     p4 |
|               5 |     p5 |
|               6 | `   p7 |
+-----------------+--------+

事实销售

+-----------+-------------+----------+
| 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,产品 id 2 的总和数量为 7(实际销售表中的第 4 行(。 我怎么能为此编写度量值?

计算所选日期之前的最大日期,然后使用它替换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 )

最新更新