Страницы: 1
RSS
Power BI Подсчет количества ячеек с фильтрацией по дате, Power BI Подсчет количества ячеек с фильтрацией по дате
 
Добрый день всем! Хотел бы обратиться за советом в решении вопроса, так как своих свежих знаний в DAX пока не хватает. Для описания привожу пример по имитации работы с реальными данными. Создаю индикатор датчик для сопоставления количества план и факт. По плану 3 позиции и мера План считается корректно.
По факту есть данные запасам на разную дату. В меру необходимо подтянуть данные на последнюю дату, т.е. на 1-е апреля, которые составляют 2 позиции. С любыми моими попытками мера по факту считает одинаково и результат 6 позиций. Спасибо заранее за любые полезные советы и ссылки :)

Итого Кол-во План = CALCULATE(COUNT('Эксперимент_Датчик'[Количество]);FILTER('Эксперимент_Датчик';'Эксперимент_Датчик'[Статус План-Факт]="План"))

Итого Кол-во Факт = CALCULATE(COUNT('Эксперимент_Датчик'[Количество]);FILTER('Эксперимент_Датчик';'Эксперимент_Датчик'[Запасы на дату]=LASTDATE('Эксперимент_Датчик'[Запасы на дату].[Date])))

МероприятиеТМЦЕИКоличествоСтатус План-ФактЗапасы на дату
1КР тапокТапкиШТ1План
2КР тапокПодошваШТ2План
3КР тапокНитьМ10План
4КР тапокТапкиШТ1Факт1 марта 2020 г.
5КР тапокПодошваШТФакт1 марта 2020 г.
6КР тапокНитьМФакт1 марта 2020 г.
4КР тапокТапкиШТ1Факт1 апреля 2020 г.
5КР тапокПодошваШТ2Факт1 апреля 2020 г.
6КР тапокНитьМФакт1 апреля 2020 г.
 
вы бы файл приложили...
Код
=VAR last = LASTDATE('Таблица1'[Запасы на дату])
   RETURN
   CALCULATE(
      COUNT('Таблица1'[Количество]);
      FILTER('Таблица1';'Таблица1'[Запасы на дату]=last)
      )
   
Изменено: buchlotnik - 10.04.2020 08:59:18
Соблюдение правил форума не освобождает от модераторского произвола
 
Добрый день! Извиняюсь, не догадался как-то. Внес Вами предложенное решение в свой пример - все работает. Спасибо большое за помощь:) Изменил в файле и прикладываю. Если можно, хотел попросить пояснить, что было неверно в моем варианте. Логика одинаковая, но тем не менее моя мера не работала.  
Изменено: nik.tacheev - 11.04.2020 11:04:35
 
В вашем примере последняя дата , это дата контекста строки по которой вы пытаетесь отфильтровать таблицу. Соответственно каждая позиция получает сою же максимальную дату. В правильном примере выбирается максимальная дата от всей таблицы, не зависимо от контекста строки и фильтра.
только обратите внимание, что если у вас будут разные даты для разного типа ТМЦ (например 1 и 2 апреля), то мера вернёт только то что будет соответствовать 2 апреля.  
 
Спасибо за пояснение. Так и должно работать, по последней дате. Запасы формируются одним списком на определенную дату.
 
Цитата
DrillPipe написал:
не зависимо от контекста строки и фильтра
ну все же только от контекста строки, чтобы независимо от фильтра надо
Код
 last = LASTDATE(ALL('Эксперимент_Датчик'[Запасы на дату]))
Изменено: buchlotnik - 11.04.2020 13:39:02
Соблюдение правил форума не освобождает от модераторского произвола
 
buchlotnik,
спасибо поторопился с ответом...
Страницы: 1
Наверх