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

Материал из 3v-wiki
Перейти к навигации Перейти к поиску
 
(не показано 13 промежуточных версий этого же участника)
Строка 4: Строка 4:
 
"filter": {
 
"filter": {
 
         "inversion": false,
 
         "inversion": false,
         "conditionId": null,
+
         "conditionExpressionId": null
 
         ...
 
         ...
 
         "discriminator": "..."
 
         "discriminator": "..."
Строка 17: Строка 17:
 
| inversion || В значении "false" источник-справочник принимает значения, которые удовлетворяют фильтру, в значении "true" - все значения, которые наоборот не удовлетворяют ему
 
| inversion || В значении "false" источник-справочник принимает значения, которые удовлетворяют фильтру, в значении "true" - все значения, которые наоборот не удовлетворяют ему
 
|-
 
|-
| conditionId|| Условия, при которых применяется фильтр
+
| [[ Платформа_3V/Формы/Выражения|'''conditionExpressionId''']]|| Выражение с условием, при которых применяется фильтр (выражение должно возвращать true или false)
 
|-
 
|-
 
| discriminator|| Вид фильтра (см.таблицу ниже)
 
| discriminator|| Вид фильтра (см.таблицу ниже)
Строка 27: Строка 27:
 
! discriminator !! Описание
 
! discriminator !! Описание
 
|-
 
|-
| [[Платформа_3V/Формы/Источники_данных/Справочник/Фильтрация/От_другого_справочника_(EntryFilterDto)|'''EntryFilterDto''']] || Фильтр от другого [[Платформа_3V/Формы/Источники_данных/Справочник|'''справочника - источника''']] серверной карточки
+
| [[Платформа_3V/Формы/Источники_данных/Справочник/Фильтрация/От_другого_справочника|'''EntryFilter''']] || Фильтр от другого [[Платформа_3V/Формы/Источники_данных/Справочник|'''справочника - источника''']] серверной карточки
 
|-
 
|-
| [[Платформа 3V/Формы/Источники данных/Справочник/Фильтрация/По значению в элементе управления (EntryUiFilterDto)|'''EntryUiFilterDto''']] || Фильтр от значения от [[Платформа 3V/Формы/Элементы управления|'''элемента управления''']]
+
| [[Платформа 3V/Формы/Источники данных/Справочник/Фильтрация/По значению в элементе управления|'''EntryUiFilter''']] || Фильтр от значения от [[Платформа 3V/Формы/Элементы управления|'''элемента управления''']]
 
|-
 
|-
| [[Платформа_3V/Формы/Источники_данных/Справочник/Фильтрация/По_конкретным_значениям_(ValueConditionalDictionaryFilterDto)|'''ValueConditionalDictionaryFilterDto''']]|| Фильтр от постоянного значения (единичного или множественного)
+
| [[Платформа_3V/Формы/Источники_данных/Справочник/Фильтрация/По_фиксированным_значениям|'''ValueConditionalDictionaryCardsFilter''']]|| Фильтр от постоянного значения (единичного или множественного)
 
|-
 
|-
| [[Платформа_3V/Формы/Источники_данных/Справочник/Фильтрация/От_значений_выражения_(EntryExpressionFilterDto)|'''EntryExpressionFilterDto''']]|| Фильтр от значения [[Платформа 3V/Формы/Выражения|'''выражения''']]
+
| [[Платформа 3V/Формы/Источники данных/Справочник/Фильтрация/От значений выражения|'''EntryExpressionFilter''']]|| Фильтр от значения [[Платформа 3V/Формы/Выражения|'''выражения''']]
 
|-
 
|-
| [[Платформа 3V/Формы/Источники данных/Справочник/Фильтрация/По параметру (EntryParameterFilterDto)|'''EntryParameterFilterDto''']]|| Фильтр от [[Платформа_3V/Формы/Параметры_формы|'''параметра формы''']]
+
| [[Платформа 3V/Формы/Источники данных/Справочник/Фильтрация/По параметру|'''EntryParameterFilter''']]|| Фильтр от [[Платформа_3V/Формы/Параметры_формы|'''параметра формы''']]
 
|-
 
|-
| [[Платформа 3V/Формы/Источники данных/Справочник/Фильтрация/Несколькими фильтрами через И или ИЛИ (CompoundDictionaryFilterDto)|'''CompoundDictionaryFilterDto''']]|| Фильтр соединяющий несколько фильтров по типу (И/ИЛИ)
+
| [[Платформа 3V/Формы/Источники данных/Справочник/Фильтрация/Несколькими фильтрами через И или ИЛИ|'''CompoundDictionaryCardsFilter''']]|| Фильтр соединяющий несколько фильтров по типу (И/ИЛИ)
 +
|-
 +
| [[Платформа 3V/Формы/Источники данных/Справочник/Фильтрация/Формулой|'''FormulaConditionalDictionaryCardsFilter''']]|| Фильтр от формулы
 +
|-
 +
| [[Платформа 3V/Формы/Источники данных/Справочник/Фильтрация/Для ограничения загружаемых элементов|'''EntryValueFilter''']]|| Фильтр, который позволяет не загружать все элементы справочника при открытии формы. Используется в случае, когда отметка в поле выставляется не пользователем, а другими способами. Используется для оптмитизации работы формы
 
|-
 
|-
 
| ... || ...
 
| ... || ...
 +
|}
 +
 +
==Типы условий фильтрации (conditionType) ==
 +
В некоторых из видов типов фильтров используется тип условия фильтрации, ниже представлен список существующих типов условий
 +
 +
{| class="wikitable"
 +
|-
 +
! Тип условия (conditionType) !! Описание
 +
|-
 +
| AllElements || Вне зависимости от фильтра выборка всех элементов справочника
 +
|-
 +
| AttributeEqualConstant || Элементы, у которых указанный атрибут справочника равен значению, с которым идет сравнение
 +
|-
 +
| AttributeLessConstant|| Элементы, у которых указанный атрибут справочника меньше значения, с которым идет сравнение
 +
|-
 +
| AttributeLessOrEqualConstant|| Элементы, у которых указанный атрибут справочника меньше или равен значению, с которым идет сравнение
 +
|-
 +
| AttributeMoreConstant|| Элементы, у которых указанный атрибут справочника больше значению, с которым идет сравнение
 +
|-
 +
| AttributeMoreOrEqualConstant|| Элементы, у которых указанный атрибут справочника больше или равен значению, с которым идет сравнение
 +
|-
 +
| AttributeIsNull || Элементы, у которых указанный атрибут справочника не заполнен (пустой)
 +
|-
 +
| AttributeIsNotNull || Элементы, у которых указанный атрибут справочника заполнен (не пустой)
 +
|-
 +
| AttributeInCollection || Элементы, у которых указанный атрибут справочника входит в коллекцию значений, с которой идет сравнение
 +
|-
 +
| AttributeNotInCollection || Элементы, у которых указанный атрибут справочника НЕ входит в коллекцию значений, с которой идет сравнение
 +
|-
 +
| ElementChilds || Элементы, у которых атрибут "Родитель" входит в коллекцию значений, с которой идет сравнение
 +
|-
 +
| ElementChildsRecursive || Все дочерние по иерархии элементы, для элементов, у которых указанный атрибут указанный атрибут
 +
|-
 +
| ElementParent || Элементы, которые являются родительскими для элементов, указанный атрибут которых входит в коллекцию значений, с которой идет сравнение
 +
|-
 +
| ElementParentRecursive || Все родительские элементы по всей иерархии для тех элементов, указанный атрибут которых входит в коллекцию значений, с которой идет сравнение
 +
|-
 +
| FirstElement || Вне зависимости от фильтра ограничение перечня элементов справочника первым доступным элементом
 +
|-
 +
| FirstNElements || Выставить лимит на получение N элементов справочника. При использовании в [[Платформа_3V/Формы/Источники_данных/Справочник/Фильтрация/По_конкретным_значениям_(ValueConditionalDictionaryFilterDto)|'''фильтре от постоянного значения''']] количество элементов задается в свойстве "value", при [[Платформа_3V/Формы/Источники_данных/Справочник/Фильтрация/От_другого_справочника_(EntryFilterDto)|'''фильтре от другого справочника''']] количество элементов передается из атрибута другого справочника - источника и т.д.
 +
|-
 +
| LikeText || Элементы, у которых указанный атрибут справочника совпадает с текстом, с которым идет сравнение
 +
|-
 +
| LikeTextIgnoreCase || Элементы, у которых указанный атрибут справочника совпадает с текстом (без учета регистра), с которым идет сравнение
 +
|-
 +
| ContainsString || Элементы, у которых в указанный атрибут справочника входит текст, с которым идет сравнение
 +
|-
 +
| ContainsStringIgnoreCase  || Элементы, у которых в указанный атрибут справочника входит текст (без учета регистра), с которым идет сравнение
 
|}
 
|}

