Платформа 3V/Формы/Компоненты/Основные/Кнопка/Кнопка 'Cброс отметки': различия между версиями

Материал из 3v-wiki
Перейти к навигации Перейти к поиску
(Новая страница: «Действие, которое вычисляет отметку основываясь на Платформа_3V/Формы/Источники_данных|...»)
 
 
(не показана 21 промежуточная версия 2 участников)
Строка 3: Строка 3:
 
<syntaxhighlight lang="JSON" line>
 
<syntaxhighlight lang="JSON" line>
 
{
 
{
       "dictionaryEntrySourceId": 31,
+
       "dictionaryEntrySourceId": 1,
 
       "attributeId": 1,
 
       "attributeId": 1,
 
       "value": [],
 
       "value": [],
       "sourceType": "Empty",
+
       "sourceType": "",
       "controlId": 111,
+
       "controlId": 1,
       "id": 111,
+
       "id": 1,
       "comment": "Сброс значения",
+
       "comment": "",
 
       "discriminator": "CalculateControlValueByDictionaryEntrySourceAction"
 
       "discriminator": "CalculateControlValueByDictionaryEntrySourceAction"
 
}
 
}
Строка 19: Строка 19:
 
! Свойство !! Описание
 
! Свойство !! Описание
 
|-
 
|-
| dictionaryEntrySourceId || Идентификатор [[Платформа_3V/Формы/Источники_данных|'''источника данных''']]
+
| dictionaryEntrySourceId || Идентификатор [[Платформа_3V/Формы/Источники_данных|'''источника данных''']] - справочника серверной карточки
 
|-
 
|-
| attributeId || Идентификатор
+
| attributeId || Идентификатор атрибута справочника, по которому происходит выбор
 
|-
 
|-
| value || Значение
+
| value || Идентификатор элемента в справочнике, которое следует выбрать при "sourceType":"Value"
 
|-
 
|-
| sourceType || Тип
+
| sourceType || Тип вычисления отметки
 
|-
 
|-
 
| id || Идентификатор действия
 
| id || Идентификатор действия
Строка 36: Строка 36:
 
|-
 
|-
 
| discriminator|| CalculateControlValueByDictionaryEntrySourceAction
 
| discriminator|| CalculateControlValueByDictionaryEntrySourceAction
 +
|}
 +
 +
{| class="wikitable"
 +
|-
 +
!colspan="2"|sourceType
 +
|-
 +
! Permissions !! Определение
 +
|-
 +
| Value || Выбор из value
 +
|-
 +
| Selection || Выбор отметки справочника типа int
 +
|-
 +
| AllElementIds|| Все элементы
 +
|-
 +
| FirstElement || Первый элемент
 +
|-
 +
| Empty || Пустота
 
|}
 
|}
  
Строка 41: Строка 58:
 
Кейс: Сбросить выбранное значение справочника.
 
Кейс: Сбросить выбранное значение справочника.
  
Добавить действие, в котором указать "sourceType": "Empty" и вывести ее в [[Платформа_3V/Формы/Элементы_управления|'''элемент управления''']]. Вычисление происходит при нажатии кнопки.
+
Добавить действие, в котором указать "'''sourceType'''": "'''Empty'''" и вывести ее в [[Платформа_3V/Формы/Элементы_управления|'''элемент управления''']]. Вычисление происходит при нажатии кнопки.
 
[[Файл:Сброс значения.gif|мини|слева]]
 
[[Файл:Сброс значения.gif|мини|слева]]
 
<br><br><br><br><br><br><br><br><br><br>
 
<br><br><br><br><br><br><br><br><br><br>
Строка 200: Строка 217:
 
</div></div>
 
</div></div>
  
==Пример использования(вывод строки)==
+
==Пример использования(выбор всех значений справочника)==
 +
Кейс: Отметить все значения справочника.
  
Кейс: Вывести строку при нажатии на кнопку.
+
Добавить действие, в котором указать "'''sourceType'''": "'''AllElementsIds'''" и вывести ее в [[Платформа_3V/Формы/Элементы_управления|'''элемент управления''']], где '''"hasMultipleValue"''':'''"true"'''. Вычисление происходит при нажатии кнопки.
  
Добавить строку в выражение и и вывести ее в [[Платформа_3V/Формы/Элементы_управления|'''элемент управления''']]. Вывод производится при нажатии кнопки.
+
[[Файл:выбор всех значений в источнике.gif|мини|слева]]
[[Файл:Строка.gif|мини|слева]]
+
<br><br><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 class="toccolours mw-collapsible mw-collapsed" style="width:800px; overflow:auto;">
 
<div style="font-weight:bold;line-height:1.6;">JSON серверной карточки</div>
 
