Платформа 3V/Формы/Источники данных/Справочник/Фильтрация/По значению в элементе управления

Материал из 3v-wiki
< Платформа 3V‎ | Формы‎ | Источники данных‎ | Справочник‎ | Фильтрация
Версия от 05:43, 14 июля 2022; A.saydakova (обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к навигации Перейти к поиску

Фильтр EntryUiFilter позволяет фильтровать данные справочника по значению элемента управления.
Структура фильтра:

 1 "filter": {
 2         "uiSourceId": 1,
 3         "attribute": {
 4           "id": 2,
 5           "discriminator": "OwnAttributeDefinitionDto"
 6         },
 7         "conditionType": "ContainsString",
 8         "inversion": false,
 9         "conditionExpressionId": 1,
10         "discriminator": "EntryUiFilter"
11       },

Тип данных в элементе управления должен совпадать с типом данных в атрибуте справочника по которому идет фильтрация.

Описание свойств фильтра

Свойство Описание
uiSourceId Номер элемента управления (контрола) от значения которого идет фильтрация
attribute Атрибут текущего источника, с которым сравнивается значение в контроле. Указывается номер Id и тип атрибута в данном случае собственный (OwnAttributeDefinitionDto), так как используются данные текущего справочника.
conditionType Тип условий
inversion В значении "false" источник-справочник принимает значения, которые удовлетворяют фильтру, в значении "true" - все значения, которые наоборот не удовлетворяют ему
conditionExpressionId Выражение с условиями, при которых применяется фильтр
discriminator EntryUiFilter

Пример:

В поле "Наименование" введен искомый текст, в поле "Контрагенты" отфильтрованы элементы списка, содержащие данный текст.

Для этого необходимо:

  1. Добавить Текстовое поле "Наименование", в которое мы будем вводить искомое значение
  2. Добавить источник, который требуется отфильтровать от Текстового поля и настроить фильтр указанный выше


Примечание: При необходимости фильтровать сразу после ввода значения в текстовом поле необходимо указать "Выполнить действие при изменении значения": true ("doActionOnChangeValue"). При необходимости применения фильтрации по кнопке, требуется отключить флаг, добавить кнопку и добавить на нее действие по обновлению источника-справочника "Контрагенты"

Screenshot 2021-04-20 at 16.02.38.png















JSON серверной карточки