Контейнер с фильтрами - Публичная база знаний Modus
Показать оглавление

Для применения фильтров в отчёте предусмотрено два способа:
- Боковая панель фильтров — вызывается кнопкой «Открыть панель фильтров» (иконка воронки) и отображается в правой части экрана. Подходит для временной фильтрации без изменения макета отчёта.
- Компонент «Контейнер с фильтрами» — визуальный компонент, размещаемый непосредственно на холсте отчёта. Обеспечивает наглядное управление фильтрами и индикацию выбранных значений прямо в теле отчёта.

Либо разместите контейнеры с фильтрами непосредственно в самом отчете, что более наглядно и удобно для управления и индикации значений фильтров.

Чтобы добавить компонент «Фильтр» в отчет:
- Добавьте новый визуальный компонент в отчет.
- Выберите тип отображения компонента «Контейнер с фильтрами»
- Настройте работу компонента «Контейнер с фильтрами».
Для настройки работы компонента «Контейнер с фильтрами» на полке «Фильтры» внутри компонента расположите поле из набора данных, по значению которого будут фильтроваться данные других компонентов отчета.

Один «Контейнер с фильтрами» может содержать одно или несколько полей, по которым будет производиться фильтрация. Чтобы контейнер отображал несколько фильтров, все соответствующие поля разместите на полке «Фильтры».
Раздел настройки
Переключатель «Автообновление» — при включении переключателя производится автообновление компонента, по умолчанию «ВЫКЛ».
![]()
Раздел «Общие настройки»
В разделе «Общие настройки» установите отступы контейнера с фильтрами, а также выберите отображаемый формат даты (например, «ДД.ММ.ГГГГ», «Месяц», «чч:мм» и т.д.), если поле фильтра имеет формат даты.

Выберите при необходимости цвет фона фильтра.
Раздел «Настройки отображения»
В разделе «Настройка отображения» выберите один из следующих типов отображения фильтра:

«Список значений» (используется по умолчанию)

Настройки для фильтров типа «Список значений» в разделе «Настройки отображения»:

- «Скрывать заголовок» — включенный переключатель позволяет скрыть заголовок фильтра;
- «Ширина заголовка (%)» — укажите ширину заголовка в процентах;
- «Множественный выбор» — включенный переключатель позволяет настроить выбор нескольких значений фильтра;
- «Инвертированный фильтр» — включите переключатель для настройки условия ИСКЛЮЧАТЬ, что соответствует конструкции NOT IN в SQL-запросе. При этом в заголовке фильтра выводится символ «≠», а в списке элементов - «❌»;

- «Добавить переключатель инвертированного фильтра» — включенный переключатель позволяет добавить кнопку «Убрать инвертирование», с помощью которого можно выбирать обычный или инвертированный режим фильтра;

- «Очищать выбор» — при включении этого переключателя в начале списка появится пункт «Очистить выбор»;

- «Режим поиска без лимита» — включение переключателя снимает ограничения на количество уникальных значений, получаемых из набора данных при заполнении фильтра (по умолчанию — фильтр заполняется первыми 5000 строк и поиск осуществляется по этим значениям). Этот режим предназначен для ввода пользователем значения подстроки и поиска подходящих значений по всем значениям поля;
- «Количество символов для активации режима» — Опция доступна при включенной настройке «Режим поиска без лимита». Введите значение N, поиск по подстроке включается после ввода пользователем >=N символов.
- «Не загружать значения» — при включении переключателя фильтр не заполняется значениями, а ожидает ввода пользователем строки поиска;
- «Скрывать пустые строки» — включенный переключатель позволяет не выводить в список фильтра пустые строки, если они есть в данных;
- «Выбранные опции наверху» — при включенным переключателе выбранные значения отображаются в начале списка. На примере ниже значение «Кресло» и «Стол приставной» до выбора находились ниже, но из-за установленного чекбокса отображаются наверху;

- «Обновлять после сворачивания» — включенный переключатель позволяет обновлять визуальные представления не сразу, а после сворачивания выпадающего списка значений фильтра;
- «Обновлять после применения» — включенный переключатель отобразит кнопку «Применить» в выпадающем списке;

