Платформа 3V/Формы/Источники данных/Отчет/Параметры/На источнике - справочнике (EntryExpressionDictionarySourceParameterDto): различия между версиями

Материал из 3v-wiki
Перейти к навигации Перейти к поиску
(Новая страница: «страница в разработке»)
 
Строка 1: Строка 1:
страница в разработке
+
Параметр, который возращает коллекцию атрибутов элементов [[Платформа_3V/Формы/Источники_данных/Справочник|'''справочника''']] - источника серверной карточки [[Платформа_3V/Формы/Источники_данных|'''(entryDataSources)''']] имеет следующую структуру:
 +
 
 +
<syntaxhighlight lang="JSON" line>
 +
{
 +
"id": 1,
 +
"allowMultipleValues": false,
 +
"discriminator": "EntryExpressionDictionarySourceParameterDto",
 +
"dictionarySourceId": 100,
 +
"attributeId": 1,
 +
"getFirstElementValue": false,
 +
"useAllInstanceElements": false
 +
}
 +
</syntaxhighlight>
 +
 
 +
== Описание свойств параметра ==
 +
{| class="wikitable"
 +
|-
 +
! Свойство !! Описание
 +
|-
 +
| id || Идентификатор параметра
 +
|-
 +
| allowMultipleValues|| Флаг об получении результата в виде коллекции значений (true/false)
 +
|-
 +
| discriminator|| EntryExpressionDictionarySourceParameterDto
 +
|-
 +
| dictionarySourceId || Идентификатор [[Платформа_3V/Формы/Источники_данных/Справочник|'''справочника - источника серверной карточки''']]
 +
|-
 +
| attributeId || Идентификатор атрибута используемого [[Платформа_3V/Справочник|'''справочника''']]
 +
|-
 +
| getFirstElementValue || Флаг на выбор только первого доступного элемента, при условии, что в справочнике пришла множественная отметка (true/false)
 +
|-
 +
| useAllInstanceElements || Флаг для выбора всех элементов справочника, а не только отмеченных в элементе управления или отметкой по умолчанию (true/false)
 +
|}
 +
 
 +
==Пример использования в качестве параметра выражения==
 +
При необходимости вычисления некоторого выражения на основании справочника - источника из блока entryDataSources используется соответствующий параметр EntryExpressionDictionarySourceParameterDto
 +
 
 +
Кейс: Собрать строковый элемент управления "Наименования договоров (строка)" из наименований договоров, которые выбраны пользователем в соответствующем элементе управления на справочнике "Договоры"
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px; overflow:auto;">
 +
<div style="font-weight:bold;line-height:1.6;">JSON серверной карточки</div>
 +
<div class="mw-collapsible-content mw-collapsed-content">
 +
