Платформа 3V/Формы/Действия/Обновление источника
< Платформа 3V | Формы | Действия
Перейти к навигации
Перейти к поиску
Версия от 11:11, 22 апреля 2021; A.kazanceva (обсуждение | вклад)
Действие, которое пересобирает элемент, основывающийся на источнике данных, имеет следующую структуру:
1 {
2 "instanceId": 111,
3 "id": 111,
4 "comment": "Ребилд справочника",
5 "discriminator": "RebuildSourceInstanceAction"
6 },
Описание свойств действия
Свойство | Описание |
---|---|
instanceId | Идентификатор источника данных |
comment | Описание действия |
id | Идентификатор действия |
discriminator | RebuildSourceInstanceAction |
Пример использования(обновление отчёта)
Кейс: Обновить отчёт, изменения, которого произошли после его сборки в карточке.
Добавить действие, в котором указать источник данных, который следует пересобрать и добавить это действие в элемент управления. Вычисление происходит при нажатии кнопки.
JSON серверной карточки
1 {
2 "id": 53,
3 "name": "CalculateControlValueByDictionaryEntrySourceAction",
4 "description": "",
5 "title": "",
6 "entrySettings": null,
7 "uiSources": [
8 {
9 "dataSourceId": 111,
10 "nameTemplate": "",
11 "displayAttribute": null,
12 "hasMultipleValue": false,
13 "hasNullableValue": false,
14 "maxElements": null,
15 "hasServerFiltration": false,
16 "searchSettings": {
17 "maxElements": null,
18 "minInputChars": 2,
19 "searchMode": "Client",
20 "debounceMs": 300
21 },
22 "id": 111,
23 "caption": null,
24 "enable": true,
25 "visible": true,
26 "hint": null,
27 "uiDataSource": null,
28 "doActionOnChangeValue": true,
29 "onAfterChangeValueConditionalActions": null,
30 "onAfterChangeValueByClientConditionalActions": null,
31 "rebuildDependentsObjectOnChange": true,
32 "enableRuleIds": [],
33 "visibleRuleIds": [],
34 "access": null,
35 "isValueChanged": true,
36 "expressionId": null,
37 "discriminator": "DictionarySourceEntry"
38 },
39 {
40 "submitRuleIds": [],
41 "actionConfirmation": {
42 "message": null,
43 "conditionId": null
44 },
45 "controlsValueCalculateRulesIds": [],
46 "conditionalActions": [
47 111,
48 222
49 ],
50 "onBeforeClickConditionalActions": [],
51 "id": 112,
52 "caption": "Сбросить",
53 "enable": true,
54 "visible": true,
55 "hint": null,
56 "uiDataSource": null,
57 "doActionOnChangeValue": false,
58 "onAfterChangeValueConditionalActions": null,
59 "onAfterChangeValueByClientConditionalActions": null,
60 "enableRuleIds": [],
61 "visibleRuleIds": [],
62 "access": {
63 "read": {
64 "roles": [],
65 "inversion": false,
66 "default": true
67 },
68 "edit": {
69 "roles": [],
70 "inversion": false,
71 "default": true
72 }
73 },
74 "isValueChanged": false,
75 "expressionId": null,
76 "discriminator": "CustomButtonEntry"
77 },
78 {
79 "pivotSourceId": 222,
80 "doActionOnChangeFocusedCell": true,
81 "doActionOnChangeCellValue": false,
82 "id": 222,
83 "caption": null,
84 "enable": false,
85 "visible": true,
86 "hint": null,
87 "uiDataSource": null,
88 "doActionOnChangeValue": false,
89 "onAfterChangeValueConditionalActions": null,
90 "onAfterChangeValueByClientConditionalActions": null,
91 "rebuildDependentsObjectOnChange": true,
92 "enableRuleIds": [],
93 "visibleRuleIds": [],
94 "access": null,
95 "isValueChanged": false,
96 "expressionId": null,
97 "discriminator": "PivotSourceEntry"
98 }
99 ],
100 "entryDataSources": [
101 {
102 "dictionaryId": 50,
103 "hierarchyId": null,
104 "filter": null,
105 "sortingOptions": null,
106 "groupingOptions": null,
107 "dictionaryAttributes": null,
108 "defaultValue": [],
109 "defaultValueExpressionId": null,
110 "parameterId": null,
111 "dictionarySourceSelectionMode": "None",
112 "dataSourceAttributesAdditionsSettings": [],
113 "externalFileStorageUrl": null,
114 "filePrefix": null,
115 "defaultNewElementSettings": null,
116 "id": 111,
117 "name": null,
118 "isReadOnly": true,
119 "dataEditRuleIds": [],
120 "beforeSaveDataActions": [],
121 "afterSaveDataActions": [],
122 "discriminator": "DictionaryDataSource"
123 },
124 {
125 "pivotId": 54,
126 "parameters": [],
127 "focusOnFirstCell": true,
128 "doActionOnChangeFocusedCell": true,
129 "doActionOnChangeCellValue": true,
130 "id": 222,
131 "name": null,
132 "isReadOnly": true,
133 "dataEditRuleIds": [],
134 "beforeSaveDataActions": [],
135 "afterSaveDataActions": [],
136 "discriminator": "PivotDataSource"
137 }
138 ],
139 "parameters": [],
140 "binaryConditionsRules": [],
141 "submitValidateRules": [],
142 "expressions": [],
143 "controlsValueCalculateRules": [],
144 "actions": [
145 {
146 "instanceId": 111,
147 "id": 111,
148 "comment": "Ребилд справочника",
149 "discriminator": "RebuildSourceInstanceAction"
150 },
151 {
152 "instanceId": 222,
153 "id": 222,
154 "comment": "Ребилд пивота",
155 "discriminator": "RebuildSourceInstanceAction"
156 }
157 ],
158 "conditionActionIdsOnOpen": [],
159 "conditionalActions": [
160 {
161 "id": 111,
162 "binaryConditionRuleId": null,
163 "actions": [
164 111
165 ],
166 "parallelRunning": false
167 },
168 {
169 "id": 222,
170 "binaryConditionRuleId": null,
171 "actions": [
172 222
173 ],
174 "parallelRunning": false
175 }
176 ],
177 "selectionSets": [],
178 "reportTemplates": [],
179 "useNewDependenciesBuilder": null
180 }
Пример использования(выбор всех значений справочника)
Кейс: Отметить все значения справочника.
Добавить действие, в котором указать "sourceType": "AllElementsIds" и вывести ее в элемент управления, где "hasMultipleValue":"true". Вычисление происходит при нажатии кнопки.
JSON серверной карточки
1 {
2 "id": 37,
3 "name": "CalculateControlValueByDictionaryEntrySourceAction",
4 "description": "",
5 "title": "",
6 "entrySettings": null,
7 "uiSources": [
8 {
9 "discriminator": "DictionarySourceEntry",
10 "attributeId": 0,
11 "sourceType": "Dictionary",
12 "dataType": "Integer",
13 "dataSourceId": 111,
14 "id": 111,
15 "caption": "Наименование из примера",
16 "enable": true,
17 "hint": null,
18 "sourceId": 0,
19 "doActionOnChangeValue": false,
20 "hasMultipleValue": true,
21 "hasNullableValue": false
22 },
23 {
24 "submitRuleIds": [],
25 "actionConfirmation": {
26 "message": null,
27 "conditionId": null
28 },
29 "controlsValueCalculateRulesIds": [],
30 "conditionalActions": [
31 111
32 ],
33 "onBeforeClickConditionalActions": [],
34 "id": 112,
35 "caption": "Назначить всех",
36 "enable": true,
37 "visible": true,
38 "hint": null,
39 "uiDataSource": null,
40 "doActionOnChangeValue": false,
41 "onAfterChangeValueConditionalActions": null,
42 "onAfterChangeValueByClientConditionalActions": null,
43 "enableRuleIds": [],
44 "visibleRuleIds": [],
45 "access": {
46 "read": {
47 "roles": [],
48 "inversion": false,
49 "default": true
50 },
51 "edit": {
52 "roles": [],
53 "inversion": false,
54 "default": true
55 }
56 },
57 "isValueChanged": false,
58 "expressionId": null,
59 "discriminator": "CustomButtonEntry"
60 }
61 ],
62 "entryDataSources": [
63 {
64 "discriminator": "DictionaryDataSource",
65 "dictionaryId": 31,
66 "filter": {
67 "value": [
68 1,
69 2,
70 3
71 ],
72 "attributeId": 1,
73 "attribute": null,
74 "conditionType": "AttributeInCollection",
75 "inversion": false,
76 "conditionId": null,
77 "discriminator": "ValueConditionalDictionaryFilterDto"
78 },
79 "groupingOptions": null,
80 "defaultValue": [],
81 "dictionarySourceSelectionMode": "SelectAll",
82 "id": 111,
83 "name": "ExampleDict",
84 "isReadOnly": true
85 }
86 ],
87 "parameters": [],
88 "binaryConditionsRules": [],
89 "submitValidateRules": [],
90 "expressions": [],
91 "controlsValueCalculateRules": [],
92 "actions": [
93 {
94 "dictionaryEntrySourceId": 111,
95 "attributeId": 1,
96 "value": [],
97 "sourceType": "AllElementIds",
98 "controlId": 111,
99 "id": 111,
100 "comment": "Выбор всех значений",
101 "discriminator": "CalculateControlValueByDictionaryEntrySourceAction"
102 }
103 ],
104 "conditionActionIdsOnOpen": [],
105 "conditionalActions": [
106 {
107 "id": 111,
108 "binaryConditionRuleId": null,
109 "actions": [
110 111
111 ],
112 "parallelRunning": false
113 }
114 ],
115 "selectionSets": [],
116 "reportTemplates": [],
117 "useNewDependenciesBuilder": null
118 }