- «Блокировать ручной ввод даты» — при включении этого переключателя для поля типа «Дата» возможно будет выбирать дату только из календаря, чтобы избежать ввода пользователем ошибочных (не существующих) значений вручную.
«Чекбоксы» — контейнер со всеми значениями фильтра в виде галочек

Настройки для фильтров типа «Чекбоксы» в разделе «Настройки отображения»:

- «Ширина колонки» — установите значение для ширины колонки фильтра;
- «Множественный выбор» — включённый переключатель позволяет выбирать несколько значений одновременно. При активации данной опции переключатель «Очищать выбор» включается автоматически;
- «Очищать выбор» — при включении этого переключателя отобразиться кнопка для очищения выбора.
«Слайдер» — фильтр с отображением дискретных значений в диапазоне «от» и «до»

Настройки для фильтров типа «Слайдер» в разделе «Настройки отображения»:

- «Сброс» — переключатель позволяет включить или отключить функцию сброса значений зависимого фильтра при изменении значений фильтра-родителя.
- «Значение сброса» — опция работает при включенной настройке «Сброс». При изменении настройки фильтра-родителя будут сброшены значения зависимого фильтра и либо не выбрано значение (вариант «все значения»), либо установлено минимальное (первое в списке по возрастанию) из подходящих значений (этот вариант используется, если в фильтре обязательно должно быть установлено какое-то значение).
- «Заголовок» — введите заголовок слайдера;
- «Скрывать заголовок» — при включенном переключателе заголовок не будет отображаться;
- «Число опций» — выберите ограничение максимального количества шагов из выпадающего списка;
- «Отображать шаги» — включенный переключатель позволяет отображать шаги на фильтре. Данным типом фильтра возможно управлять с помощью стрелок клавиатуры.
![]()
«Период» — фильтр по диапазону
Настройки для фильтров типа «Период» в разделе «Настройки отображения»:

- «Скрывать заголовок» — при включении данного переключателя заголовок фильтра не отображается, как показано на рисунке ниже;

- «Ширина заголовка (%)» — установите значение ширины заголовка в процентах относительно ширины экрана;
- «Блокировать ручной ввод даты» — при включении переключателя будет невозможен ввод даты с клавиатуры.

«Кнопки» — контейнер со значениями фильтра в виде кнопок / областей

Настройки для фильтров типа «Кнопки» в разделе «Настройки отображения»:

- «Ширина колонки» — установите значение для ширины колонки фильтра;
- «Множественный выбор» — включённый переключатель позволяет выбирать несколько значений одновременно. При активации данной опции переключатель «Очищать выбор» включается автоматически;
- «Очищать выбор» — при включении этого переключателя отобразиться кнопка для очищения выбора.
«По двум датам» — позволяет задать два независимых условия фильтрации по полям типа «Дата»
В типе «По двум датам» первое условие — по точному значению даты (равенство), второе — по диапазону (границы «от» и «до»). В отличие от типа «Период», который задаёт единый непрерывный диапазон, тип «По двум датам» позволяет комбинировать разные логики фильтрации для каждого из двух условий независимо.
![]()
Настройки для фильтров типа «По двум датам» в разделе «Настройки отображения»:

- «Блокировать ручной ввод даты» — при включении переключателя для поля типа «Дата», будет доступен выбор даты только из календаря.
Раздел «Значения»
Поле «Тип фильтра» — выпадающий список (с возможностью выбора), пользователь может выбрать один из типов фильтра:
- «По значению» — тип фильтра, при котором отбор данных происходит на основе точного совпадения с одним или несколькими выбранными значениями;
- «По диапазону» — тип фильтра, при котором отбор данных происходит на основе условия попадания значения поля в заданный интервал. Используются операторы сравнения: «больше», «меньше», «между» и т.д. Поддерживает как фиксированные, так и динамические даты;
- «По сравнению» — тип фильтра, который позволяет отбирать данные на основе сравнения двух выбранных полей в рамках одной записи. В интерфейсе отображаются два выпадающих списка для выбора полей. Фильтр оставляет записи, в которых значения этих полей удовлетворяют условию равенства.

