Платформа 3V/Справочник/Cортировка: различия между версиями
(Новая страница: «{{DISPLAYTITLE:Сортировка источника данных на справочнике (SortingOptions)}} Последовательное располо...») |
|||
(не показано 5 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
− | {{DISPLAYTITLE:Сортировка | + | {{DISPLAYTITLE:Сортировка элементов справочника (SortingOptions)}} |
Последовательное расположение в зависимости от выбранного атрибута справочника | Последовательное расположение в зависимости от выбранного атрибута справочника | ||
Строка 21: | Строка 21: | ||
! Значение !! Описание | ! Значение !! Описание | ||
|- | |- | ||
− | | [[Платформа_3V/Справочник/Связь_атрибутов|''' | + | | [[Платформа_3V/Справочник/Связь_атрибутов|'''attribute''']] || описание пути до атрибута, по которому будет производиться сортировка |
|- | |- | ||
− | | | + | | sortDirection || Направление по убыванию / по возрастанию ("Descending" / "Ascending") |
|- | |- | ||
− | | | + | | nullsSortingMode || нулевые значения в начале / в конце ("PlaceFirst" / "PlaceLast") |
|} | |} | ||
+ | |||
+ | == Особенности использования == | ||
+ | Сортировка по атрибуту справочника с типом '''"числовой, дробный"''' происходит по математической логике упорядочивания чисел (1 < 2 < 10). | ||
+ | |||
+ | Сортировка по атрибуту справочника с типом '''"дата"''' происходит в соответствии с порядком дней в календаре. | ||
+ | |||
+ | Сортировка по '''текстовому атрибуту''' происходит по каждому символу. Порядок по возрастанию, в рамках которого происходит упорядочивание, каждого символа в названии: символы ("-", "!" и т.д.), цифры (от 0 до 9), буквы русские (от А до Я), буквы латинского алфавита ( от A до Z) | ||
+ | |||
+ | == Пример использования в форме и отчете== | ||
+ | Кейс: исходный справочник "Договоры" имеет следующую структуру и типы данных в атрибутах | ||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! Идентификатор !! Наименование !! Порядковый номер !! Сумма по договору !! Дата подписания | ||
+ | |- | ||
+ | !style="font-weight:normal;" | 1 !! style="font-weight:normal;" | 2 !! style="font-weight:normal;" | 21 !! style="font-weight:normal;" | 22 !! style="font-weight:normal;" | 23 | ||
+ | |- | ||
+ | !style="font-weight:normal;" | Числовой !! style="font-weight:normal;" | Текстовый !! style="font-weight:normal;" | Числовой !! style="font-weight:normal;" | Дробный !! style="font-weight:normal;" | Дата | ||
+ | |- | ||
+ | | 1 || 123 || 1 || 100,00 || 22.04.2021 | ||
+ | |- | ||
+ | | 2 || АБ-1-11 || 10 || 100,12 || 04.03.2021 | ||
+ | |- | ||
+ | | 3 || 1 || 2 || 98,00 || 22.04.2021 | ||
+ | |- | ||
+ | | 4 || 11 || 21 || 1,00 || | ||
+ | |- | ||
+ | | 5 || -11-АБ || 3 || 11,00 || 05.08.2019 | ||
+ | |- | ||
+ | | 6 || 2 || 11 || || 14.05.2020 | ||
+ | |} | ||
+ | |||
+ | При сортировке по возрастанию по атр. "Наименование" (id=2) порядок будет следующий: | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! Идентификатор !! Наименование !! Порядковый номер !! Сумма по договору !! Дата подписания | ||
+ | |- | ||
+ | !style="font-weight:normal;" | 1 !! style="font-weight:normal;" | 2 !! style="font-weight:normal;" | 21 !! style="font-weight:normal;" | 22 !! style="font-weight:normal;" | 23 | ||
+ | |- | ||
+ | !style="font-weight:normal;" | Числовой !! style="font-weight:normal;" | Текстовый !! style="font-weight:normal;" | Числовой !! style="font-weight:normal;" | Дробный !! style="font-weight:normal;" | Дата | ||
+ | |- | ||
+ | | 5 || '''-11-АБ''' || 3 || 11,00 || 05.08.2019 | ||
+ | |- | ||
+ | | 3 || '''1''' || 2 || 98,00 || 22.04.2021 | ||
+ | |- | ||
+ | | 4 || '''11''' || 21 || 1,00 || | ||
+ | |- | ||
+ | | 1 || '''123''' || 1 || 100,00 || 22.04.2021 | ||
+ | |- | ||
+ | | 6 || '''2''' || 11 || || 14.05.2020 | ||
+ | |- | ||
+ | | 2 || '''АБ-1-11''' || 10 || 100,12 || 04.03.2021 | ||
+ | |} | ||
+ | |||
+ | При сортировке по возрастанию по атр. "Порядковый номер" (id=21) порядок будет следующий: | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! Идентификатор !! Наименование !! Порядковый номер !! Сумма по договору !! Дата подписания | ||
+ | |- | ||
+ | !style="font-weight:normal;" | 1 !! style="font-weight:normal;" | 2 !! style="font-weight:normal;" | 21 !! style="font-weight:normal;" | 22 !! style="font-weight:normal;" | 23 | ||
+ | |- | ||
+ | !style="font-weight:normal;" | Числовой !! style="font-weight:normal;" | Текстовый !! style="font-weight:normal;" | Числовой !! style="font-weight:normal;" | Дробный !! style="font-weight:normal;" | Дата | ||
+ | |- | ||
+ | | 1 || 123 || '''1''' || 100,00 || 22.04.2021 | ||
+ | |- | ||
+ | | 3 || 1 || '''2''' || 98,00 || 22.04.2021 | ||
+ | |- | ||
+ | | 5 || -11-АБ || '''3''' || 11,00 || 05.08.2019 | ||
+ | |- | ||
+ | | 2 || АБ-1-11 || '''10''' || 100,12 || 04.03.2021 | ||
+ | |- | ||
+ | | 6 || 2 || '''11''' || || 14.05.2020 | ||
+ | |- | ||
+ | | 4 || 11 || '''21''' || 1,00 || | ||
+ | |} | ||
+ | |||
+ | При сортировке по убыванию по атр. "Сумма по договору" (id=22) и расположению пустых атрибутов в конце списка порядок будет следующий: | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! Идентификатор !! Наименование !! Порядковый номер !! Сумма по договору !! Дата подписания | ||
+ | |- | ||
+ | !style="font-weight:normal;" | 1 !! style="font-weight:normal;" | 2 !! style="font-weight:normal;" | 21 !! style="font-weight:normal;" | 22 !! style="font-weight:normal;" | 23 | ||
+ | |- | ||
+ | !style="font-weight:normal;" | Числовой !! style="font-weight:normal;" | Текстовый !! style="font-weight:normal;" | Числовой !! style="font-weight:normal;" | Дробный !! style="font-weight:normal;" | Дата | ||
+ | |- | ||
+ | | 2 || АБ-1-11 || 10 || '''100,12''' || 04.03.2021 | ||
+ | |- | ||
+ | | 1 || 123 || 1 || '''100,00''' || 22.04.2021 | ||
+ | |- | ||
+ | | 3 || 1 || 2 || '''98,00''' || 22.04.2021 | ||
+ | |- | ||
+ | | 5 || -11-АБ || 3 || '''11,00''' || 05.08.2019 | ||
+ | |- | ||
+ | | 4 || 11 || 21 || '''1,00''' || | ||
+ | |- | ||
+ | | 6 || 2 || 11 || || 14.05.2020 | ||
+ | |} | ||
+ | |||
+ | При сортировке по убыванию по атр. "Дата подписания" (id=22) и расположению пустых атрибутов в начале списка порядок будет следующий: | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! Идентификатор !! Наименование !! Порядковый номер !! Сумма по договору !! Дата подписания | ||
+ | |- | ||
+ | !style="font-weight:normal;" | 1 !! style="font-weight:normal;" | 2 !! style="font-weight:normal;" | 21 !! style="font-weight:normal;" | 22 !! style="font-weight:normal;" | 23 | ||
+ | |- | ||
+ | !style="font-weight:normal;" | Числовой !! style="font-weight:normal;" | Текстовый !! style="font-weight:normal;" | Числовой !! style="font-weight:normal;" | Дробный !! style="font-weight:normal;" | Дата | ||
+ | |- | ||
+ | | 4 || 11 || 21 || 1,00 || | ||
+ | |- | ||
+ | | 1 || 123 || 1 || 100,00 || '''22.04.2021''' | ||
+ | |- | ||
+ | | 3 || 1 || 2 || 98,00 || '''22.04.2021''' | ||
+ | |- | ||
+ | | 2 || АБ-1-11 || 10 || 100,12 || '''04.03.2021''' | ||
+ | |- | ||
+ | | 6 || 2 || 11 || || '''14.05.2020''' | ||
+ | |- | ||
+ | | 5 || -11-АБ || 3 || 11,00 || '''05.08.2019''' | ||
+ | |} | ||
+ | |||
+ | === Пример использования в форме=== | ||
+ | |||
+ | <br> | ||
+ | <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": 53, | ||
+ | "name": "Сортировка справочника договоры", | ||
+ | "description": "", | ||
+ | "title": "", | ||
+ | "entrySettings": null, | ||
+ | "uiSources": [ | ||
+ | { | ||
+ | "dataSourceId": 1, | ||
+ | "nameTemplate": "", | ||
+ | "displayAttribute": null, | ||
+ | "hasMultipleValue": false, | ||
+ | "hasNullableValue": false, | ||
+ | "maxElements": null, | ||
+ | "hasServerFiltration": false, | ||
+ | "id": 11, | ||
+ | "caption": "Без сортировки", | ||
+ | "enable": true, | ||
+ | "visible": true, | ||
+ | "hint": null, | ||
+ | "uiDataSource": null, | ||
+ | "doActionOnChangeValue": true, | ||
+ | "onAfterChangeValueConditionalActions": null, | ||
+ | "onAfterChangeValueByClientConditionalActions": null, | ||
+ | "rebuildDependentsObjectOnChange": true, | ||
+ | "enableRuleIds": [], | ||
+ | "visibleRuleIds": [], | ||
+ | "access": null, | ||
+ | "isValueChanged": true, | ||
+ | "expressionId": null, | ||
+ | "discriminator": "DictionarySourceEntry" | ||
+ | }, | ||
+ | { | ||
+ | "dataSourceId": 2, | ||
+ | "nameTemplate": "", | ||
+ | "displayAttribute": null, | ||
+ | "hasMultipleValue": false, | ||
+ | "hasNullableValue": false, | ||
+ | "maxElements": null, | ||
+ | "hasServerFiltration": false, | ||
+ | "id": 12, | ||
+ | "caption": "По возрастанию (по наименованию)", | ||
+ | "enable": true, | ||
+ | "visible": true, | ||
+ | "hint": null, | ||
+ | "uiDataSource": null, | ||
+ | "doActionOnChangeValue": true, | ||
+ | "onAfterChangeValueConditionalActions": null, | ||
+ | "onAfterChangeValueByClientConditionalActions": null, | ||
+ | "rebuildDependentsObjectOnChange": true, | ||
+ | "enableRuleIds": [], | ||
+ | "visibleRuleIds": [], | ||
+ | "access": null, | ||
+ | "isValueChanged": true, | ||
+ | "expressionId": null, | ||
+ | "discriminator": "DictionarySourceEntry" | ||
+ | }, | ||
+ | { | ||
+ | "dataSourceId": 3, | ||
+ | "nameTemplate": "[2] (Порядковый номер:[21])", | ||
+ | "displayAttribute": null, | ||
+ | "hasMultipleValue": false, | ||
+ | "hasNullableValue": false, | ||
+ | "maxElements": null, | ||
+ | "hasServerFiltration": false, | ||
+ | "id": 13, | ||
+ | "caption": "По возрастанию (по порядковому номеру)", | ||
+ | "enable": true, | ||
+ | "visible": true, | ||
+ | "hint": null, | ||
+ | "uiDataSource": null, | ||
+ | "doActionOnChangeValue": true, | ||
+ | "onAfterChangeValueConditionalActions": null, | ||
+ | "onAfterChangeValueByClientConditionalActions": null, | ||
+ | "rebuildDependentsObjectOnChange": true, | ||
+ | "enableRuleIds": [], | ||
+ | "visibleRuleIds": [], | ||
+ | "access": null, | ||
+ | "isValueChanged": true, | ||
+ | "expressionId": null, | ||
+ | "discriminator": "DictionarySourceEntry" | ||
+ | }, | ||
+ | { | ||
+ | "dataSourceId": 4, | ||
+ | "nameTemplate": "[2] (Сумма: [22])", | ||
+ | "displayAttribute": null, | ||
+ | "hasMultipleValue": false, | ||
+ | "hasNullableValue": false, | ||
+ | "maxElements": null, | ||
+ | "hasServerFiltration": false, | ||
+ | "id": 14, | ||
+ | "caption": "По убыванию (по сумме)", | ||
+ | "enable": true, | ||
+ | "visible": true, | ||
+ | "hint": null, | ||
+ | "uiDataSource": null, | ||
+ | "doActionOnChangeValue": true, | ||
+ | "onAfterChangeValueConditionalActions": null, | ||
+ | "onAfterChangeValueByClientConditionalActions": null, | ||
+ | "rebuildDependentsObjectOnChange": true, | ||
+ | "enableRuleIds": [], | ||
+ | "visibleRuleIds": [], | ||
+ | "access": null, | ||
+ | "isValueChanged": true, | ||
+ | "expressionId": null, | ||
+ | "discriminator": "DictionarySourceEntry" | ||
+ | }, | ||
+ | { | ||
+ | "dataSourceId": 5, | ||
+ | "nameTemplate": "[2] (Дата подписания: [23])", | ||
+ | "displayAttribute": null, | ||
+ | "hasMultipleValue": false, | ||
+ | "hasNullableValue": false, | ||
+ | "maxElements": null, | ||
+ | "hasServerFiltration": false, | ||
+ | "id": 15, | ||
+ | "caption": "По убыванию (по дата подписания)", | ||
+ | "enable": true, | ||
+ | "visible": true, | ||
+ | "hint": null, | ||
+ | "uiDataSource": null, | ||
+ | "doActionOnChangeValue": true, | ||
+ | "onAfterChangeValueConditionalActions": null, | ||
+ | "onAfterChangeValueByClientConditionalActions": null, | ||
+ | "rebuildDependentsObjectOnChange": true, | ||
+ | "enableRuleIds": [], | ||
+ | "visibleRuleIds": [], | ||
+ | "access": null, | ||
+ | "isValueChanged": true, | ||
+ | "expressionId": null, | ||
+ | "discriminator": "DictionarySourceEntry" | ||
+ | } | ||
+ | ], | ||
+ | "entryDataSources": [ | ||
+ | { | ||
+ | "dictionaryId": 67, | ||
+ | "hierarchyId": null, | ||
+ | "filter": null, | ||
+ | "sortingOptions": null, | ||
+ | "groupingOptions": null, | ||
+ | "dictionaryAttributes": null, | ||
+ | "defaultValue": [], | ||
+ | "defaultValueExpressionId": null, | ||
+ | "parameterId": null, | ||
+ | "dictionarySourceSelectionMode": "None", | ||
+ | "dataSourceAttributesAdditionsSettings": [], | ||
+ | "externalFileStorageUrl": null, | ||
+ | "filePrefix": null, | ||
+ | "defaultNewElementSettings": null, | ||
+ | "id": 1, | ||
+ | "name": null, | ||
+ | "isReadOnly": true, | ||
+ | "dataEditRuleIds": [], | ||
+ | "beforeSaveDataActions": [], | ||
+ | "afterSaveDataActions": [], | ||
+ | "discriminator": "DictionaryDataSource" | ||
+ | }, | ||
+ | { | ||
+ | "dictionaryId": 67, | ||
+ | "hierarchyId": null, | ||
+ | "filter": null, | ||
+ | "sortingOptions": { | ||
+ | "attributes": [ | ||
+ | { | ||
+ | "attribute": { | ||
+ | "id": 2, | ||
+ | "discriminator": "OwnAttributeDefinitionDto" | ||
+ | }, | ||
+ | "sortDirection": "Ascending", | ||
+ | "nullsSortingMode": "PlaceFirst" | ||
+ | } | ||
+ | ] | ||
+ | }, | ||
+ | "groupingOptions": null, | ||
+ | "dictionaryAttributes": null, | ||
+ | "defaultValue": [], | ||
+ | "defaultValueExpressionId": null, | ||
+ | "parameterId": null, | ||
+ | "dictionarySourceSelectionMode": "None", | ||
+ | "dataSourceAttributesAdditionsSettings": [], | ||
+ | "externalFileStorageUrl": null, | ||
+ | "filePrefix": null, | ||
+ | "defaultNewElementSettings": null, | ||
+ | "id": 2, | ||
+ | "name": null, | ||
+ | "isReadOnly": true, | ||
+ | "dataEditRuleIds": [], | ||
+ | "beforeSaveDataActions": [], | ||
+ | "afterSaveDataActions": [], | ||
+ | "discriminator": "DictionaryDataSource" | ||
+ | }, | ||
+ | { | ||
+ | "dictionaryId": 67, | ||
+ | "hierarchyId": null, | ||
+ | "filter": null, | ||
+ | "sortingOptions": { | ||
+ | "attributes": [ | ||
+ | { | ||
+ | "attribute": { | ||
+ | "id": 21, | ||
+ | "discriminator": "OwnAttributeDefinitionDto" | ||
+ | }, | ||
+ | "sortDirection": "Ascending", | ||
+ | "nullsSortingMode": "PlaceFirst" | ||
+ | } | ||
+ | ] | ||
+ | }, | ||
+ | "groupingOptions": null, | ||
+ | "dictionaryAttributes": null, | ||
+ | "defaultValue": [], | ||
+ | "defaultValueExpressionId": null, | ||
+ | "parameterId": null, | ||
+ | "dictionarySourceSelectionMode": "None", | ||
+ | "dataSourceAttributesAdditionsSettings": [], | ||
+ | "externalFileStorageUrl": null, | ||
+ | "filePrefix": null, | ||
+ | "defaultNewElementSettings": null, | ||
+ | "id": 3, | ||
+ | "name": null, | ||
+ | "isReadOnly": true, | ||
+ | "dataEditRuleIds": [], | ||
+ | "beforeSaveDataActions": [], | ||
+ | "afterSaveDataActions": [], | ||
+ | "discriminator": "DictionaryDataSource" | ||
+ | }, | ||
+ | { | ||
+ | "dictionaryId": 67, | ||
+ | "hierarchyId": null, | ||
+ | "filter": null, | ||
+ | "sortingOptions": { | ||
+ | "attributes": [ | ||
+ | { | ||
+ | "attribute": { | ||
+ | "id": 22, | ||
+ | "discriminator": "OwnAttributeDefinitionDto" | ||
+ | }, | ||
+ | "sortDirection": "Descending", | ||
+ | "nullsSortingMode": "PlaceLast" | ||
+ | } | ||
+ | ] | ||
+ | }, | ||
+ | "groupingOptions": null, | ||
+ | "dictionaryAttributes": null, | ||
+ | "defaultValue": [], | ||
+ | "defaultValueExpressionId": null, | ||
+ | "parameterId": null, | ||
+ | "dictionarySourceSelectionMode": "None", | ||
+ | "dataSourceAttributesAdditionsSettings": [], | ||
+ | "externalFileStorageUrl": null, | ||
+ | "filePrefix": null, | ||
+ | "defaultNewElementSettings": null, | ||
+ | "id": 4, | ||
+ | "name": null, | ||
+ | "isReadOnly": true, | ||
+ | "dataEditRuleIds": [], | ||
+ | "beforeSaveDataActions": [], | ||
+ | "afterSaveDataActions": [], | ||
+ | "discriminator": "DictionaryDataSource" | ||
+ | }, | ||
+ | { | ||
+ | "dictionaryId": 67, | ||
+ | "hierarchyId": null, | ||
+ | "filter": null, | ||
+ | "sortingOptions": { | ||
+ | "attributes": [ | ||
+ | { | ||
+ | "attribute": { | ||
+ | "id": 23, | ||
+ | "discriminator": "OwnAttributeDefinitionDto" | ||
+ | }, | ||
+ | "sortDirection": "Descending", | ||
+ | "nullsSortingMode": "PlaceFirst" | ||
+ | } | ||
+ | ] | ||
+ | }, | ||
+ | "groupingOptions": null, | ||
+ | "dictionaryAttributes": null, | ||
+ | "defaultValue": [], | ||
+ | "defaultValueExpressionId": null, | ||
+ | "parameterId": null, | ||
+ | "dictionarySourceSelectionMode": "None", | ||
+ | "dataSourceAttributesAdditionsSettings": [], | ||
+ | "externalFileStorageUrl": null, | ||
+ | "filePrefix": null, | ||
+ | "defaultNewElementSettings": null, | ||
+ | "id": 5, | ||
+ | "name": null, | ||
+ | "isReadOnly": true, | ||
+ | "dataEditRuleIds": [], | ||
+ | "beforeSaveDataActions": [], | ||
+ | "afterSaveDataActions": [], | ||
+ | "discriminator": "DictionaryDataSource" | ||
+ | } | ||
+ | ], | ||
+ | "parameters": [], | ||
+ | "binaryConditionsRules": [], | ||
+ | "submitValidateRules": [], | ||
+ | "expressions": [], | ||
+ | "controlsValueCalculateRules": [], | ||
+ | "actions": [], | ||
+ | "conditionActionIdsOnOpen": [], | ||
+ | "conditionalActions": [], | ||
+ | "selectionSets": [], | ||
+ | "reportTemplates": [], | ||
+ | "useNewDependenciesBuilder": null | ||
+ | } | ||
+ | </syntaxhighlight> | ||
+ | </div></div> | ||
+ | <br> | ||
+ | [[Файл:Сортировки в форме.jpg|600px|безрамки|без]] | ||
+ | === Пример использования в отчете=== | ||
+ | |||
+ | <br> | ||
+ | <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> | ||
+ | { | ||
+ | "workflowId": null, | ||
+ | "leftHeader": { | ||
+ | "useLazyDataLoadingStrategy": false, | ||
+ | "dictionaries": [ | ||
+ | { | ||
+ | "showDataIfAbsentFilter": null, | ||
+ | "coordAttribute": null, | ||
+ | "cartesianOptions": "Default", | ||
+ | "canSelectAttribute": null, | ||
+ | "groupingOptions": null, | ||
+ | "groupingMethod": "Default", | ||
+ | "sortingOptions": { | ||
+ | "attributes": [ | ||
+ | { | ||
+ | "attribute": { | ||
+ | "id": 2, | ||
+ | "discriminator": "OwnAttributeDefinitionDto" | ||
+ | }, | ||
+ | "sortDirection": "Ascending", | ||
+ | "nullsSortingMode": "PlaceFirst" | ||
+ | } | ||
+ | ] | ||
+ | }, | ||
+ | "rootElement": null, | ||
+ | "virtualElements": null, | ||
+ | "displayValueOptions": null, | ||
+ | "displayAttribute": null, | ||
+ | "dictionaryId": 67, | ||
+ | "filter": { | ||
+ | "value": null, | ||
+ | "skipIfValueNull": false, | ||
+ | "attributeId": null, | ||
+ | "attribute": { | ||
+ | "id": 1, | ||
+ | "discriminator": "OwnAttributeDefinitionDto" | ||
+ | }, | ||
+ | "conditionType": "AllElements", | ||
+ | "inversion": false, | ||
+ | "discriminator": "ValueConditionalDictionaryFilterDto" | ||
+ | }, | ||
+ | "selection": null, | ||
+ | "hierarchyId": null, | ||
+ | "limit": null | ||
+ | } | ||
+ | ], | ||
+ | "dictionaryAttributesLinks": [], | ||
+ | "specialFilters": { | ||
+ | "filtersByDataOptions": { | ||
+ | "filtersByData": [], | ||
+ | "needRestoreFullHierachy": false, | ||
+ | "joinOption": "Or", | ||
+ | "restoreElements": null | ||
+ | }, | ||
+ | "dictionaryAttributesLinks": [], | ||
+ | "needRestoreFullHierachy": false, | ||
+ | "restoreElements": null | ||
+ | }, | ||
+ | "isEditable": false | ||
+ | }, | ||
+ | "topHeader": { | ||
+ | "topHeaderItems": [ | ||
+ | { | ||
+ | "dictionaryAttributes": [ | ||
+ | { | ||
+ | "dictionaryId": 67, | ||
+ | "attribute": { | ||
+ | "id": 2, | ||
+ | "discriminator": "OwnAttributeDefinitionDto" | ||
+ | }, | ||
+ | "filter": null, | ||
+ | "sortingOptions": null, | ||
+ | "attributeId": null, | ||
+ | "displayAttributeType": "AttributeName", | ||
+ | "displayAttributeName": null, | ||
+ | "addFirstElementValue": false, | ||
+ | "overwriteNotFirstElementValues": true, | ||
+ | "delimiter": ", ", | ||
+ | "hideAttributeNameInHeader": false, | ||
+ | "headerNameDelimiter": " / ", | ||
+ | "duplicateValuesForNextDictionaries": true, | ||
+ | "duplicateValuesForNextRows": true, | ||
+ | "displayValueOptions": null, | ||
+ | "linkedAttributeSettings": null, | ||
+ | "skippedFilterAttributesByLink": [], | ||
+ | "filterOptionsByLinks": null | ||
+ | } | ||
+ | ], | ||
+ | "settings": null, | ||
+ | "hyperlinkOptions": null, | ||
+ | "hasImage": false, | ||
+ | "columnOptions": null, | ||
+ | "discriminator": "AttributeHeaderItemDto" | ||
+ | }, | ||
+ | { | ||
+ | "dictionaryAttributes": [ | ||
+ | { | ||
+ | "dictionaryId": 67, | ||
+ | "attribute": { | ||
+ | "id": 21, | ||
+ | "discriminator": "OwnAttributeDefinitionDto" | ||
+ | }, | ||
+ | "filter": null, | ||
+ | "sortingOptions": null, | ||
+ | "attributeId": null, | ||
+ | "displayAttributeType": "AttributeName", | ||
+ | "displayAttributeName": null, | ||
+ | "addFirstElementValue": false, | ||
+ | "overwriteNotFirstElementValues": true, | ||
+ | "delimiter": ", ", | ||
+ | "hideAttributeNameInHeader": false, | ||
+ | "headerNameDelimiter": " / ", | ||
+ | "duplicateValuesForNextDictionaries": true, | ||
+ | "duplicateValuesForNextRows": true, | ||
+ | "displayValueOptions": null, | ||
+ | "linkedAttributeSettings": null, | ||
+ | "skippedFilterAttributesByLink": [], | ||
+ | "filterOptionsByLinks": null | ||
+ | } | ||
+ | ], | ||
+ | "settings": null, | ||
+ | "hyperlinkOptions": null, | ||
+ | "hasImage": false, | ||
+ | "columnOptions": null, | ||
+ | "discriminator": "AttributeHeaderItemDto" | ||
+ | }, | ||
+ | { | ||
+ | "dictionaryAttributes": [ | ||
+ | { | ||
+ | "dictionaryId": 67, | ||
+ | "attribute": { | ||
+ | "id": 22, | ||
+ | "discriminator": "OwnAttributeDefinitionDto" | ||
+ | }, | ||
+ | "filter": null, | ||
+ | "sortingOptions": null, | ||
+ | "attributeId": null, | ||
+ | "displayAttributeType": "AttributeName", | ||
+ | "displayAttributeName": null, | ||
+ | "addFirstElementValue": false, | ||
+ | "overwriteNotFirstElementValues": true, | ||
+ | "delimiter": ", ", | ||
+ | "hideAttributeNameInHeader": false, | ||
+ | "headerNameDelimiter": " / ", | ||
+ | "duplicateValuesForNextDictionaries": true, | ||
+ | "duplicateValuesForNextRows": true, | ||
+ | "displayValueOptions": null, | ||
+ | "linkedAttributeSettings": null, | ||
+ | "skippedFilterAttributesByLink": [], | ||
+ | "filterOptionsByLinks": null | ||
+ | } | ||
+ | ], | ||
+ | "settings": null, | ||
+ | "hyperlinkOptions": null, | ||
+ | "hasImage": false, | ||
+ | "columnOptions": null, | ||
+ | "discriminator": "AttributeHeaderItemDto" | ||
+ | }, | ||
+ | { | ||
+ | "dictionaryAttributes": [ | ||
+ | { | ||
+ | "dictionaryId": 67, | ||
+ | "attribute": { | ||
+ | "id": 23, | ||
+ | "discriminator": "OwnAttributeDefinitionDto" | ||
+ | }, | ||
+ | "filter": null, | ||
+ | "sortingOptions": null, | ||
+ | "attributeId": null, | ||
+ | "displayAttributeType": "AttributeName", | ||
+ | "displayAttributeName": null, | ||
+ | "addFirstElementValue": false, | ||
+ | "overwriteNotFirstElementValues": true, | ||
+ | "delimiter": ", ", | ||
+ | "hideAttributeNameInHeader": false, | ||
+ | "headerNameDelimiter": " / ", | ||
+ | "duplicateValuesForNextDictionaries": true, | ||
+ | "duplicateValuesForNextRows": true, | ||
+ | "displayValueOptions": null, | ||
+ | "linkedAttributeSettings": null, | ||
+ | "skippedFilterAttributesByLink": [], | ||
+ | "filterOptionsByLinks": null | ||
+ | } | ||
+ | ], | ||
+ | "settings": null, | ||
+ | "hyperlinkOptions": null, | ||
+ | "hasImage": false, | ||
+ | "columnOptions": null, | ||
+ | "discriminator": "AttributeHeaderItemDto" | ||
+ | } | ||
+ | ], | ||
+ | "needFilterAttributesByLinks": false, | ||
+ | "enableFilterByLinks": false, | ||
+ | "numerationSettings": null, | ||
+ | "filterOptions": null | ||
+ | }, | ||
+ | "parameters": [], | ||
+ | "styles": [], | ||
+ | "styleOptions": [], | ||
+ | "stylesTemplate": [], | ||
+ | "filtersByDataOptions": null, | ||
+ | "view": null, | ||
+ | "externalExecutions": null, | ||
+ | "settings": null, | ||
+ | "code": "P_Сортировка элементов справочника (SortingOptions)", | ||
+ | "id": 82, | ||
+ | "name": "Сортировка элементов справочника (SortingOptions)" | ||
+ | } | ||
+ | </syntaxhighlight> | ||
+ | </div></div> | ||
+ | <br> | ||
+ | [[Файл:Сортировка в отчете.jpg|600px|безрамки|без]] |
Текущая версия на 13:14, 22 апреля 2021
Последовательное расположение в зависимости от выбранного атрибута справочника
1 "sortingOptions": {
2 "attributes": [
3 {
4 "attribute": {
5 "id": 1,
6 "discriminator": "OwnAttributeDefinitionDto"
7 },
8 "sortDirection": "Descending",
9 "nullsSortingMode": "PlaceFirst"
10 }
11 ]
12 }
Значение | Описание |
---|---|
attribute | описание пути до атрибута, по которому будет производиться сортировка |
sortDirection | Направление по убыванию / по возрастанию ("Descending" / "Ascending") |
nullsSortingMode | нулевые значения в начале / в конце ("PlaceFirst" / "PlaceLast") |
Содержание
Особенности использования
Сортировка по атрибуту справочника с типом "числовой, дробный" происходит по математической логике упорядочивания чисел (1 < 2 < 10).
Сортировка по атрибуту справочника с типом "дата" происходит в соответствии с порядком дней в календаре.
Сортировка по текстовому атрибуту происходит по каждому символу. Порядок по возрастанию, в рамках которого происходит упорядочивание, каждого символа в названии: символы ("-", "!" и т.д.), цифры (от 0 до 9), буквы русские (от А до Я), буквы латинского алфавита ( от A до Z)
Пример использования в форме и отчете
Кейс: исходный справочник "Договоры" имеет следующую структуру и типы данных в атрибутах
Идентификатор | Наименование | Порядковый номер | Сумма по договору | Дата подписания |
---|---|---|---|---|
1 | 2 | 21 | 22 | 23 |
Числовой | Текстовый | Числовой | Дробный | Дата |
1 | 123 | 1 | 100,00 | 22.04.2021 |
2 | АБ-1-11 | 10 | 100,12 | 04.03.2021 |
3 | 1 | 2 | 98,00 | 22.04.2021 |
4 | 11 | 21 | 1,00 | |
5 | -11-АБ | 3 | 11,00 | 05.08.2019 |
6 | 2 | 11 | 14.05.2020 |
При сортировке по возрастанию по атр. "Наименование" (id=2) порядок будет следующий:
Идентификатор | Наименование | Порядковый номер | Сумма по договору | Дата подписания |
---|---|---|---|---|
1 | 2 | 21 | 22 | 23 |
Числовой | Текстовый | Числовой | Дробный | Дата |
5 | -11-АБ | 3 | 11,00 | 05.08.2019 |
3 | 1 | 2 | 98,00 | 22.04.2021 |
4 | 11 | 21 | 1,00 | |
1 | 123 | 1 | 100,00 | 22.04.2021 |
6 | 2 | 11 | 14.05.2020 | |
2 | АБ-1-11 | 10 | 100,12 | 04.03.2021 |
При сортировке по возрастанию по атр. "Порядковый номер" (id=21) порядок будет следующий:
Идентификатор | Наименование | Порядковый номер | Сумма по договору | Дата подписания |
---|---|---|---|---|
1 | 2 | 21 | 22 | 23 |
Числовой | Текстовый | Числовой | Дробный | Дата |
1 | 123 | 1 | 100,00 | 22.04.2021 |
3 | 1 | 2 | 98,00 | 22.04.2021 |
5 | -11-АБ | 3 | 11,00 | 05.08.2019 |
2 | АБ-1-11 | 10 | 100,12 | 04.03.2021 |
6 | 2 | 11 | 14.05.2020 | |
4 | 11 | 21 | 1,00 |
При сортировке по убыванию по атр. "Сумма по договору" (id=22) и расположению пустых атрибутов в конце списка порядок будет следующий:
Идентификатор | Наименование | Порядковый номер | Сумма по договору | Дата подписания |
---|---|---|---|---|
1 | 2 | 21 | 22 | 23 |
Числовой | Текстовый | Числовой | Дробный | Дата |
2 | АБ-1-11 | 10 | 100,12 | 04.03.2021 |
1 | 123 | 1 | 100,00 | 22.04.2021 |
3 | 1 | 2 | 98,00 | 22.04.2021 |
5 | -11-АБ | 3 | 11,00 | 05.08.2019 |
4 | 11 | 21 | 1,00 | |
6 | 2 | 11 | 14.05.2020 |
При сортировке по убыванию по атр. "Дата подписания" (id=22) и расположению пустых атрибутов в начале списка порядок будет следующий:
Идентификатор | Наименование | Порядковый номер | Сумма по договору | Дата подписания |
---|---|---|---|---|
1 | 2 | 21 | 22 | 23 |
Числовой | Текстовый | Числовой | Дробный | Дата |
4 | 11 | 21 | 1,00 | |
1 | 123 | 1 | 100,00 | 22.04.2021 |
3 | 1 | 2 | 98,00 | 22.04.2021 |
2 | АБ-1-11 | 10 | 100,12 | 04.03.2021 |
6 | 2 | 11 | 14.05.2020 | |
5 | -11-АБ | 3 | 11,00 | 05.08.2019 |
Пример использования в форме
1 {
2 "id": 53,
3 "name": "Сортировка справочника договоры",
4 "description": "",
5 "title": "",
6 "entrySettings": null,
7 "uiSources": [
8 {
9 "dataSourceId": 1,
10 "nameTemplate": "",
11 "displayAttribute": null,
12 "hasMultipleValue": false,
13 "hasNullableValue": false,
14 "maxElements": null,
15 "hasServerFiltration": false,
16 "id": 11,
17 "caption": "Без сортировки",
18 "enable": true,
19 "visible": true,
20 "hint": null,
21 "uiDataSource": null,
22 "doActionOnChangeValue": true,
23 "onAfterChangeValueConditionalActions": null,
24 "onAfterChangeValueByClientConditionalActions": null,
25 "rebuildDependentsObjectOnChange": true,
26 "enableRuleIds": [],
27 "visibleRuleIds": [],
28 "access": null,
29 "isValueChanged": true,
30 "expressionId": null,
31 "discriminator": "DictionarySourceEntry"
32 },
33 {
34 "dataSourceId": 2,
35 "nameTemplate": "",
36 "displayAttribute": null,
37 "hasMultipleValue": false,
38 "hasNullableValue": false,
39 "maxElements": null,
40 "hasServerFiltration": false,
41 "id": 12,
42 "caption": "По возрастанию (по наименованию)",
43 "enable": true,
44 "visible": true,
45 "hint": null,
46 "uiDataSource": null,
47 "doActionOnChangeValue": true,
48 "onAfterChangeValueConditionalActions": null,
49 "onAfterChangeValueByClientConditionalActions": null,
50 "rebuildDependentsObjectOnChange": true,
51 "enableRuleIds": [],
52 "visibleRuleIds": [],
53 "access": null,
54 "isValueChanged": true,
55 "expressionId": null,
56 "discriminator": "DictionarySourceEntry"
57 },
58 {
59 "dataSourceId": 3,
60 "nameTemplate": "[2] (Порядковый номер:[21])",
61 "displayAttribute": null,
62 "hasMultipleValue": false,
63 "hasNullableValue": false,
64 "maxElements": null,
65 "hasServerFiltration": false,
66 "id": 13,
67 "caption": "По возрастанию (по порядковому номеру)",
68 "enable": true,
69 "visible": true,
70 "hint": null,
71 "uiDataSource": null,
72 "doActionOnChangeValue": true,
73 "onAfterChangeValueConditionalActions": null,
74 "onAfterChangeValueByClientConditionalActions": null,
75 "rebuildDependentsObjectOnChange": true,
76 "enableRuleIds": [],
77 "visibleRuleIds": [],
78 "access": null,
79 "isValueChanged": true,
80 "expressionId": null,
81 "discriminator": "DictionarySourceEntry"
82 },
83 {
84 "dataSourceId": 4,
85 "nameTemplate": "[2] (Сумма: [22])",
86 "displayAttribute": null,
87 "hasMultipleValue": false,
88 "hasNullableValue": false,
89 "maxElements": null,
90 "hasServerFiltration": false,
91 "id": 14,
92 "caption": "По убыванию (по сумме)",
93 "enable": true,
94 "visible": true,
95 "hint": null,
96 "uiDataSource": null,
97 "doActionOnChangeValue": true,
98 "onAfterChangeValueConditionalActions": null,
99 "onAfterChangeValueByClientConditionalActions": null,
100 "rebuildDependentsObjectOnChange": true,
101 "enableRuleIds": [],
102 "visibleRuleIds": [],
103 "access": null,
104 "isValueChanged": true,
105 "expressionId": null,
106 "discriminator": "DictionarySourceEntry"
107 },
108 {
109 "dataSourceId": 5,
110 "nameTemplate": "[2] (Дата подписания: [23])",
111 "displayAttribute": null,
112 "hasMultipleValue": false,
113 "hasNullableValue": false,
114 "maxElements": null,
115 "hasServerFiltration": false,
116 "id": 15,
117 "caption": "По убыванию (по дата подписания)",
118 "enable": true,
119 "visible": true,
120 "hint": null,
121 "uiDataSource": null,
122 "doActionOnChangeValue": true,
123 "onAfterChangeValueConditionalActions": null,
124 "onAfterChangeValueByClientConditionalActions": null,
125 "rebuildDependentsObjectOnChange": true,
126 "enableRuleIds": [],
127 "visibleRuleIds": [],
128 "access": null,
129 "isValueChanged": true,
130 "expressionId": null,
131 "discriminator": "DictionarySourceEntry"
132 }
133 ],
134 "entryDataSources": [
135 {
136 "dictionaryId": 67,
137 "hierarchyId": null,
138 "filter": null,
139 "sortingOptions": null,
140 "groupingOptions": null,
141 "dictionaryAttributes": null,
142 "defaultValue": [],
143 "defaultValueExpressionId": null,
144 "parameterId": null,
145 "dictionarySourceSelectionMode": "None",
146 "dataSourceAttributesAdditionsSettings": [],
147 "externalFileStorageUrl": null,
148 "filePrefix": null,
149 "defaultNewElementSettings": null,
150 "id": 1,
151 "name": null,
152 "isReadOnly": true,
153 "dataEditRuleIds": [],
154 "beforeSaveDataActions": [],
155 "afterSaveDataActions": [],
156 "discriminator": "DictionaryDataSource"
157 },
158 {
159 "dictionaryId": 67,
160 "hierarchyId": null,
161 "filter": null,
162 "sortingOptions": {
163 "attributes": [
164 {
165 "attribute": {
166 "id": 2,
167 "discriminator": "OwnAttributeDefinitionDto"
168 },
169 "sortDirection": "Ascending",
170 "nullsSortingMode": "PlaceFirst"
171 }
172 ]
173 },
174 "groupingOptions": null,
175 "dictionaryAttributes": null,
176 "defaultValue": [],
177 "defaultValueExpressionId": null,
178 "parameterId": null,
179 "dictionarySourceSelectionMode": "None",
180 "dataSourceAttributesAdditionsSettings": [],
181 "externalFileStorageUrl": null,
182 "filePrefix": null,
183 "defaultNewElementSettings": null,
184 "id": 2,
185 "name": null,
186 "isReadOnly": true,
187 "dataEditRuleIds": [],
188 "beforeSaveDataActions": [],
189 "afterSaveDataActions": [],
190 "discriminator": "DictionaryDataSource"
191 },
192 {
193 "dictionaryId": 67,
194 "hierarchyId": null,
195 "filter": null,
196 "sortingOptions": {
197 "attributes": [
198 {
199 "attribute": {
200 "id": 21,
201 "discriminator": "OwnAttributeDefinitionDto"
202 },
203 "sortDirection": "Ascending",
204 "nullsSortingMode": "PlaceFirst"
205 }
206 ]
207 },
208 "groupingOptions": null,
209 "dictionaryAttributes": null,
210 "defaultValue": [],
211 "defaultValueExpressionId": null,
212 "parameterId": null,
213 "dictionarySourceSelectionMode": "None",
214 "dataSourceAttributesAdditionsSettings": [],
215 "externalFileStorageUrl": null,
216 "filePrefix": null,
217 "defaultNewElementSettings": null,
218 "id": 3,
219 "name": null,
220 "isReadOnly": true,
221 "dataEditRuleIds": [],
222 "beforeSaveDataActions": [],
223 "afterSaveDataActions": [],
224 "discriminator": "DictionaryDataSource"
225 },
226 {
227 "dictionaryId": 67,
228 "hierarchyId": null,
229 "filter": null,
230 "sortingOptions": {
231 "attributes": [
232 {
233 "attribute": {
234 "id": 22,
235 "discriminator": "OwnAttributeDefinitionDto"
236 },
237 "sortDirection": "Descending",
238 "nullsSortingMode": "PlaceLast"
239 }
240 ]
241 },
242 "groupingOptions": null,
243 "dictionaryAttributes": null,
244 "defaultValue": [],
245 "defaultValueExpressionId": null,
246 "parameterId": null,
247 "dictionarySourceSelectionMode": "None",
248 "dataSourceAttributesAdditionsSettings": [],
249 "externalFileStorageUrl": null,
250 "filePrefix": null,
251 "defaultNewElementSettings": null,
252 "id": 4,
253 "name": null,
254 "isReadOnly": true,
255 "dataEditRuleIds": [],
256 "beforeSaveDataActions": [],
257 "afterSaveDataActions": [],
258 "discriminator": "DictionaryDataSource"
259 },
260 {
261 "dictionaryId": 67,
262 "hierarchyId": null,
263 "filter": null,
264 "sortingOptions": {
265 "attributes": [
266 {
267 "attribute": {
268 "id": 23,
269 "discriminator": "OwnAttributeDefinitionDto"
270 },
271 "sortDirection": "Descending",
272 "nullsSortingMode": "PlaceFirst"
273 }
274 ]
275 },
276 "groupingOptions": null,
277 "dictionaryAttributes": null,
278 "defaultValue": [],
279 "defaultValueExpressionId": null,
280 "parameterId": null,
281 "dictionarySourceSelectionMode": "None",
282 "dataSourceAttributesAdditionsSettings": [],
283 "externalFileStorageUrl": null,
284 "filePrefix": null,
285 "defaultNewElementSettings": null,
286 "id": 5,
287 "name": null,
288 "isReadOnly": true,
289 "dataEditRuleIds": [],
290 "beforeSaveDataActions": [],
291 "afterSaveDataActions": [],
292 "discriminator": "DictionaryDataSource"
293 }
294 ],
295 "parameters": [],
296 "binaryConditionsRules": [],
297 "submitValidateRules": [],
298 "expressions": [],
299 "controlsValueCalculateRules": [],
300 "actions": [],
301 "conditionActionIdsOnOpen": [],
302 "conditionalActions": [],
303 "selectionSets": [],
304 "reportTemplates": [],
305 "useNewDependenciesBuilder": null
306 }
Пример использования в отчете
1 {
2 "workflowId": null,
3 "leftHeader": {
4 "useLazyDataLoadingStrategy": false,
5 "dictionaries": [
6 {
7 "showDataIfAbsentFilter": null,
8 "coordAttribute": null,
9 "cartesianOptions": "Default",
10 "canSelectAttribute": null,
11 "groupingOptions": null,
12 "groupingMethod": "Default",
13 "sortingOptions": {
14 "attributes": [
15 {
16 "attribute": {
17 "id": 2,
18 "discriminator": "OwnAttributeDefinitionDto"
19 },
20 "sortDirection": "Ascending",
21 "nullsSortingMode": "PlaceFirst"
22 }
23 ]
24 },
25 "rootElement": null,
26 "virtualElements": null,
27 "displayValueOptions": null,
28 "displayAttribute": null,
29 "dictionaryId": 67,
30 "filter": {
31 "value": null,
32 "skipIfValueNull": false,
33 "attributeId": null,
34 "attribute": {
35 "id": 1,
36 "discriminator": "OwnAttributeDefinitionDto"
37 },
38 "conditionType": "AllElements",
39 "inversion": false,
40 "discriminator": "ValueConditionalDictionaryFilterDto"
41 },
42 "selection": null,
43 "hierarchyId": null,
44 "limit": null
45 }
46 ],
47 "dictionaryAttributesLinks": [],
48 "specialFilters": {
49 "filtersByDataOptions": {
50 "filtersByData": [],
51 "needRestoreFullHierachy": false,
52 "joinOption": "Or",
53 "restoreElements": null
54 },
55 "dictionaryAttributesLinks": [],
56 "needRestoreFullHierachy": false,
57 "restoreElements": null
58 },
59 "isEditable": false
60 },
61 "topHeader": {
62 "topHeaderItems": [
63 {
64 "dictionaryAttributes": [
65 {
66 "dictionaryId": 67,
67 "attribute": {
68 "id": 2,
69 "discriminator": "OwnAttributeDefinitionDto"
70 },
71 "filter": null,
72 "sortingOptions": null,
73 "attributeId": null,
74 "displayAttributeType": "AttributeName",
75 "displayAttributeName": null,
76 "addFirstElementValue": false,
77 "overwriteNotFirstElementValues": true,
78 "delimiter": ", ",
79 "hideAttributeNameInHeader": false,
80 "headerNameDelimiter": " / ",
81 "duplicateValuesForNextDictionaries": true,
82 "duplicateValuesForNextRows": true,
83 "displayValueOptions": null,
84 "linkedAttributeSettings": null,
85 "skippedFilterAttributesByLink": [],
86 "filterOptionsByLinks": null
87 }
88 ],
89 "settings": null,
90 "hyperlinkOptions": null,
91 "hasImage": false,
92 "columnOptions": null,
93 "discriminator": "AttributeHeaderItemDto"
94 },
95 {
96 "dictionaryAttributes": [
97 {
98 "dictionaryId": 67,
99 "attribute": {
100 "id": 21,
101 "discriminator": "OwnAttributeDefinitionDto"
102 },
103 "filter": null,
104 "sortingOptions": null,
105 "attributeId": null,
106 "displayAttributeType": "AttributeName",
107 "displayAttributeName": null,
108 "addFirstElementValue": false,
109 "overwriteNotFirstElementValues": true,
110 "delimiter": ", ",
111 "hideAttributeNameInHeader": false,
112 "headerNameDelimiter": " / ",
113 "duplicateValuesForNextDictionaries": true,
114 "duplicateValuesForNextRows": true,
115 "displayValueOptions": null,
116 "linkedAttributeSettings": null,
117 "skippedFilterAttributesByLink": [],
118 "filterOptionsByLinks": null
119 }
120 ],
121 "settings": null,
122 "hyperlinkOptions": null,
123 "hasImage": false,
124 "columnOptions": null,
125 "discriminator": "AttributeHeaderItemDto"
126 },
127 {
128 "dictionaryAttributes": [
129 {
130 "dictionaryId": 67,
131 "attribute": {
132 "id": 22,
133 "discriminator": "OwnAttributeDefinitionDto"
134 },
135 "filter": null,
136 "sortingOptions": null,
137 "attributeId": null,
138 "displayAttributeType": "AttributeName",
139 "displayAttributeName": null,
140 "addFirstElementValue": false,
141 "overwriteNotFirstElementValues": true,
142 "delimiter": ", ",
143 "hideAttributeNameInHeader": false,
144 "headerNameDelimiter": " / ",
145 "duplicateValuesForNextDictionaries": true,
146 "duplicateValuesForNextRows": true,
147 "displayValueOptions": null,
148 "linkedAttributeSettings": null,
149 "skippedFilterAttributesByLink": [],
150 "filterOptionsByLinks": null
151 }
152 ],
153 "settings": null,
154 "hyperlinkOptions": null,
155 "hasImage": false,
156 "columnOptions": null,
157 "discriminator": "AttributeHeaderItemDto"
158 },
159 {
160 "dictionaryAttributes": [
161 {
162 "dictionaryId": 67,
163 "attribute": {
164 "id": 23,
165 "discriminator": "OwnAttributeDefinitionDto"
166 },
167 "filter": null,
168 "sortingOptions": null,
169 "attributeId": null,
170 "displayAttributeType": "AttributeName",
171 "displayAttributeName": null,
172 "addFirstElementValue": false,
173 "overwriteNotFirstElementValues": true,
174 "delimiter": ", ",
175 "hideAttributeNameInHeader": false,
176 "headerNameDelimiter": " / ",
177 "duplicateValuesForNextDictionaries": true,
178 "duplicateValuesForNextRows": true,
179 "displayValueOptions": null,
180 "linkedAttributeSettings": null,
181 "skippedFilterAttributesByLink": [],
182 "filterOptionsByLinks": null
183 }
184 ],
185 "settings": null,
186 "hyperlinkOptions": null,
187 "hasImage": false,
188 "columnOptions": null,
189 "discriminator": "AttributeHeaderItemDto"
190 }
191 ],
192 "needFilterAttributesByLinks": false,
193 "enableFilterByLinks": false,
194 "numerationSettings": null,
195 "filterOptions": null
196 },
197 "parameters": [],
198 "styles": [],
199 "styleOptions": [],
200 "stylesTemplate": [],
201 "filtersByDataOptions": null,
202 "view": null,
203 "externalExecutions": null,
204 "settings": null,
205 "code": "P_Сортировка элементов справочника (SortingOptions)",
206 "id": 82,
207 "name": "Сортировка элементов справочника (SortingOptions)"
208 }