<div style="font-weight:bold;line-height:1.6;">JSON серверной карточки</div>
Строка 212: Строка 229:
 
<syntaxhighlight lang="JSON" line>
 
<syntaxhighlight lang="JSON" line>
 
{
 
{
   "id": 370,
+
   "id": 37,
 +
  "name": "CalculateControlValueByDictionaryEntrySourceAction",
 +
  "description": "",
 
   "title": "",
 
   "title": "",
   "description": "",
+
   "entrySettings": null,
 
   "uiSources": [
 
   "uiSources": [
 +
    {
 +
      "discriminator": "DictionarySourceEntry",
 +
      "attributeId": 0,
 +
      "sourceType": "Dictionary",
 +
      "dataType": "Integer",
 +
      "dataSourceId": 111,
 +
      "id": 111,
 +
      "caption": "Наименование из примера",
 +
      "enable": true,
 +
      "hint": null,
 +
      "sourceId": 0,
 +
      "doActionOnChangeValue": false,
 +
      "hasMultipleValue": true,
 +
      "hasNullableValue": false
 +
    },
 
     {
 
     {
 
       "submitRuleIds": [],
 
       "submitRuleIds": [],
Строка 227: Строка 261:
 
       ],
 
       ],
 
       "onBeforeClickConditionalActions": [],
 
       "onBeforeClickConditionalActions": [],
       "id": 206100,
+
       "id": 112,
       "caption": "Кнопка для вывода строки",
+
       "caption": "Назначить всех",
 
       "enable": true,
 
       "enable": true,
 
       "visible": true,
 
       "visible": true,
Строка 253: Строка 287:
 
       "expressionId": null,
 
       "expressionId": null,
 
       "discriminator": "CustomButtonEntry"
 
       "discriminator": "CustomButtonEntry"
    },
 
    {
 
      "id": 111,
 
      "caption": "Вывод строки",
 
      "enable": true,
 
      "visible": true,
 
      "hint": null,
 
      "doActionOnChangeValue": false,
 
      "onAfterChangeValueConditionalActions": null,
 
      "onAfterChangeValueByClientConditionalActions": null,
 
      "enableRuleIds": [],
 
      "visibleRuleIds": [],
 
      "isValueChanged": false,
 
      "expressionId": null,
 
      "discriminator": "StringSourceEntry"
 
 
     }
 
     }
 
   ],
 
   ],
   "entryDataSources": [],
+
   "entryDataSources": [
  "parameters": null,
 
  "binaryConditionsRules": [],
 
  "expressions": [
 
 
     {
 
     {
 +
      "discriminator": "DictionaryDataSource",
 +
      "dictionaryId": 31,
 +
      "filter": {
 +
        "value": [
 +
          1,
 +
          2,
 +
          3
 +
        ],
 +
        "attributeId": 1,
 +
        "attribute": null,
 +
        "conditionType": "AttributeInCollection",
 +
        "inversion": false,
 +
        "conditionId": null,
 +
        "discriminator": "ValueConditionalDictionaryFilterDto"
 +
      },
 +
      "groupingOptions": null,
 +
      "defaultValue": [],
 +
      "dictionarySourceSelectionMode": "SelectAll",
 
       "id": 111,
 
       "id": 111,
       "expression": "[1]",
+
       "name": "ExampleDict",
       "returnFirstParameterValue": false,
+
       "isReadOnly": true
      "parameters": [
 
        {
 
          "id": 1,
 
          "allowMultipleValues": false,
 
          "discriminator": "EntryExpressionConstantParameterDto",
 
          "value": "Строка"
 
        }
 
      ],
 
      "comment": null
 
 
     }
 
     }
 
   ],
 
   ],
 +
  "parameters": [],
 +
  "binaryConditionsRules": [],
 +
  "submitValidateRules": [],
 +
  "expressions": [],
 +
  "controlsValueCalculateRules": [],
 
   "actions": [
 
   "actions": [
 
     {
 
     {
 +
      "dictionaryEntrySourceId": 111,
 +
      "attributeId": 1,
 +
      "value": [],
 +
      "sourceType": "AllElementIds",
 +
      "controlId": 111,
 
       "id": 111,
 
       "id": 111,
       "controlId": 111,
+
       "comment": "Выбор всех значений",
      "expressionId": 111,
+
       "discriminator": "CalculateControlValueByDictionaryEntrySourceAction"
       "discriminator": "CalculateControlValueAction"
 
 
     }
 
     }
 
   ],
 
   ],
 +
  "conditionActionIdsOnOpen": [],
 
   "conditionalActions": [
 
   "conditionalActions": [
 
     {
 
     {
Строка 303: Строка 338:
 
       "actions": [
 
       "actions": [
 
         111
 
         111
       ]
+
       ],
 +
      "parallelRunning": false
 
     }
 
     }
 
   ],
 
   ],
   "conditionActionIdsOnOpen": null