Фильтры с типом: «По значению» и «По сравнению» не имеют дополнительных настроек.
При выборе типа фильтра «По диапазону», реализована возможность настройки выполнения «Условия 1» и/или «Условия 2», а также логики выполнения условий (<, >, =, ~ и т.д.).
Также введён дополнительный переключатель логики взаимодействия между условиями:
- «И» (выполняется только если выполняются оба условия);
- «ИЛИ» (выполняется, если выполняется хотя бы одно из условий).

Примечание — Начиная с версии 3.13.9 для полей типа «Дата», при выборе типа фильтра «По диапазону» и режимом «Произвольный диапазон» реализована возможность независимой настройки динамического вычисления дат для каждой границы диапазона (Условие 1 и Условие 2). Подробнее см. раздел «Динамические даты для диапазонного фильтра».

Обратите внимание! Изменения интерфейса:
- Поле «Автодата» переименовано в «Режим».
- Значение «-» переименовано в «Произвольный диапазон».
Контейнер с фильтрами также может служить в виде кнопки «Применить» — аналогом кнопки на панели общих фильтров, подробнее см. раздел «Общие фильтры и категории», которая может быть размещена прямо в отчёте.
Настройка «Обязательный фильтр»
Начиная с версии 3.14.21 Modus BI в раздел «Значения» добавлен флаг «Обязательный», по умолчанию «ВЫКЛ».

При включении флага «Обязательный», фильтр становится обязательным для заполнения — данные в отчёте не будут загружены, пока пользователь не выберет значение.

Визуально обязательный фильтр обозначается иконкой «звёздочки»:
- «*» красного цвета — фильтр не заполнен, при наведении курсора отображается подсказка;

- «*» черного цвета — фильтр заполнен, при наведении курсора отображается подсказка.

Множественный выбор
Если для фильтра одновременно включена настройка «Множественный выбор» и «Обязательный», отображается дополнительное поле «Ограничение по количеству элементов», по умолчанию значение «0» (то есть отсутствие ограничений).

Аналитик может задать максимальное количество значений, которые пользователь сможет выбрать. При попытке пользователя выбрать большее количество значений, система блокирует действие и показывает уведомление: «Невозможно выбрать больше, чем N элементов».

Для обязательных фильтров с множественным выбором опция «Выбрать всё» автоматически скрывается.
Данный функционал также доступен для боковой панели фильтров, все настройки и логика работы аналогичны описанным в текущем разделе.

Раздел «Кнопка «Применить»
Для того чтобы сделать из контейнера с фильтрами кнопку «Применить», войдите в режиме конструктора в настройки контейнера с фильтрами. В разделе «Кнопка «Применить» установите переключатель в режим «Вкл.»/«Выкл.». Настройте параметры:

- «Подпись» — заполните подпись кнопки;
- «Цвет фона» — выберите цвет фона кнопки;
- «Цвет текста» — выберите цвет текста кнопки.
Настройка поля фильтра
Настройте имя фильтра, нажав на стрелку вниз на пилюле (кнопка «Настройки») необходимого поля данных на полке фильтров:

- «Имя поля» — введите произвольное имя фильтра для выбранного поля;
- «Имя по другому полю» — позволяет отображать значения фильтра по другому полю данных;
- «Подсказка по другому полю» — позволяет выбрать поле, по которому будет выводиться подсказка;
- «Производный фильтр» — переключатель позволяет включать или выключать опцию производного фильтра, подробнее см. раздел «Настройка и использование производного фильтра»;
- «Поле производного фильтра» — выберите то поле, в котором содержатся все значения каждого уровня иерархии из цепочки, т.е. все разделённые значения из спискового поля;
- «Списковое поле» — выберите неразделённое поле цепочки, в котором будет произведён поиск по выбранному фильтру;
- «Уровень отбора» — определяет, на каком уровне многоуровневого SQL-запроса сработает фильтрация внутри визуального компонента:
- Уровень отбора настраивается как в «Контейнере с фильтрами», так и для каждого поля на полке «Фильтры» внутри визуального компонента.
- Поддерживается два уровня:
|
Уровень отбора |
Описание |
Влияние |
|---|---|---|
|
Нулевой (базовый) |
Все фильтры по умолчанию имеют нулевой уровень отбора. |
Влияет на все значения компонента, вне зависимости от их уровня вычисления |
|
Первый (дополнительный) |
Настраивается вручную |
Влияет только на значения компонента с соответствующим уровнем вычисления = 1 |