这里是测试数据:
这是日期数据:
Dates = CALENDAR(date(2022,1,1),TODAY())
问题:即使日期切片器从前一年开始,创建一个显示当年 YTD 总额的度量:
这是我的代码:
YTD =
VAR minim = CALCULATE( MIN( Dates[Date]), ALLSELECTED(Dates[Date]))
var startyear = DATE(YEAR(TODAY()),1,1)
return if( minim >= startyear ,
calculate(sum(test[Totals] ), FILTER(Dates, Dates[Date] >= startyear)) ,
calculate(sum(test[Totals] ), FILTER(Dates, Dates[Date] >= startyear)) )
测试场景 1 工作正常:显示正确的信息, 日期切片器从 2022 年开始,并且度量显示当年的 YTD 结果
YTD 公式将帮助您获得正确的输出/结果。
YTD =
VAR minim = CALCULATE( MIN( Dates[Date]), ALLSELECTED(Dates[Date]))
VAR startyear = DATE(YEAR(TODAY()),1,1)
return if( minim >= startyear ,
CALCULATE(SUM(test[Totals]), test[Date] >= startyear, REMOVEFILTERS(Dates[Date])),
CALCULATE(SUM(test[Totals]), test[Date] >= startyear, REMOVEFILTERS(Dates[Date])) )
简单地说,您可以使用以下公式计算 YTD。
YTD = CALCULATE(SUM(test[Totals]), YEAR(test[Date]) = YEAR(TODAY()), REMOVEFILTERS(Dates[Date]))
而不是 AllSelected 更改为 All 因为所有选定的都保留切片器过滤器
YTD = TOTALYTD(sum(test[Totals]),all(Dates[Date]))