目前我正在计算一个度量,它描述报告日期与所选报告日期前一天之间的值差异。这意味着,如果用户选择今天,则会显示该值的实际日期和昨天之间的差异。用户最多可以选择过去两年的报告日期。
价值差异计算如下:
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具有相同的评估时间列。
您将需要为第二个切片器准备一个单独的“日期”表。创建一个新的计算表:
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])