Платформа 3V/Календарный справочник
Календарный справочник – это иерархическое представление временной шкалы данных по уровням временных отрезков: день, неделя, месяц, квартал, полугодие, год.
Для начала работы с календарным справочником создайте новый календарный справочник или откройте существующий.
Содержание
Создание нового календарного справочника
Для создания нового календарного справочника выполните одно из действий:
- нажмите на тип объектов Календарный справочник в разделе «Создать» на главной странице;
- выберите в раскрывающемся списке тип объектов Календарный справочник при нажатии на кнопку Создать в навигаторе объектов;
- нажмите кнопку Справочники в разделе «Календарные справочники» на боковой панели.
После выполнения одного из действий календарный справочник будет создан в текущей открытой папке или в корневом каталоге навигатора по умолчанию и открыт для просмотра и редактирования на новой вкладке, расположенной в наборе вкладок:
Для удобного создания справочника используйте шаблон метаописания в формате JSON
Открытие существующего календарного справочника
Для открытия существующего календарного справочника выполните одно из действий:
- дважды нажмите на календарный справочник в навигаторе объектов;
- выберите справочник в разделе «Календарные справочники» на боковой панели.
После выполнения одного из действий календарный справочник будет открыт для просмотра и редактирования на новой вкладке, расположенной в наборе вкладок:
Для передачи прямой ссылки на открытый календарный справочник скопируйте ссылку с помощью кнопки Скопировать ссылку на боковой панели календарного справочника в правой части страницы.
JSON календарного справочника
Для удобного создания справочника используйте шаблон метаописания в формате JSON:
1 {
2 "calendarModel": {
3 "calendarLevels": [
4 0,
5 1,
6 4
7 ],
8 "customRootName": "Всего",
9 "calendarStartDate": {
10 "isFixedDate": true,
11 "fixedDate": "2016-01-01T00:00:00",
12 "relativeOffset": 0,
13 "calendarLevel": 1
14 },
15 "calendarEndDate": {
16 "isFixedDate": true,
17 "fixedDate": "2019-12-31T00:00:00",
18 "relativeOffset": 2,
19 "calendarLevel": 1
20 },
21 "dictionaryType": 1,
22 "id": 0,
23 "name": "",
24 "code": "",
25 "tableName": "",
26 "sequenceName": "",
27 "databaseId": 0,
28 "isNew": true,
29 "attributes": [],
30 "indexes": []
31 },
32 "dictionaryStructure": {
33 "dictionaryType": 2,
34 "id": 0,
35 "name": "Каледнарный справочник 2",
36 "code": "DICT_CALENDAR_NEW",
37 "tableName": "T_636916396666133745",
38 "sequenceName": "",
39 "databaseId": 0,
40 "isNew": true,
41 "attributes": [
42 {
43 "attributeLink": null,
44 "id": 1,
45 "name": "Идентификатор",
46 "code": "ID",
47 "dataType": 2,
48 "type": 1,
49 "isNullable": false,
50 "hasMultipleValues": false,
51 "isVisible": false,
52 "isReadonly": true,
53 "formula": "",
54 "tableName": "",
55 "identIndex": {
56 "dbIndexName": null,
57 "code": null,
58 "isUnique": false,
59 "fields": []
60 },
61 "referenceIndex": {
62 "dbIndexName": null,
63 "code": null,
64 "isUnique": false,
65 "fields": []
66 }
67 },
68 {
69 "attributeLink": null,
70 "id": 2,
71 "name": "Наименование",
72 "code": "NAME",
73 "dataType": 1,
74 "type": 2,
75 "isNullable": false,
76 "hasMultipleValues": false,
77 "isVisible": true,
78 "isReadonly": false,
79 "formula": "",
80 "tableName": "",
81 "identIndex": {
82 "dbIndexName": null,
83 "code": null,
84 "isUnique": false,
85 "fields": []
86 },
87 "referenceIndex": {
88 "dbIndexName": null,
89 "code": null,
90 "isUnique": false,
91 "fields": []
92 }
93 },
94 {
95 "attributeLink": null,
96 "id": 3,
97 "name": "Порядок",
98 "code": "ORD",
99 "dataType": 2,
100 "type": 3,
101 "isNullable": true,
102 "hasMultipleValues": false,
103 "isVisible": false,
104 "isReadonly": false,
105 "formula": "",
106 "tableName": "",
107 "identIndex": {
108 "dbIndexName": null,
109 "code": null,
110 "isUnique": false,
111 "fields": []
112 },
113 "referenceIndex": {
114 "dbIndexName": null,
115 "code": null,
116 "isUnique": false,
117 "fields": []
118 }
119 },
120 {
121 "attributeLink": null,
122 "id": 4,
123 "name": "Родитель",
124 "code": "PARENT_ID",
125 "dataType": 2,
126 "type": 4,
127 "isNullable": true,
128 "hasMultipleValues": false,
129 "isVisible": true,
130 "isReadonly": false,
131 "formula": "",
132 "tableName": "",
133 "identIndex": {
134 "dbIndexName": null,
135 "code": null,
136 "isUnique": false,
137 "fields": []
138 },
139 "referenceIndex": {
140 "dbIndexName": null,
141 "code": null,
142 "isUnique": false,
143 "fields": []
144 }
145 },
146 {
147 "attributeLink": null,
148 "id": 5,
149 "name": "Дата начала",
150 "code": "START_DATE",
151 "dataType": 4,
152 "type": 5,
153 "isNullable": true,
154 "hasMultipleValues": false,
155 "isVisible": true,
156 "isReadonly": false,
157 "formula": "",
158 "tableName": "",
159 "identIndex": {
160 "dbIndexName": null,
161 "code": null,
162 "isUnique": false,
163 "fields": []
164 },
165 "referenceIndex": {
166 "dbIndexName": null,
167 "code": null,
168 "isUnique": false,
169 "fields": []
170 }
171 },
172 {
173 "attributeLink": null,
174 "id": 6,
175 "name": "Дата окончания",
176 "code": "END_DATE",
177 "dataType": 4,
178 "type": 6,
179 "isNullable": true,
180 "hasMultipleValues": false,
181 "isVisible": true,
182 "isReadonly": false,
183 "formula": "",
184 "tableName": "",
185 "identIndex": {
186 "dbIndexName": null,
187 "code": null,
188 "isUnique": false,
189 "fields": []
190 },
191 "referenceIndex": {
192 "dbIndexName": null,
193 "code": null,
194 "isUnique": false,
195 "fields": []
196 }
197 },
198 {
199 "attributeLink": null,
200 "id": 7,
201 "name": "Уровень календаря",
202 "code": "CALENDAR_LEVEL",
203 "dataType": 2,
204 "type": 7,
205 "isNullable": true,
206 "hasMultipleValues": false,
207 "isVisible": true,
208 "isReadonly": false,
209 "formula": "",
210 "tableName": "",
211 "identIndex": {
212 "dbIndexName": null,
213 "code": null,
214 "isUnique": false,
215 "fields": []
216 },
217 "referenceIndex": {
218 "dbIndexName": null,
219 "code": null,
220 "isUnique": false,
221 "fields": []
222 }
223 }
224 ],
225 "indexes": []
226 }
227 }
Редактирование календарного справочника
Для редактирования календарного справочника:
- Откройте метаописание календарного справочника с помощью кнопки JSON на боковой панели календарного справочника в правой части страницы. Метаописание объекта формируется в формате JSON. После выполнения действий будет открыт раздел «JSON»:
- Измените необходимые параметры календарного справочника в коде метаописания или создайте новую структуру JSON для построения календарного справочника.
- Нажмите кнопку Сохранить изменения.
После выполнения действий календарный справочник будет отредактирован в соответствии с заданными параметрами, описание элементов справочника или измененная структура будет отображена в таблице календарного справочника.
Для обновления метаописания календарного справочника нажмите кнопку Обновить.
Операции над календарным справочником
В открытом календарном справочнике доступно обновление и сохранение данных календарного справочника.
Для сохранения календарного справочника при изменении нажмите кнопку Сохранить на панели инструментов.
Для обновления данных календарного справочника нажмите кнопку Обновить на панели инструментов.
Для календарного справочника выполняется работа с иерархиями, настройка оформления календарного справочника и экспорт аналогично простому справочнику. Перейдите к разделам: Работа с иерархиями справочника, Настройка оформления справочника, Экспорт справочника.
Настройки календарного справочника
Уровни
Уровни календаря задаются в поле calendarLevels:
1 {
2 "calendarModel": {
3 "calendarLevels": [
4 ...
5 ],
6 ...
7 }
8 }
Возможны два формата для задачи уровней:
Уровень | Числовой формат | Текстовый формат |
---|---|---|
Всего | 0 | Root |
Год | 1 | Year |
Полугодие | 2 | HalfYear |
Квартал | 3 | Quarter |
Месяц | 4 | Month |
День | 6 | Day |
Примеры:
1 {
2 "calendarModel": {
3 "calendarLevels": [
4 0,
5 1,
6 4
7 ],
8 ...
9 }
10 }
1 {
2 "calendarModel": {
3 "calendarLevels": [
4 "Root",
5 "Year",
6 "Month"
7 ],
8 ...
9 }
10 }
Форматы даты
Формат дат в календаре задается в поле attributesCustomText:
1 {
2 "calendarModel": {
3 ...
4 "attributesCustomText": [
5 {
6 "attributeId": ...,
7 "levelFormats": [
8 {
9 "calendarLevel": ...,
10 "format": "..."
11 }
12 ]
13 }
14 ],
15 ...
16 }
17 }
Поле | Описание |
---|---|
attributeId | Идентификатор атрибута, в котором необходимо изменить формат |
calendarLevel | Уровень даты, формат которой необходимо изменить |
format | Необходимый формат даты |
Возможные форматы дат:
Формат | Описание |
---|---|
{YYYY} | Год в виде четырехзначного числа |
{YY} | Год, в диапазоне от 00 до 99 |
{HY} | Полугодие арабскими цифрами |
{HYR} | Полугодие римскими цифрами |
{Q} | Квартал арабскими цифрами |
{QR} | Квартал римскими цифрами |
{MMMM} | Полное название месяца |
{MMGN} | Полное название месяца родительном падеже |
{MM} | Месяц, в диапазоне от 01 до 12 |
{M} | Месяц, в диапазоне от 1 до 12 |
{DD} | День месяца, в диапазоне от 01 до 31 |
{D} | День месяца, в диапазоне от 1 до 31 |
Примеры | Результаты |
---|---|
1 {
2 "calendarModel": {
3 ...
4 "attributesCustomText": [
5 {
6 "attributeId": 2,
7 "levelFormats": [
8 {
9 "calendarLevel": "Day",
10 "format": "{D} {MMGN}"
11 }
12 ]
13 }
14 ],
15 ...
16 }
17 }
|
|
1 {
2 "calendarModel": {
3 ...
4 "attributesCustomText": [
5 {
6 "attributeId": 2,
7 "levelFormats": [
8 {
9 "calendarLevel": 0,
10 "format": "Пользовательское наименование"
11 },
12 {
13 "calendarLevel": 1,
14 "format": "{YYYY} год"
15 },
16 {
17 "calendarLevel": 2,
18 "format": "{QR} квартал {YYYY} год"
19 }
20 ]
21 }
22 ],
23 ...
24 }
25 }
|