根据两个选定的日期计算 Power BI 中的差异度量

问题描述 投票:0回答:1

目前我正在计算一个度量,它描述报告日期与所选报告日期前一天之间的值差异。这意味着,如果用户选择今天,则会显示该值的实际日期和昨天之间的差异。用户最多可以选择过去两年的报告日期。

价值差异计算如下:

diffValue = SUM(table2[value])-[yesterdayValue]

yesterdayValue
的计算方式如下:

yesterdayValue = 
var SelDate = SELECTEDVALUE(table1[valuationtime])
var PrevDate = CALCULATE(MAX(table1[valuationtime]), FILTER(ALL(table1), table1[valuationtime] < SelDate))
var result = CALCULATE(SUM(table2[value]), REMOVEFILTERS(table1[valuationtime]), table1[valuationtime] = PrevDate)
return result

这为我提供了随时预选的报告日期之间的每日差异。

现在我更愿意调整整个事情并给用户两个日期来选择。一方面是以前的报告日期,另一方面是参考日期(目前在我的计算中这是报告日期的前一天)。因此,用户面前将有两个日期选择,并收到报告日期和参考日期之间的值差。两个日期选择都访问表的同一列。

如何解决这个问题?

编辑:在这里您可以看到两个表以及它们如何连接:

表1:

表2具有相同的评估时间列。

powerbi dax powerquery data-transform
1个回答
0
投票

您将需要为第二个切片器准备一个单独的“日期”表。创建一个新的计算表:

table1 (ref) = 'table1'

决定是否需要向其他表添加任何关系,但不需要这样做

table2

那么有这些措施:

Report value = SUM(table2[value])


Reference value = 
  var refDate = MAX( 'table1 (ref)'[valuationtime] )
  return
    CALCULATE(
      [Report value],
      REMOVEFILTERS('table1'),
      'table2'[valuationtime] = refDate
    )


DiffValue = [Report value] - [Reference value])
© www.soinside.com 2019 - 2024. All rights reserved.