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

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

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

 1  {
 2       "calculationMethodId": 1,
 3       "parameters": [
 4         {
 5           "id": 1,
 6           "expressionId": 1,
 7           "value": null,
 8           "name": null
 9         }
10       ],
11       "id": 1,
12       "comment": "Выполнение методики",
13       "discriminator": "CalculationMethodAction"
14     },

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

Свойство Описание
calculationMethodId Идентификатор методики
parameters.id Идентификатор параметра
parameters.expressionId Идентификатор выражения
parameters.value Значение параметра
parameters.name Наименование параметра
id Идентификатор действия
comment Описание действия
discriminator CalculationMethodAction

Пример использования

Кейс: Использование методики, которая очищает значение в источнике.

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

Выполнение методики.gif











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