Набор фильтров

Назначение

Набор фильтров - это невидимая компонента-контейнер, которая позволяет расположить внутри себя поля (Фильтры), с помощью которых будет происходить фильтрация и указать таблицу по которой будет происходить поиск.

Компонента Набор фильтров находится в разделе **Компоненты - Контейнеры -Набор фильтров

Свойства

Компонента имеет набор общих свойств и подгрузка данных по умолчанию. Ниже отображены свойства, специфичные только для данной компоненты.

Общие

Наименование свойства Назначение свойства Принимаемые значения
Фильтровать сразу позволяет установить условие по которому будет происходить применение фильтрации. Иными словами, можно задать условие по которому применение фильтра будет происходить после нажатия на кнопку фильтрации, либо динамически, после ввода данных в поле фильтрации.
  • Null - значение не определено
  • False - фильтр будет срабатывать только после нажатия на Кнопку для фильтрации - значение по умолчанию
  • True - фильтр будет срабатывать сразу после внесения изменения в поля фильтра.
Запоминать значения фильтра позволяет восстанавливать значения фильтров при возврате на страницу, т.е.запоминать значения фильтров (сохранять в кэше). При этом значение фильтра, заданное пользователем имеет приоритет над значением фильтра по умолчанию
  • значение не определено - по умолчанию
  • true - запоминать значения фильтров
  • false - не запоминать значения фильтров
Пропустить подгрузку данных (Skip initial loading) позволяет исключать подгрузку данных в таблицу без указания значений фильтров (пустыми фильтрами)
  • значение не определено - по умолчанию
  • true - исключает возможность подгрузки данных в таблицу без указания значений фильтров, т.е. при пустых значениях фильтров при первоначальном открытии страницы или по кнопке “Найти” запрос в базу данных (по Графу сущностей таблицы) выполняться не будет
  • false - позволяет подгружать данные в таблицу без указания значений фильтров, т.е. при первоначальном открытии страницы или по кнопке “Найти” будет осуществляться запрос в базу данных по пустым значениям фильтров
Шаблон текста при валидации позволяет задать шаблон вывода сообщения (текст сообщения), отображаемого в окне ошибки при валидации значений фильтров По умолчанию шаблон сообщения выставлен как:“#{label}: #{message}”, где параметры интерпретируются следующим образом: #{label} - наименование компоненты, в которой произошла ошибка #{message} -текст сообщения об ошибке Примеры возможной настройки: При пустом значений в поле* Message Validation Template* текст в окне об ошибке, отображаемом, например, при не заполнении значения в обязательном поле, будет отображаться по шаблону "#{label}: #{message}", где #{label} - наименование компоненты, в которой произошла ошибка (например, поле ФИО) #{message} - текст сообщения об ошибке (значение по умолчанию Поле обязательно).

Сохранение и загрузка значений в локальном хранилище

Система позволяет с помощью свойства filterValuesSaveStrategy сохранять значения полей фильтрации в локальном хранилище браузера. А с помощью свойства filterValuesLoadStrategy подставлять значения из локального хранилища браузера в поля фильтрации.

Время жизни определяется параметром filter_cleanup_interval_hours.

Если страница в контексте BPMN процесса, то сохранение/восстановление работает в рамках одного экземпляра процесса.

Сценарий 1. Необходимо подставлять предыдущее значение полей фильтрации при возврате на страницу.

Вариант решения: на странице в наборе фильтров (FilterGroup) задать filterValuesSaveStrategy = BY_PAGE_OBJECT_ID, filterValuesLoadStrategy = BY_PAGE_OBJECT_ID.

Сценарий 2. Необходимо подставить значений полей фильтрации из страницы 1 на страницу 2, при условии, что имена полей фильтрации и имя набора фильтров (FilterGroup) совпадают.

Вариант решения:

  1. На странице 1

  2. Значения полей фильтрации сохраняем в хранилище по имени объекта. Для этого задаём filterValuesSaveStrategy = BY_OBJECT_NAME.

  3. На странице 2

  4. Значения полей фильтрации берём из хранилища по имени объекта. Для этого задаём filterValuesLoadStrategy = BY_OBJECT_NAME.

Наименование свойства Назначение свойства Принимаемые значения
filterValuesLoadStrategy Стратегия загрузки значений вложенных компонент-фильтров - BY_PAGE_OBJECT_ID - Подгрузка значений фильтров по ключу = идентификатор страницы + идентификатор объекта + id процесса если это bpmn процесс
- BY_OBJECT_NAME - Подгрузка значений фильтров по ключу = имя объекта + id процесса если это bpmn процесс
- BY_CUSTOM_NAME - Подгрузка значений фильтров по ключу = ключ указанный в поле filterValuesLoadStorageName + id процесса если это bpmn процесс
filterValuesLoadStorageName ключ по которому необходимо загружать значения фильтров из локального хранилища
filterValuesSaveStrategy Стратегия сохранения значений вложенных компонент-фильтров - BY_PAGE_OBJECT_ID - сохранение значений фильтров по ключу = идентификатор страницы + идентификатор объекта + id процесса если это bpmn процесс
- BY_OBJECT_NAME - сохранение значений фильтров по ключу = имя объекта + id процесса если это bpmn процесс
- BY_CUSTOM_NAME - сохранение значений фильтров по ключу = ключ указанный в поле filterValuesSaveStorageName + id процесса если это bpmn процесс
filterValuesSaveStorageName ключ по которому необходимо сохранять значения фильтров в локальное хранилище

Функции

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

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

Вследствие технических особенностей реализации функций (-функции, которые выполняются удаленно на сервере приложений,- функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

Рекурсивно копировать составные объекты сложных компонент

TODO: описать

Определить права текущего пользователя

Определить права текущего пользователя

Определить роли текущего пользователя

Определить роли текущего пользователя

Методические рекомендации по применению

Часто задаваемые вопросы

Вопрос Ответ
В чем заключаться главная необходимость использования Набора фильтров? Главная необходимость заключается в задании таблицы к которой будет применяться фильтр. Таким образом мы можем наложить несколько фильтров на необходимую нам таблицу и выводить записи которые ищет пользователь.
Можно ли задавать несколько наборов фильтров на странице? Да, при условии что они будут обращаться к разным таблицам.