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