Функция фильтра в DAX не позволяет выполнять простые математические операции с датой - PullRequest
0 голосов
/ 06 июля 2018

Я пытаюсь вычислить значения неделя за неделей для продаж (GMS), передав параметр для даты выходных. В то время как продажи за текущую неделю рассчитываются правильно по следующей формуле:

Sales_CW = 
CALCULATE(SUM(Sales_Table[gms]), 
FILTER(Sales_Table,Sales_Table[weeks] = WEEKNUM(MAX(Query1[WeekendDate]))),
FILTER(Sales_Table,Sales_Table[year] = YEAR(MAX(Query1[WeekendDate])))) 

Следующая формула с -1 в первой ошибке:

Sales_LW = 
CALCULATE(SUM(Sales_Table[gms]), 
FILTER(Sales_Table,Sales_Table[weeks] = WEEKNUM(MAX(Query1[WeekendDate]))-1), 
FILTER(Sales_Table,Sales_Table[year] = YEAR(MAX(Query1[WeekendDate]))))

Причина, по которой я использую функцию FILTER, заключается в принятии значения параметра в определении меры. Я не понимаю, что здесь не так.

1 Ответ

0 голосов
/ 06 июля 2018

Попробуйте это:

Sales_LW = 
CALCULATE(SUM(Sales_Table[gms]), 
FILTER(Sales_Table,Sales_Table[weeks] = WEEKNUM(MAX(Query1[WeekendDate]))-1 &&
Sales_Table[year] = YEAR(MAX(Query1[WeekendDate])))
...