Платформа 3V/Формы/Действия/Обновление источника

Материал из 3v-wiki
Перейти к навигации Перейти к поиску

Действие, которое пересобирает элемент, основывающийся на источнике данных, имеет следующую структуру:

1 {
2       "instanceId": 111,
3       "id": 111,
4       "comment": "Ребилд справочника",
5       "discriminator": "RebuildSourceInstanceAction"
6     },

Описание свойств действия

Свойство Описание
instanceId Идентификатор источника данных
comment Описание действия
id Идентификатор действия
discriminator RebuildSourceInstanceAction

Пример использования(обновление отчёта)

Кейс: Обновить отчёт, изменения, которого произошли после его сборки в карточке.

Добавить действие, в котором указать источник данных, который следует пересобрать и добавить это действие в элемент управления. Вычисление происходит при нажатии кнопки.

обновление пивота.gif
















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". Вычисление происходит при нажатии кнопки.

выбор всех значений в источнике.gif











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 }