<syntaxhighlight lang="JSON" line>
 +
{
 +
"id": 123,
 +
"name": "Использование в выражении параметра EntryExpressionDictionarySourceParameterDto",
 +
"description": null,
 +
"title": null,
 +
"entrySettings": null,
 +
"uiSources": [
 +
{
 +
"dataSourceId": 100,
 +
"nameTemplate": "",
 +
"displayAttribute": null,
 +
"hasMultipleValue": true,
 +
"hasNullableValue": false,
 +
"maxElements": null,
 +
"hasServerFiltration": false,
 +
"searchSettings": {
 +
"maxElements": null,
 +
"minInputChars": 2,
 +
"searchMode": "Client",
 +
"debounceMs": 300
 +
},
 +
"id": 1,
 +
"caption": "Выпадающий список договоров",
 +
"enable": true,
 +
"visible": true,
 +
"hint": null,
 +
"doActionOnChangeValue": true,
 +
"onAfterChangeValueConditionalActions": null,
 +
"onAfterChangeValueByClientConditionalActions": null,
 +
"rebuildDependentsObjectOnChange": true,
 +
"enableRuleIds": [],
 +
"visibleRuleIds": [],
 +
"access": null,
 +
"isValueChanged": false,
 +
"expressionId": null,
 +
"discriminator": "DictionarySourceEntry"
 +
},
 +
{
 +
"trimSpaces": false,
 +
"defaultValue": null,
 +
"value": null,
 +
"id": 2,
 +
"caption": "Наименования договоров (строка)",
 +
"enable": true,
 +
"visible": true,
 +
"hint": null,
 +
"doActionOnChangeValue": false,
 +
"onAfterChangeValueConditionalActions": null,
 +
"onAfterChangeValueByClientConditionalActions": null,
 +
"rebuildDependentsObjectOnChange": true,
 +
"enableRuleIds": [],
 +
"visibleRuleIds": [],
 +
"access": null,
 +
"isValueChanged": false,
 +
"expressionId": 1000,
 +
"discriminator": "StringSourceEntry"
 +
}
 +
],
 +
"entryDataSources": [
 +
{
 +
"dictionaryId": 38238,
 +
"hierarchyId": null,
 +
"filter": null,
 +
"sortingOptions": null,
 +
"groupingOptions": null,
 +
"dictionaryAttributes": null,
 +
"defaultValueExpressionId": null,
 +
"parameterId": null,
 +
"dictionarySourceSelectionMode": "None",
 +
"dataSourceAttributesAdditionsSettings": [],
 +
"externalFileStorageUrl": null,
 +
"filePrefix": null,
 +
"defaultNewElementSettings": null,
 +
"id": 100,
 +
"name": "Договоры",
 +
"isReadOnly": true,
 +
"dataEditRuleIds": [],
 +
"beforeSaveDataActions": [],
 +
"afterSaveDataActions": [],
 +
"discriminator": "DictionaryDataSource"
 +
}
 +
],
 +
"parameters": [],
 +
"binaryConditionsRules": [],
 +
"submitValidateRules": [],
 +
"expressions": [
 +
{
 +
"id": 1000,
 +
"expression": "Concatenate(', ', [1])",
 +
"returnFirstParameterValue": false,
 +
"parameters": [
 +
{
 +
"id": 1,
 +
"allowMultipleValues": true,
 +
"discriminator": "EntryExpressionDictionarySourceParameterDto",
 +
"dictionarySourceId": 100,
 +
"attributeId": 2,
 +
"getFirstElementValue": false,
 +
"useAllInstanceElements": false
 +
}
 +
],
 +
"comment": null
 +
}
 +
],
 +
"controlsValueCalculateRules": [],
 +
"actions": [],
 +
"conditionActionIdsOnOpen": [],
 +
"conditionalActions": [],
 +
"selectionSets": [],
 +
"reportTemplates": [],
 +
"useNewDependenciesBuilder": null
 +
}
 +
</syntaxhighlight>
 +
</div></div>
 +
 
 +
==Пример использования в качестве параметра отчета==
 +
При необходимости передать в качестве параметра отчета элементы справочника - источника карточки используется соответствующий параметр EntryExpressionDictionarySourceParameterDto
 +
Кейс: Отчет отображает отчетную информацию по одной или нескольким компаниям и в качестве параметра с id=1 получает отметку по интересующим договорам
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px; overflow:auto;">
 +
<div style="font-weight:bold;line-height:1.6;">JSON серверной карточки</div>
 +
<div class="mw-collapsible-content mw-collapsed-content">
 +
