Месяцы на сегодняшний день формула не работает должным образом на Power Bi
Я новичок в Power Bi. Я рассчитываю месяцы до даты меры.
Я написал следующую формулу DAX для этого,
MTD in Sales = CALCULATE([Total Sales], DATESMTD(Dates[Date]) )
это показывает мне правильную общую стоимость продаж в этом месяце. Но когда я делаю день, это показывает мне некоторую нереальную ценность.
Я приложил скриншоты моего результата.. Пожалуйста, посмотрите.
Я не понимаю, что не так происходит? Можете ли вы выяснить проблему, плз?
1 ответ
DATESMTD(Dates[Date])
эквивалентно:
CALCULATETABLE(
FILTER(
ALL(Dates[Date]),
AND(
Dates[Date] <= MAX(Dates[Date]),
AND (
YEAR(Dates[Date]) = YEAR(MAX(Dates[Date])),
MONTH(Dates[Date]) = MONTH(MAX(Dates[Date]))
)
)
)
)
При этом учитывается только максимальное значение дат во внешнем контексте фильтра, поэтому для Tuesday
(сегодня), он будет содержать каждый день месяца до сегодняшнего дня, для Monday
(вчера) будет содержать каждый день месяца до вчерашнего дня и так далее. (Предполагая, что никакие продажи не связаны с будущими датами).
Если вы хотите дополнительно отфильтровать это, чтобы включить только продажи, которые произошли в данный день недели, я бы предложил изменить MTD in Sales
чтобы:
[MTD in Sales] := CALCULATE([Total Sales], DATESMTD(Dates[Date]), Dates[DayOfWeekName])
Это дополнительно отфильтрует включенные даты только с DayOfWeekName
значения, присутствующие в контексте внешнего фильтра.