Power BI работа с фильтрами

Рейтинг: 0Ответов: 2Опубликовано: 24.05.2023

У меня есть слайсер на холсте через который можно настроить время(Иерархия: Год, квартал, месяц) и есть Гистограмма с данными которая показывает в разрезе месяц/год. И хотелось бы найти решение, через которое можно было бы смотреть данные на гистограмме за весь год, когда на слайсере выбран один месяц.

То есть я понимаю, что первоначально проверка идет на ISFILTER(Календарь(ДАТА).(Месяц)), но вот дальше затык. В Dax пытался и через ALL(ну и подобные), но он все равно выводит только те месяца(или месяц) который выбран на слайсере. Кто-нибудь знает решение такой проблемы? введите сюда описание изображения

Ответы

▲ 0Принят

Чтобы решить данную проблему посредством DAX нужно выполнить следующее:

  1. Создать дубликат таблицы календаря.

    Date for Filter = 'Календарь'

  2. Настроить отношения между новой таблицей и таблицей календаря как один ко многим и неактивное соединение.

  3. Создать новую меру для календаря, где первая переменная(Дата_1) будет определять последнюю дату из таблицы Календарь, вторая переменная(Дата_2) через DATEINPERIOD, будет рассчитывать даты в новой таблице относительно последней даты в календаре. В CALCULATE добавить функции - REMOVEFILTER для таблицы Календарь, KEEPFILTER для Дата_2 и USERRELATIONSHIP для свезя между таблицами.

В случае если вам нужно будет сделать это только когда включены месяца - Оберните эту функцию в IF для фильтра по месяцам(ISFILTER('Календарь'[Дата].[Mounth])) и при TRUE используете подход описанный выше, при FALSE используйте просто фильтр по таблице Календарь.

▲ 0

Вариант решения: При работе с Power BI есть такая - edit interactions(Изменить взаимодействие). Если воспользоваться ей - можно отвязать фильтр от необходимого графика. После чего, ввести новый срез с годами и привязать его к этому графику. Решение не является хорошей практикой, но может решить такую проблему.