<syntaxhighlight lang="JSON" line>
 +
{
 +
"id": 123,
 +
"title": "Использование в отчете параметра EntryExpressionDictionarySourceParameterDto",
 +
"description": "",
 +
"uiSources": [
 +
{
 +
"dataSourceId": 100,
 +
"nameTemplate": "",
 +
"displayAttribute": null,
 +
"hasMultipleValue": true,
 +
"hasNullableValue": false,
 +
"maxElements": null,
 +
"hasServerFiltration": false,
 +
"id": 1,
 +
"caption": "Выпадающий список договоров",
 +
"enable": true,
 +
"visible": true,
 +
"hint": null,
 +
"doActionOnChangeValue": true,
 +
"onAfterChangeValueConditionalActions": null,
 +
"onAfterChangeValueByClientConditionalActions": null,
 +
"rebuildDependentsObjectOnChange": true,
 +
"enableRuleIds": [],
 +
"visibleRuleIds": [],
 +
"access": null,
 +
"isValueChanged": false,
 +
"expressionId": null,
 +
"discriminator": "DictionarySourceEntry"
 +
}
 +
],
 +
"entryDataSources": [
 +
{
 +
"dictionaryId": 38238,
 +
"hierarchyId": null,
 +
"filter": null,
 +
"sortingOptions": null,
 +
"groupingOptions": null,
 +
"dictionaryAttributes": null,
 +
"defaultValueExpressionId": null,
 +
"parameterId": null,
 +
"dictionarySourceSelectionMode": "None",
 +
"dataSourceAttributesAdditionsSettings": [],
 +
"externalFileStorageUrl": null,
 +
"filePrefix": null,
 +
"defaultNewElementSettings": null,
 +
"id": 100,
 +
"name": "Договоры",
 +
"isReadOnly": true,
 +
"dataEditRuleIds": [],
 +
"beforeSaveDataActions": [],
 +
"afterSaveDataActions": [],
 +
"discriminator": "DictionaryDataSource"
 +
},
 +
{
 +
"pivotId": 31000,
 +
"parameters": [
 +
{
 +
"id": 1,
 +
"allowMultipleValues": true,
 +
"discriminator": "EntryExpressionDictionarySourceParameterDto",
 +
"dictionarySourceId": 100,
 +
"attributeId": 1,
 +
"getFirstElementValue": false,
 +
"useAllInstanceElements": false
 +
}
 +
],
 +
"focusOnFirstCell": true,
 +
"id": 101,
 +
"name": "Отчетная информация компаний",
 +
"isReadOnly": true,
 +
"dataEditRuleIds": [],
 +
"beforeSaveDataActions": [],
 +
"afterSaveDataActions": [],
 +
"discriminator": "PivotDataSource"
 +
}
 +
],
 +
"parameters": [],
 +
"binaryConditionsRules": [],
 +
"expressions": [],
 +
"actions": [],
 +
"conditionalActions": [],
 +
"conditionActionIdsOnOpen": []
 +
}
 +
</syntaxhighlight>
 +
</div></div>

Версия 10:30, 9 апреля 2021

Параметр, который возращает коллекцию атрибутов элементов справочника - источника серверной карточки (entryDataSources) имеет следующую структуру:

1 {
2 	"id": 1,
3 	"allowMultipleValues": false,
4 	"discriminator": "EntryExpressionDictionarySourceParameterDto",
5 	"dictionarySourceId": 100,
6 	"attributeId": 1,
7 	"getFirstElementValue": false,
8 	"useAllInstanceElements": false
9 }

Описание свойств параметра

Свойство Описание
id Идентификатор параметра
allowMultipleValues Флаг об получении результата в виде коллекции значений (true/false)
discriminator EntryExpressionDictionarySourceParameterDto
dictionarySourceId Идентификатор справочника - источника серверной карточки
attributeId Идентификатор атрибута используемого справочника
getFirstElementValue Флаг на выбор только первого доступного элемента, при условии, что в справочнике пришла множественная отметка (true/false)
useAllInstanceElements Флаг для выбора всех элементов справочника, а не только отмеченных в элементе управления или отметкой по умолчанию (true/false)

Пример использования в качестве параметра выражения

При необходимости вычисления некоторого выражения на основании справочника - источника из блока entryDataSources используется соответствующий параметр EntryExpressionDictionarySourceParameterDto