+
   "selectionSets": [],
 +
  "reportTemplates": [],
 +
  "useNewDependenciesBuilder": null
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
 
</div></div>
 
</div></div>

Текущая версия на 11:15, 11 августа 2022

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

 1 {
 2       "dictionaryEntrySourceId": 1,
 3       "attributeId": 1,
 4       "value": [],
 5       "sourceType": "",
 6       "controlId": 1,
 7       "id": 1,
 8       "comment": "",
 9       "discriminator": "CalculateControlValueByDictionaryEntrySourceAction"
10 }

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

Свойство Описание
dictionaryEntrySourceId Идентификатор источника данных - справочника серверной карточки
attributeId Идентификатор атрибута справочника, по которому происходит выбор
value Идентификатор элемента в справочнике, которое следует выбрать при "sourceType":"Value"
sourceType Тип вычисления отметки
id Идентификатор действия
controlId Идентификатор элемента управления
expressionId Идентификатор выражения
comment Описание действия
discriminator CalculateControlValueByDictionaryEntrySourceAction
sourceType
Permissions Определение
Value Выбор из value
Selection Выбор отметки справочника типа int
AllElementIds Все элементы
FirstElement Первый элемент
Empty Пустота

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

Кейс: Сбросить выбранное значение справочника.

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

Сброс значения.gif











JSON серверной карточки
  1 {
  2   "id": 33,
  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       ],
 49       "onBeforeClickConditionalActions": [],
 50       "id": 112,
 51       "caption": "Сбросить",
 52       "enable": true,
 53       "visible": true,
 54       "hint": null,
 55       "uiDataSource": null,
 56       "doActionOnChangeValue": false,
 57       "onAfterChangeValueConditionalActions": null,
 58       "onAfterChangeValueByClientConditionalActions": null,
 59       "enableRuleIds": [],
 60       "visibleRuleIds": [],
 61       "access": {
 62         "read": {
 63           "roles": [],
 64           "inversion": false,
 65           "default": true
 66         },
 67         "edit": {
 68           "roles": [],
 69           "inversion": false,
 70           "default": true
 71         }
 72       },
 73       "isValueChanged": false,
 74       "expressionId": null,
 75       "discriminator": "CustomButtonEntry"
 76     }
 77   ],
 78   "entryDataSources": [
 79     {
 80       "dictionaryId": 31,
 81       "hierarchyId": null,
 82       "filter": null,
 83       "sortingOptions": null,
 84       "groupingOptions": null,
 85       "dictionaryAttributes": null,
 86       "defaultValue": [],
 87       "defaultValueExpressionId": null,
 88       "parameterId": null,
 89       "dictionarySourceSelectionMode": "None",
 90       "dataSourceAttributesAdditionsSettings": [],
 91       "externalFileStorageUrl": null,
 92       "filePrefix": null,
 93       "defaultNewElementSettings": null,
 94       "id": 111,
 95       "name": null,
 96       "isReadOnly": true,
 97       "dataEditRuleIds": [],
 98       "beforeSaveDataActions": [],
 99       "afterSaveDataActions": [],
100       "discriminator": "DictionaryDataSource"
101     }
102   ],
103   "parameters": [],
104   "binaryConditionsRules": [],
105   "submitValidateRules": [],
106   "expressions": [
107     {
108       "id": 111,
109       "expression": "[1]",
110       "returnFirstParameterValue": false,
111       "parameters": [
112         {
113           "value": "Строка",
114           "id": 1,
115           "allowMultipleValues": false,
116           "discriminator": "EntryExpressionConstantParameterDto"
117         }
118       ],
119       "comment": null
120     }
121   ],
122   "controlsValueCalculateRules": [],
123   "actions": [
124     {
125       "dictionaryEntrySourceId": 31,
126       "attributeId": 1,
127       "value": [],
128       "sourceType": "Empty",
129       "controlId": 111,
130       "id": 111,
131       "comment": "Сброс значения",
132       "discriminator": "CalculateControlValueByDictionaryEntrySourceAction"
133     }
134   ],
135   "conditionActionIdsOnOpen": [],
136   "conditionalActions": [
137     {
138       "id": 111,
139       "binaryConditionRuleId": null,
140       "actions": [
141         111
142       ],
143       "parallelRunning": false
144     }
145   ],
146   "selectionSets": [],
147   "reportTemplates": [],
148   "useNewDependenciesBuilder": null
149 }

Пример использования(выбор всех значений справочника)

Кейс: Отметить все значения справочника.

Добавить действие, в котором указать "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 }