Текущая версия на 14:56, 4 апреля 2022

Фильтры справочника-источника серверной карточки служат для того, чтобы ограничить перечень элементов по заданному условию и имеют следующую структуру:

1 "filter": {
2         "inversion": false,
3         "conditionExpressionId": null
4         ...
5         "discriminator": "..."
6  }

Описание базовых свойств параметров

Свойство Описание
inversion В значении "false" источник-справочник принимает значения, которые удовлетворяют фильтру, в значении "true" - все значения, которые наоборот не удовлетворяют ему
conditionExpressionId Выражение с условием, при которых применяется фильтр (выражение должно возвращать true или false)
discriminator Вид фильтра (см.таблицу ниже)

Виды фильтров

discriminator Описание
EntryFilter Фильтр от другого справочника - источника серверной карточки
EntryUiFilter Фильтр от значения от элемента управления
ValueConditionalDictionaryCardsFilter Фильтр от постоянного значения (единичного или множественного)
EntryExpressionFilter Фильтр от значения выражения
EntryParameterFilter Фильтр от параметра формы
CompoundDictionaryCardsFilter Фильтр соединяющий несколько фильтров по типу (И/ИЛИ)
FormulaConditionalDictionaryCardsFilter Фильтр от формулы
EntryValueFilter Фильтр, который позволяет не загружать все элементы справочника при открытии формы. Используется в случае, когда отметка в поле выставляется не пользователем, а другими способами. Используется для оптмитизации работы формы
... ...

