Создание правила фильтрации

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

В следующем примере представлено, как отображать в окне события только элементы конфигурации, которые связаны с выбранным пользователем. Поскольку нам нужно ограничить вывод элементов конфигурации в окне события, правило фильтрации будет основано на атрибуте Элемент конфигурации в объекте Событие.

Для создания правила фильтрации:
  1. Запустите компонент Дизайнер объектов и перейдите к бизнес-объекту, для которого нужно применить фильтры.
    В примере - Управление событиями | Событие.
  2. В списке Атрибуты выберите атрибут, для которого нужно добавить фильтр.
    В этом примере - Элемент конфигурации.
  3. На панели Свойства рядом со свойством Селекторы фильтров щелкните .
    Появится диалог селекторов фильтров атрибутов.
  4. Щелкните Новое правило фильтра.
    Появится диалог селекторов фильтров атрибутов.

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

Для получения дополнительной информации о значении выполнения см. раздел Фильтрация данных с использованием значения выполнения.

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

  1. Установите параметр Выберите фильтрацию запросов, а затем в списке щелкните [Создать].
    Появится диалог "Новый фильтр".

Если уже есть подходящий запрос фильтра, вы может выбрать его из списка.

Для получения информации о создании запросов фильтров см. раздел Фильтры.

  1. Введите заголовок фильтра.

Заметьте, что элементы Модуль и Бизнес-объект для групп На основе и Фильтровать по уже определены. Объект На основе относится к объекту для атрибута, для которого определен селектор фильтров (в нашем примере, Управление конфигурациями\Элемент конфигурации). Это означает, что объект Фильтровать по - это объект, для которого предназначен атрибут для селектора фильтров (в нашем примере, Управление событиями\Событие). Это означает, что когда вы добавляете критерий в запрос фильтра, вы будете сопоставлять атрибуты элемента конфигурации с атрибутами события.

  1. Установите параметр Все, а затем щелкните OK.
    Появится построитель фильтров.
  2. В дереве Атрибуты переместите заголовок в список Выбранные атрибуты.

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

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

В нашем примере необходимо указать значение выполнения, которое будет использоваться для выбора элемента конфигурации, связанного с создавшим событие пользователем. Связь элемента конфигурации с пользователем является связью нескольких с несколькими: пользователь может иметь несколько элементов конфигурации (компьютер, монитор, принтер и т.д.), а элемент конфигурации может быть связан с несколькими пользователями (например, сетевой принтер). По этой причине существует коллекция Элементы конфигурации пользователя в объекте Элемент конфигурации. Это атрибут Пользователь в данной коллекции, по которому нужно выполнить фильтрацию.

Это означает, что нужно создать критерий Элементы конфигурации пользователей.Пользователь равен (Создавший пользователь).

  1. Из дерева Атрибутыпереместите атрибут, по которому нужно выполнить фильтрацию, в список Текущий критерий.
    В этом примере разверните элемент Элементы конфигурации пользователя и переместите элемент Пользователь в список Текущий критерий.
    Появится диалог критерия с заполненным полем Атрибут со значением Элементы конфигурации пользователь.Пользователь.
  2. В списке Условие выберите Равно.

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

  1. Установите параметр Укажите значение выполнения для параметра.
    Другие параметры могут быть добавлены в диалоге "Критерий".
  1. В дереве выберите элемент Создавший пользователь и щелкните OK.
    Критерий Элементы конфигурации пользователя.Пользователь равен (создавший пользователь) будет добавлен в список Текущий критерий.
  2. В окне построителя фильтров щелкните Готово, а затем Да для сохранения изменений.
    Построитель фильтров будет закрыт, появится диалог селектора фильтров атрибута с новым фильтром.
  3. В групповом поле Выберите тип клиента выберите Любой, если нужно фильтровать всех клиентов Service Desk, или выберите Web Access, если нужно отфильтровать приложения, полученные через Web Access, такие как Web Desk, а затем щелкните OK.
    Фильтр появится в списке "Правила фильтра". Заметьте, что Тип имеет значение Запрос.
  4. Щелкните OK.
    Правило фильтрации будет добавлено в атрибут.
  5. Щелкните для сохранения изменений объекта.

Для изменения существующего правила фильтрации выберите его в списке Правила фильтра и щелкните Изменить.

Вы можете создать другое правило фильтрации, для выбора элементов конфигурации только определенного типа. Это выполняется посредством сопоставления типа класса для элемента конфигурации с типом элемента конфигурации, выбранным в событии в значении выполнения.
Это: AND Class Type Is Equal To (Тип элемента конфигурации)

Установите фильтр для атрибута, который специфичен для родственного бизнес-объекта, вместо атрибута, наследуемого из другого бизнес-объекта. Если вам необходимо создать фильтр наследуемых бизнес-объектов (например, если фильтруемый атрибут доступен только для наследуемых бизнес-объектов, тогда вы должны создать правило фильтрации), оно должно иметь дополнительное условие, применяемое только к конкретному типу бизнес-объектов.
Например, для бизнес-объекта "Событие" фильтр атрибута процесса/создавшего пользователя будет фильтровать пользователей по клиентам, выбранным в окне "Событие". Это корректно работает для событий. Однако вы не сможете выбрать создавшего пользователя для бизнес-объекта "Изменение", так как атрибут "Создавший пользователь" наследуется из бизнес-объекта "Процесс" - всегда выполняется фильтрация по событию/клиенту. Используя этот пример, вы не можете задать этот фильтр для атрибута процесса/создавшего пользователя, так как "Клиент" не является частью бизнес-объекта "Процесс", хотя и относится к бизнес-объекту "Событие". Поэтому фильтр должен оставаться в объекте процесса/создавшего пользователя, но не должен применяться для других бизнес-объектов. Это можно сделать посредством добавления условия фильтра для использования только в случае, если бизнес-объект является событием.

See Also