Кейс: Собрать строковый элемент управления "Наименования договоров (строка)" из наименований договоров, которые выбраны пользователем в соответствующем элементе управления на справочнике "Договоры"

JSON серверной карточки
  1 {
  2 	"id": 123,
  3 	"name": "Использование в выражении параметра EntryExpressionDictionarySourceParameterDto",
  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": 1000,
 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": null
103 		}
104 	],
105 	"controlsValueCalculateRules": [],
106 	"actions": [],
107 	"conditionActionIdsOnOpen": [],
108 	"conditionalActions": [],
109 	"selectionSets": [],
110 	"reportTemplates": [],
111 	"useNewDependenciesBuilder": null
112 }

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

При необходимости передать в качестве параметра отчета элементы справочника - источника карточки используется соответствующий параметр EntryExpressionDictionarySourceParameterDto Кейс: Отчет отображает отчетную информацию по одной или нескольким компаниям и в качестве параметра с id=1 получает отметку по интересующим договорам

JSON серверной карточки
 1 {
 2 	"id": 123,
 3 	"title": "Использование в отчете параметра EntryExpressionDictionarySourceParameterDto",
 4 	"description": "",
 5 	"uiSources": [
 6 		{
 7 			"dataSourceId": 100,
 8 			"nameTemplate": "",
 9 			"displayAttribute": null,
10 			"hasMultipleValue": true,
11 			"hasNullableValue": false,
12 			"maxElements": null,
13 			"hasServerFiltration": false,
14 			"id": 1,
15 			"caption": "Выпадающий список договоров",
16 			"enable": true,
17 			"visible": true,
18 			"hint": null,
19 			"doActionOnChangeValue": true,
20 			"onAfterChangeValueConditionalActions": null,
21 			"onAfterChangeValueByClientConditionalActions": null,
22 			"rebuildDependentsObjectOnChange": true,
23 			"enableRuleIds": [],
24 			"visibleRuleIds": [],
25 			"access": null,
26 			"isValueChanged": false,
27 			"expressionId": null,
28 			"discriminator": "DictionarySourceEntry"
29 		}
30 	],
31 	"entryDataSources": [
32 		{
33 			"dictionaryId": 38238,
34 			"hierarchyId": null,
35 			"filter": null,
36 			"sortingOptions": null,
37 			"groupingOptions": null,
38 			"dictionaryAttributes": null,
39 			"defaultValueExpressionId": null,
40 			"parameterId": null,
41 			"dictionarySourceSelectionMode": "None",
42 			"dataSourceAttributesAdditionsSettings": [],
43 			"externalFileStorageUrl": null,
44 			"filePrefix": null,
45 			"defaultNewElementSettings": null,
46 			"id": 100,
47 			"name": "Договоры",
48 			"isReadOnly": true,
49 			"dataEditRuleIds": [],
50 			"beforeSaveDataActions": [],
51 			"afterSaveDataActions": [],
52 			"discriminator": "DictionaryDataSource"
53 		},
54 		{
55 			"pivotId": 31000,
56 			"parameters": [
57 				{
58 					"id": 1,
59 					"allowMultipleValues": true,
60 					"discriminator": "EntryExpressionDictionarySourceParameterDto",
61 					"dictionarySourceId": 100,
62 					"attributeId": 1,
63 					"getFirstElementValue": false,
64 					"useAllInstanceElements": false
65 				}
66 			],
67 			"focusOnFirstCell": true,
68 			"id": 101,
69 			"name": "Отчетная информация компаний",
70 			"isReadOnly": true,
71 			"dataEditRuleIds": [],
72 			"beforeSaveDataActions": [],
73 			"afterSaveDataActions": [],
74 			"discriminator": "PivotDataSource"
75 		}
76 	],
77 	"parameters": [],
78 	"binaryConditionsRules": [],
79 	"expressions": [],
80 	"actions": [],
81 	"conditionalActions": [],
82 	"conditionActionIdsOnOpen": []
83 }