Типичный фильтр выглядит следующим образом:
По умолчанию, компонент находится в режиме быстрой фильтрации. Это означает, что пользователь может добавить набор условий для однократного поиска данных. После закрытия экрана просмотра экземпляров сущности условия будут удалены.
Для того чтобы создать быстрый фильтр, нажмите на ссылку
. Отобразится экран выбора условий:Рассмотрим возможные типы условий:
-
Properties (Атрибуты) – атрибуты данной сущности и связанных с ней сущностей. Отображаются персистентные атрибуты, явно заданные в элементе
property
XML-описателя фильтра, либо соответствующие правилам, указанным в элементеproperties
(см. ниже). -
Custom conditions (Специальные условия) – условия, заданные разработчиком в элементах
custom
XML-описателя фильтра. -
Create new (Создать новое) – позволяет создать новое произвольное условие на JPQL. Данный пункт доступен пользователю, если у него есть специфическое разрешение
cuba.gui.filter.customConditions
.
Выбранные условия отображаются в верхней части панель фильтра. Рядом с каждым условием находится кнопка , позволяющая удалить их из набора.
Быстрый фильтр можно сохранить для повторного использования в дальнейшем. Для этого нажмите на кнопку настроек фильтра и выберите
. Во всплывающем окне задайте имя нового фильтра:Фильтр будет сохранен в выпадающем меню кнопки
.Пункт меню
позволяет сбросить все текущие условия поиска.Кнопка настроек фильтра содержит выпадающий список опций для управления фильтром:
-
– сохранить изменения в текущем фильтре.
-
– сохранить фильтр под новым именем.
-
– открыть редактор фильтра (см. ниже).
-
– установить фильтр по умолчанию для данного экрана. Фильтр будет автоматически выводиться на панель при каждом открытии экрана.
-
– удалить текущий фильтр.
- – использовать результаты последнего поиска для последовательной фильтрации данных (см.
-
папку поиска на основе текущего фильтра.
– создать -
папку приложения на основе текущего фильтра. Эта опция доступна только пользователям со специфическим разрешением
– создатьcuba.gui.appFolder.global
.
Опция
открывает редактор фильтра, который дает возможность расширенной настройки текущего фильтра:Название фильтра указывается в поле Filter name (Имя фильтра). Это имя будет отображаться в списке доступных фильтров для текущего экрана.
Фильтр можно сделать global (то есть доступным для всех пользователей) с помощью установки флажка Available for all users (Общий) для всех пользователей, или установить текущий фильтр в качестве фильтра по умолчанию с помощью установки флажка Default (По умолчанию).
В дереве содержатся условия фильтра. Условия можно добавлять с помощью кнопки
менять местами при помощи кнопок / или удалять с помощью кнопки .Группировку условий по И или ИЛИ можно добавить с помощью соответствующих кнопок. Все добавленные на верхний уровень (то есть без явной группировки) условия объединяются по И.
При выборе условия в дереве в правой части редактора открывается список его свойств.
С помощью соответствующих флажков можно сделать выбранное в таблице условие скрытым или обязательным для заполнения. Параметр скрытого условия не отображается пользователю, поэтому он должны быть введен во время редактирования фильтра.
Свойство Width позволяет задать ширину поля ввода параметра для текущего условия. По умолчанию, условия на панели фильтров отображаются в три колонки. Ширина поля равняется количеству колонок, которое оно может занять (1, 2 или 3).
Значение параметра текущего условия по умолчанию можно задать в поле Default value (Значение по умолчанию).
Специальный заголовок условия фильтрации можно задать в поле Caption (Заголовок).
Поле Operation позволяет выбрать оператор поиска. Список доступных операторов зависит от типа атрибута.
При нажатии
в редакторе фильтра изменения сохраняются только для текущего быстрого поиска. Для того чтобы сохранить их для повторного использования в дальнейшем, нажмите на кнопку настройки фильтра и выберите . Иначе при закрытии экрана просмотра экземпляров сущности все изменения будут утеряны.