Типы условий фильтрации (conditionType)

В некоторых из видов типов фильтров используется тип условия фильтрации, ниже представлен список существующих типов условий

Тип условия (conditionType) Описание
AllElements Вне зависимости от фильтра выборка всех элементов справочника
AttributeEqualConstant Элементы, у которых указанный атрибут справочника равен значению, с которым идет сравнение
AttributeLessConstant Элементы, у которых указанный атрибут справочника меньше значения, с которым идет сравнение
AttributeLessOrEqualConstant Элементы, у которых указанный атрибут справочника меньше или равен значению, с которым идет сравнение
AttributeMoreConstant Элементы, у которых указанный атрибут справочника больше значению, с которым идет сравнение
AttributeMoreOrEqualConstant Элементы, у которых указанный атрибут справочника больше или равен значению, с которым идет сравнение
AttributeIsNull Элементы, у которых указанный атрибут справочника не заполнен (пустой)
AttributeIsNotNull Элементы, у которых указанный атрибут справочника заполнен (не пустой)
AttributeInCollection Элементы, у которых указанный атрибут справочника входит в коллекцию значений, с которой идет сравнение
AttributeNotInCollection Элементы, у которых указанный атрибут справочника НЕ входит в коллекцию значений, с которой идет сравнение
ElementChilds Элементы, у которых атрибут "Родитель" входит в коллекцию значений, с которой идет сравнение
ElementChildsRecursive Все дочерние по иерархии элементы, для элементов, у которых указанный атрибут указанный атрибут
ElementParent Элементы, которые являются родительскими для элементов, указанный атрибут которых входит в коллекцию значений, с которой идет сравнение
ElementParentRecursive Все родительские элементы по всей иерархии для тех элементов, указанный атрибут которых входит в коллекцию значений, с которой идет сравнение
FirstElement Вне зависимости от фильтра ограничение перечня элементов справочника первым доступным элементом
FirstNElements Выставить лимит на получение N элементов справочника. При использовании в фильтре от постоянного значения количество элементов задается в свойстве "value", при фильтре от другого справочника количество элементов передается из атрибута другого справочника - источника и т.д.
LikeText Элементы, у которых указанный атрибут справочника совпадает с текстом, с которым идет сравнение
LikeTextIgnoreCase Элементы, у которых указанный атрибут справочника совпадает с текстом (без учета регистра), с которым идет сравнение
ContainsString Элементы, у которых в указанный атрибут справочника входит текст, с которым идет сравнение
ContainsStringIgnoreCase Элементы, у которых в указанный атрибут справочника входит текст (без учета регистра), с которым идет сравнение