Отображение динамического справочника в навигационном меню
Перейти в меню Настройки – Настройки интерфейса. Выбрать вкладку «Пресеты меню».
Создать новый объект, нажав на кнопку «+ Навигационное меню», или редактировать имеющийся пресет для основного навигационного меню.
Рисунок - Пресеты меню для добавления навигационного меню
В окне добавления нового навигационного меню требуется заполнить:
- Название пресета.
- Код группы доступа, которой будет доступен данный пресет.
Открыть Настройки – Пользователи и роли – Группы безопасности. Выбрать конкретную группу и из строки браузера скопировать ее код.
Рисунок - Настройка группы безопасности
Если поле оставить пустым, то пресет будет доступен только текущему пользователю, который его настраивает.
Тип меню, для которого этот пресет будет использоваться. В программе их два: - основное меню (слева вверху) – для него указать тип BASE_MENU; - нижнее (слева внизу) – для него указать тип FOOTER_MENU.
Рисунок - Типы меню
-
Вариант отображения – установить Json (конструктор пока в доработке).
-
В поле «Настройки» прописывается json-код:
[
{
"url": "HOME",
"icon": {
"src": "/resource/icon/public/menu/item/home.svg"
},
"name": "Главная",
"type": "ROUTE"
},
{
"url": "TASK_LIST",
"icon": {
"src": "/resource/icon/public/menu/item/task.svg#1"
},
"name": "Задачи",
"type": "ROUTE"
},
{
"url": "SERVICE_LIST",
"icon": {
"src": "/resource/icon/public/menu/item/srm.svg"
},
"name": "Услуги",
"type": "ROUTE"
},
{
"url": "CONTRACT_LIST",
"icon": {
"src": "/resource/icon/public/menu/item/contract.svg"
},
"name": "Договоры",
"type": "ROUTE"
},
{
"url": "ASSET_LIST",
"icon": {
"src": "/resource/icon/public/menu/item/asset.svg#1"
},
"name": "Активы",
"type": "ROUTE"
},
{
"url": "REPORT",
"icon": {
"src": "/resource/icon/public/menu/item/report.svg"
},
"name": "Отчеты и аналитика",
"type": "ROUTE"
},
{
"url": "DICTIONARY_GROUP_LIST",
"icon": {
"src": "/resource/icon/public/menu/item/bookmark.svg"
},
"name": "Справочники",
"type": "ROUTE"
},
{
"url": "MAP",
"icon": {
"src": "/resource/icon/public/menu/item/map.svg#1"
},
"name": "Карта",
"type": "ROUTE"
}
]
При необходимости добавить дочерний подпункт к пункту Справочники- нужно в раздел «DICTIONARY_GROUP_LIST» добавить следующий кусок кода:
"children": [
{
"url": "DYN_DICTIONARY_ELEMENT__DICTIONARY__OTHER_GROUP__LIST",
"icon": {
"src": "/resource/icon/public/menu/item/point-default.svg#1"
},
"name": "dyn",
"type": "ROUTE",
"params": {
"dynDictionaryId": 224
},
"routeHash": "1231"
}
Этот блок будет выглядеть так:
{
"url": "DICTIONARY_GROUP_LIST",
"icon": {
"src": "/resource/icon/public/menu/item/bookmark.svg"
},
"name": "Справочники",
"type": "ROUTE",
"children": [
{
"url": "DYN_DICTIONARY_ELEMENT__DICTIONARY__OTHER_GROUP__LIST",
"icon": {
"src": "/resource/icon/public/menu/item/point-default.svg#1"
},
"name": "Трудозатраты",
"type": "ROUTE",
"params": {
"dynDictionaryId": 88
},
"routeHash": "1"
}
]
},
При добавлении нескольких дочерних элементов в динамическое меню, необходимо учитывать параметр routeHash и сохранять его уникальность для каждого нового элемента, чтобы не возникло возможных проблем во время перехода в добавленные вложенные пункты.
В результате получаем вариант меню, где в пункте Справочники добавлен подпункт «Трудозатраты» (задается в поле name), который сразу переходит в справочник «Список трудозатрат» (его ID указывается в поле dynDictionaryId):

Рисунок - Меню, где в пункт "Справочники" добавлен подпункт "Трудозатраты"
Рисунок - Справочник "Трудозатраты"