Платформа 3V/Справочник/Альтернативные иерархии: различия между версиями

Материал из 3v-wiki
Перейти к навигации Перейти к поиску
Строка 61: Строка 61:
 
</syntaxhighlight>  
 
</syntaxhighlight>  
  
==Пример==
+
== Пример ==
В справочнике настроить альтернативную иерархию
 
  
<syntaxhighlight lang="JSON" line>  
+
Необходимо при открытии справочника с пивоте настроить иерархию для наглядности
"hierarchies": [
+
 
 +
[[Файл:справочник.png|мини|слева]]<br><br><br><br><br><br><br><br><br><br><br><br><br><br>
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
Для этого настроим альтернативную иерархию:
 +
{| class="wikitable"
 +
|-
 +
| <syntaxhighlight lang="JSON" line>
 +
  ...
 +
  "hierarchies": [
 
     {
 
     {
 
       "id": 1,
 
       "id": 1,
Строка 72: Строка 85:
 
           "id": 4,
 
           "id": 4,
 
           "parentId": null
 
           "parentId": null
 +
        },
 +
        {
 +
          "id": 1,
 +
          "parentId": 4
 +
        },
 +
        {
 +
          "id": 3,
 +
          "parentId": 4
 
         },
 
         },
 
         {
 
         {
Строка 98: Строка 119:
 
         },
 
         },
 
         {
 
         {
           "id": 1,
+
           "id": 11,
           "parentId": null
+
           "parentId": 4
 +
        },
 +
        {
 +
          "id": 2,
 +
          "parentId": 7
 
         }
 
         }
 
       ]
 
       ]
 
     }
 
     }
   ],
+
   ...
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
|}
 +
{| class="wikitable"
 +
  
В источнике серверной карточки передать идентификатор '''hierarchyId'''
 
<syntaxhighlight lang="JSON" line>
 
{
 
      "discriminator": "DictionaryDataSource",
 
      "dictionaryId": 111,     
 
      "dictionarySourceSelectionMode": "DefaultValue",
 
      "id": 2,
 
      "name": "Справочник с объявленной альтернативной иерархией",
 
      '''"hierarchyId": 1'''
 
    }
 
  
</syntaxhighlight>
+
Получаем результат:<br>
 +
[[Файл:отчёт альт.png|мини|слева]]

Версия 09:55, 13 апреля 2021

Альтернативная иерархия - способ изменить иерархию внутри справочника для вывода его в элементе управления формы и в отчете.

Настройка альтернативной иерархии справочника

Наименование Определение
id Идентификатор альтернативной иерархии
elements[] Элементы, объявленные в иерархии
elements.id Идентификатор элемента
elements.parentid Идентификатор назначаемого родителя элемента
 1  
 2 {
 3  ...
 4  "hierarchies": [
 5     {
 6       "id": 1,
 7       "elements": [
 8         {
 9           "id": 4,
10           "parentId": 8        
11         }
12       ]
13     }
14   ],
15  ...
16 }


Настройка источника в серверной карточке

Наименование Определение
hierarchyId Идентификатор альтернативной иерархии, созданной в справочнике
 1  
 2 {
 3   ...
 4   "entryDataSources": [
 5     {
 6       ...
 7       "discriminator": "DictionaryDataSource",
 8       "dictionaryId": 239,      
 9       "id": 2,
10       "hierarchyId": 1
11       ...
12     }
13   ],
14   ...
15 }

Пример

Необходимо при открытии справочника с пивоте настроить иерархию для наглядности

справочник.png


















Для этого настроим альтернативную иерархию:

 1   ...
 2   "hierarchies": [
 3     {
 4       "id": 1,
 5       "elements": [
 6         {
 7           "id": 4,
 8           "parentId": null
 9         },
10         {
11           "id": 1,
12           "parentId": 4
13         },
14         {
15           "id": 3,
16           "parentId": 4
17         },
18         {
19           "id": 5,
20           "parentId": 4
21         },
22         {
23           "id": 6,
24           "parentId": 4
25         },
26         {
27           "id": 7,
28           "parentId": 4
29         },
30         {
31           "id": 8,
32           "parentId": 4
33         },
34         {
35           "id": 9,
36           "parentId": 4
37         },
38         {
39           "id": 10,
40           "parentId": 4
41         },
42         {
43           "id": 11,
44           "parentId": 4
45         },
46         {
47           "id": 2,
48           "parentId": 7
49         }
50       ]
51     }
52   ...
Получаем результат:
отчёт альт.png