Платформа 3V/Формы/Выражения/Параметры/На значении выражения (EntryExpressionByExpressionDto)
Параметр, который возращает значение другого выражения, добавленного ранее в серверную карточку, имеет следующую структуру:
1 {
2 "id": 1,
3 "allowMultipleValues": false,
4 "discriminator": "EntryExpressionByExpressionDto",
5 "expressionId": 1000
6 }
Описание свойств параметра
Свойство | Описание |
---|---|
id | Идентификатор параметра |
allowMultipleValues | Флаг об получении результата в виде коллекции значений (true/false) |
discriminator | EntryExpressionByExpressionDto |
expressionId | Идентификатор выражения |
Пример использования в качестве параметра выражения
При необходимости вычисления некоторого выражения на основании значения вычисленного с помощью другого выражения, добавленного ранее, используется соответствующий параметр EntryExpressionByExpressionDto
Кейс: Собрать строковый элемент управления, в котором будет отображаться "Договоры:" + "Наименования договоров"
"Наименования договоров" собрать из наименований договоров, которые выбраны пользователем в соответствующем элементе управления на справочнике "Договоры" (использовать для этого отдельное выражение на расчет строки с перечнем наименований договоров с помощью выражения на источнике карточки - справочнике (EntryExpressionDictionarySourceParameterDto))
И в отдельном выражении добавить перечню договоров фразу "Договоры:"
1 {
2 "id": 123,
3 "name": "Использование в выражении параметра EntryExpressionByExpressionDto",
4 "description": null,
5 "title": null,
6 "entrySettings": null,
7 "uiSources": [
8 {
9 "dataSourceId": 100,
10 "nameTemplate": "",
11 "displayAttribute": null,
12 "hasMultipleValue": true,
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": 1,
23 "caption": "Выпадающий список договоров",
24 "enable": true,
25 "visible": true,
26 "hint": null,
27 "doActionOnChangeValue": true,
28 "onAfterChangeValueConditionalActions": null,
29 "onAfterChangeValueByClientConditionalActions": null,
30 "rebuildDependentsObjectOnChange": true,
31 "enableRuleIds": [],
32 "visibleRuleIds": [],
33 "access": null,
34 "isValueChanged": false,
35 "expressionId": null,
36 "discriminator": "DictionarySourceEntry"
37 },
38 {
39 "trimSpaces": false,
40 "defaultValue": null,
41 "value": null,
42 "id": 2,
43 "caption": "Договоры: 'Наименования договоров' (строка)",
44 "enable": true,
45 "visible": true,
46 "hint": null,
47 "doActionOnChangeValue": false,
48 "onAfterChangeValueConditionalActions": null,
49 "onAfterChangeValueByClientConditionalActions": null,
50 "rebuildDependentsObjectOnChange": true,
51 "enableRuleIds": [],
52 "visibleRuleIds": [],
53 "access": null,
54 "isValueChanged": false,
55 "expressionId": 1001,
56 "discriminator": "StringSourceEntry"
57 }
58 ],
59 "entryDataSources": [
60 {
61 "dictionaryId": 38238,
62 "hierarchyId": null,
63 "filter": null,
64 "sortingOptions": null,
65 "groupingOptions": null,
66 "dictionaryAttributes": null,
67 "defaultValueExpressionId": null,
68 "parameterId": null,
69 "dictionarySourceSelectionMode": "None",
70 "dataSourceAttributesAdditionsSettings": [],
71 "externalFileStorageUrl": null,
72 "filePrefix": null,
73 "defaultNewElementSettings": null,
74 "id": 100,
75 "name": "Договоры",
76 "isReadOnly": true,
77 "dataEditRuleIds": [],
78 "beforeSaveDataActions": [],
79 "afterSaveDataActions": [],
80 "discriminator": "DictionaryDataSource"
81 }
82 ],
83 "parameters": [],
84 "binaryConditionsRules": [],
85 "submitValidateRules": [],
86 "expressions": [
87 {
88 "id": 1000,
89 "expression": "Concatenate(', ', [1])",
90 "returnFirstParameterValue": false,
91 "parameters": [
92 {
93 "id": 1,
94 "allowMultipleValues": true,
95 "discriminator": "EntryExpressionDictionarySourceParameterDto",
96 "dictionarySourceId": 100,
97 "attributeId": 2,
98 "getFirstElementValue": false,
99 "useAllInstanceElements": false
100 }
101 ],
102 "comment": "Получение строки с перечнем наименований выбранных пользователем договоров"
103 },
104 {
105 "id": 1001,
106 "expression": "'Договоры: '+ [1]",
107 "returnFirstParameterValue": false,
108 "parameters": [
109 {
110 "id": 1,
111 "allowMultipleValues": false,
112 "discriminator": "EntryExpressionByExpressionDto",
113 "expressionId": 1000
114 }
115 ],
116 "comment": "Добавление к перечню наименований 'Договоры:'"
117 }
118 ],
119 "controlsValueCalculateRules": [],
120 "actions": [],
121 "conditionActionIdsOnOpen": [],
122 "conditionalActions": [],
123 "selectionSets": [],
124 "reportTemplates": [],
125 "useNewDependenciesBuilder": null
126 }