Платформа 3V/Формы/Источники данных/Справочник/Фильтрация/По фиксированным значениям: различия между версиями
(не показано 6 промежуточных версий 1 участника) | |||
Строка 13: | Строка 13: | ||
"conditionType": "AttributeInCollection", | "conditionType": "AttributeInCollection", | ||
"inversion": false, | "inversion": false, | ||
− | " | + | "conditionExpressionId": null, |
− | "discriminator": " | + | "discriminator": "ValueConditionalDictionaryCardsFilter" |
}, | }, | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 22: | Строка 22: | ||
! Свойство !! Описание | ! Свойство !! Описание | ||
|- | |- | ||
− | | inversion || В значении "false" | + | | inversion || В значении "false" источник-справочник принимает значения, которые удовлетворяют фильтру, в значении "true" - все значения, которые наоборот не удовлетворяют ему |
|- | |- | ||
− | | discriminator|| | + | | discriminator|| ValueConditionalDictionaryCardsFilter |
|- | |- | ||
| attribute|| [[Платформа_3V/Справочник/Связи_атрибутов_справочников|''' Атрибут''']] текущего источника, с которым будет сравниваться заданное значение. Указывается номер Id и тип атрибута в данном случае собственный (OwnAttributeDefinitionDto), так как используются данные текущего справочника. | | attribute|| [[Платформа_3V/Справочник/Связи_атрибутов_справочников|''' Атрибут''']] текущего источника, с которым будет сравниваться заданное значение. Указывается номер Id и тип атрибута в данном случае собственный (OwnAttributeDefinitionDto), так как используются данные текущего справочника. | ||
Строка 32: | Строка 32: | ||
| value || значение с которым будет сравниваться значение атрибута фильтруемого справочника. Форматы данных должны совпадать. | | value || значение с которым будет сравниваться значение атрибута фильтруемого справочника. Форматы данных должны совпадать. | ||
|- | |- | ||
− | + | | [[ Платформа_3V/Формы/Выражения|'''conditionExpressionId''']]|| Выражение с условием, при которых применяется фильтр (выражение должно возвращать true или false) | |
|} | |} | ||
Строка 47: | Строка 47: | ||
[[Файл:Screenshot 2021-04-20 at 16.34.44.png|обрамить|слева]] | [[Файл:Screenshot 2021-04-20 at 16.34.44.png|обрамить|слева]] | ||
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> | <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> | ||
+ | Для этого соответственно настроить фильтр, где "value" - это id элементов "Виды контрагентов", "attribute" - это id фильтруемого атрибута "Вид контрагента" спр."Контрагенты" (который мы фильтруем) и "conditionType": "AttributeInCollection" - чтобы атрибут проверялся на наличие элемента из коллекции прописанных в "value" | ||
+ | |||
+ | <syntaxhighlight lang="JSON" line> | ||
+ | "filter": { | ||
+ | "value": [ | ||
+ | 1, | ||
+ | 2, | ||
+ | 3 | ||
+ | ], | ||
+ | "attribute": { | ||
+ | "id": 21, | ||
+ | "discriminator": "OwnAttributeDefinitionDto" | ||
+ | }, | ||
+ | "conditionType": "AttributeInCollection", | ||
+ | "inversion": false, | ||
+ | "conditionId": null, | ||
+ | "discriminator": "ValueConditionalDictionaryCardsFilter" | ||
+ | }, | ||
+ | </syntaxhighlight> | ||
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px; overflow:auto;"> | <div class="toccolours mw-collapsible mw-collapsed" style="width:800px; overflow:auto;"> | ||
Строка 54: | Строка 73: | ||
{ | { | ||
"id": 10826, | "id": 10826, | ||
− | "name": "Пример фильтра по значениям ( | + | "name": "Пример фильтра по значениям (ValueConditionalDictionaryCardsFilter)", |
"description": null, | "description": null, | ||
"title": "Пример фильтрации по конкретному значению", | "title": "Пример фильтрации по конкретному значению", | ||
Строка 98: | Строка 117: | ||
"inversion": false, | "inversion": false, | ||
"conditionId": null, | "conditionId": null, | ||
− | "discriminator": " | + | "discriminator": "ValueConditionalDictionaryCardsFilter" |
}, | }, | ||
"sortingOptions": null, | "sortingOptions": null, |
Текущая версия на 03:25, 21 апреля 2022
Фильтр выберет из справочника элементы, у которых значение указанного атрибута совпадают с заданным значением в фильтре.
1 "filter": {
2 "value": [
3 1,
4 2,
5 3
6 ],
7 "attribute": {
8 "id": 21,
9 "discriminator": "OwnAttributeDefinitionDto"
10 },
11 "conditionType": "AttributeInCollection",
12 "inversion": false,
13 "conditionExpressionId": null,
14 "discriminator": "ValueConditionalDictionaryCardsFilter"
15 },
Описание свойств фильтра
Свойство | Описание |
---|---|
inversion | В значении "false" источник-справочник принимает значения, которые удовлетворяют фильтру, в значении "true" - все значения, которые наоборот не удовлетворяют ему |
discriminator | ValueConditionalDictionaryCardsFilter |
attribute | Атрибут текущего источника, с которым будет сравниваться заданное значение. Указывается номер Id и тип атрибута в данном случае собственный (OwnAttributeDefinitionDto), так как используются данные текущего справочника. |
conditionType | Тип условий |
value | значение с которым будет сравниваться значение атрибута фильтруемого справочника. Форматы данных должны совпадать. |
conditionExpressionId | Выражение с условием, при которых применяется фильтр (выражение должно возвращать true или false) |
Пример:
В данном примере справочник "Контрагенты" отфильтрован по значению атрибута "Вид".
Атрибут "Вид" связный, в нем хранятся идентификаторы справочника "Виды контрагентов". Фильтр выбирает элементы со значениями 1,2 и 3.
В справочнике "Виды контрагентов" этим значениям соответствуют Индивидуальный предприниматель (физ. лицо), Индивидуальный предприниматель (юр. лицо) и Публичное акционерное общество.
Для этого соответственно настроить фильтр, где "value" - это id элементов "Виды контрагентов", "attribute" - это id фильтруемого атрибута "Вид контрагента" спр."Контрагенты" (который мы фильтруем) и "conditionType": "AttributeInCollection" - чтобы атрибут проверялся на наличие элемента из коллекции прописанных в "value"
1 "filter": {
2 "value": [
3 1,
4 2,
5 3
6 ],
7 "attribute": {
8 "id": 21,
9 "discriminator": "OwnAttributeDefinitionDto"
10 },
11 "conditionType": "AttributeInCollection",
12 "inversion": false,
13 "conditionId": null,
14 "discriminator": "ValueConditionalDictionaryCardsFilter"
15 },
1 {
2 "id": 10826,
3 "name": "Пример фильтра по значениям (ValueConditionalDictionaryCardsFilter)",
4 "description": null,
5 "title": "Пример фильтрации по конкретному значению",
6 "entrySettings": null,
7 "uiSources": [
8 {
9 "trimSpaces": false,
10 "defaultValue": null,
11 "value": null,
12 "id": 2,
13 "caption": "Контрагент",
14 "enable": true,
15 "visible": true,
16 "hint": null,
17 "doActionOnChangeValue": false,
18 "onAfterChangeValueConditionalActions": null,
19 "onAfterChangeValueByClientConditionalActions": null,
20 "rebuildDependentsObjectOnChange": true,
21 "enableRuleIds": [],
22 "visibleRuleIds": [],
23 "access": null,
24 "isValueChanged": false,
25 "dataSourceId": 3,
26 "discriminator": "DictionarySourceEntry",
27 "hasMultipleValue": true
28 }
29 ],
30 "entryDataSources": [
31 {
32 "dictionaryId": 10755,
33 "hierarchyId": null,
34 "filter": {
35 "value": [
36 1,
37 2,
38 3
39 ],
40 "attribute": {
41 "id": 21,
42 "discriminator": "OwnAttributeDefinitionDto"
43 },
44 "conditionType": "AttributeInCollection",
45 "inversion": false,
46 "conditionId": null,
47 "discriminator": "ValueConditionalDictionaryCardsFilter"
48 },
49 "sortingOptions": null,
50 "groupingOptions": null,
51 "dictionaryAttributes": [],
52 "defaultValue": [],
53 "defaultValueExpressionId": null,
54 "parameterId": null,
55 "dictionarySourceSelectionMode": "SelectAll",
56 "dataSourceAttributesAdditionsSettings": [],
57 "externalFileStorageUrl": null,
58 "filePrefix": null,
59 "defaultNewElementSettings": null,
60 "id": 3,
61 "name": "Контрагенты",
62 "isReadOnly": false,
63 "dataEditRuleIds": [],
64 "beforeSaveDataActions": [],
65 "afterSaveDataActions": [],
66 "discriminator": "DictionaryDataSource"
67 }
68 ],
69 "parameters": [],
70 "binaryConditionsRules": [],
71 "submitValidateRules": [],
72 "expressions": [],
73 "controlsValueCalculateRules": [],
74 "actions": [],
75 "conditionActionIdsOnOpen": [],
76 "conditionalActions": [],
77 "selectionSets": [],
78 "reportTemplates": [],
79 "useNewDependenciesBuilder": null
80 }