PowerBI DAX-在CALCULATE函数中将度量用作过滤器

时间:2019-10-24 10:22:42

标签: powerbi dax

我想在PowerBI中创建DAX度量标准,以提供特定日期的销售总额。 我需要该日期由日期切片器控制。特别是切片器上的最大日期。

我希望这是一个Calculate()函数。因此,如果对日期进行硬编码,则类似于以下内容。

=CALCULATE(SUM(FactInternetSales2[Sales]), DimDate2[Dim Date] = DATE(2018, 06, 18))

但是我需要从最大值动态填充Calculate()函数(即DimDate2 [Dim Date] = DATE(2018,06,18))的过滤器组件日期在日期切片器上。据我了解,但是度量不能用作计算函数中的过滤器-因此,我无法创建如下所示的度量以标识最大日期

=LASTDATE(DimDate2[Dim Date]) 

,然后在Calculate()函数(例如

)中使用它
=CALCULATE(SUM(FactInternetSales2[Sales]), DimDate2[Dim Date] = LASTDATE(DimDate2[Dim Date])

谁能概述我如何使用切片器中的最大日期来过滤Calculate()函数,或获得相同的结果?

我的工作文件副本位于此处 https://drive.google.com/file/d/1d1JiyPm1jOD9XkVqv3Q5pm0vk1FMotH9/view?usp=sharing

欢呼 史蒂夫

2 个答案:

答案 0 :(得分:2)

您可以将参数值读入变量。

SalesSum =
VAR EndDate = LASTDATE ( DimDate2[Dim Date] )
RETURN
    CALCULATE ( SUM ( FactInternetSales2[Sales] ), DimDate2[Dim Date] = EndDate )

答案 1 :(得分:0)

您可以将Calculate()函数与这样的过滤器一起使用:

=CALCULATE(SUM(Table1[SalesValue]), FILTER(Table1, Table1[Year] = 2019))

要从切片器获取值,请转到Modeling > New Parameter。您可以在此处指定参数需求,然后点击OK。现在,您可以在字段窗格中为此参数添加一个新的表和列。现在只需在本专栏中使用以下代码进行引用:

=SELECTEDVALUE(ParameterTable[ParameterValue])