Виджеты в домене
Этот раздел описывает виджеты в представлениях сущностей домена.
| Ознакомьтесь с правилами нотации в схеме домена. Это позволит присваивать корректные названия создаваемым элементам схемы. Эти названия будут отображаться в интерфейсе системы. |
Структура поля widgets
Путь в схеме: views[].widgets[]
Поле widgets представляет собой массив записей, описывающих виджеты — визуальные компоненты интерфейса. Описания виджетов включают общие поля и специфические в зависимости от типа виджета.
Общие поля для всех типов виджетов
Описание каждого виджета включает следующие поля:
| Поле | Обязательность и значение по умолчанию | Описание | Тип данных |
|---|---|---|---|
|
Да |
Уникальный идентификатор виджета. |
View ID |
|
Да |
Тип виджета. Определяет, какие специфические поля будут применяться. Ознакомьтесь со списком доступных типов. |
перечисление |
|
Нет |
Описание виджета. |
строка |
Типы виджетов (type)
Поле type в записи виджета может принимать следующие значения:
-
attribute— виджет атрибута, позволяющий отображать и редактировать значение атрибута объекта; -
action— виджет действия, позволяющий запускать действие с передачей контекста; -
linkage— виджет связи, позволяющий отображать и менять список связанных объектов; -
linkage_list— виджет списка связей; -
linked_objects_groups— виджет группировки связанных объектов, отображающий таблицу со сгруппированными данными; -
join— виджет транзитивных связей; -
visualization— виджет графического отображения; -
history— виджет истории изменений, отображающий события аудита; -
runs_history— виджет со списком запусков плейбуков и скриптов, производивших действия с объектом; -
comments— виджет комментариев; -
card— виджет для дашбордов; -
conversation— виджет переписок.
Виджет атрибута (type: attribute)
Определение виджета атрибута включает общие поля для виджетов всех типов, поля, специфические для виджетов атрибутов, и поля, зависящие от типа атрибута.
Общие поля виджетов атрибутов
Описание всех виджетов типа attribute включает следующие поля:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
да |
Data ID Ref |
Ссылка на атрибут сущности, значение которого будет отображаться и редактироваться. Могут использоваться системные атрибуты. |
|
нет (по умолчанию: определяется автоматически) |
объект |
Элемент управления для отображения атрибута. Ознакомьтесь с описанием поля |
Настройки элемента управления в виджете атрибута (control)
Путь в схеме: views[].widgets[].control
Поле имеет следующую структуру:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
нет (по умолчанию — вычисляется автоматически) |
перечисление |
Тип редактора, используемый в столбце, в соответствии с таблицей. |
|
нет |
строка |
Текст в области перетаскивания. Доступно для атрибутов с типом |
|
да (при |
строка |
Отображаемая строка для значения |
|
да (при |
строка |
Отображаемая строка для значения |
|
да (при |
число |
Шаг при перемещении ползунка. |
Настройки виджета атрибута типа Array
Описание виджета атрибута типа Array дополнительно содержит следующее поле:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
нет |
целое число |
Высота поля по умолчанию, определенная в количестве текстовых строк. |
Настройки виджета атрибута типа Counter
Описание виджета атрибута типа Counter дополнительно содержит следующее поле:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
нет |
Data ID Ref или FQDN |
Ссылка на правило цветовой схемы счетчика. |
Настройки виджета атрибута типа RQL
Описание виджета атрибута типа RQL дополнительно содержит следующие поля:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
нет |
массив |
Список доменов, сущностей, атрибутов и связей, доступных пользователю при составлении RQL-выражения. Доступно, если атрибут имеет тип Ознакомьтесь с описанием поля |
|
нет |
массив |
Список доменов, сущностей, атрибутов и связей, недоступных пользователю при составлении RQL-выражения. Доступно, если атрибут имеет тип Ознакомьтесь с описанием поля |
Выбор элементов в редакторе RQL
Путь в схеме:
-
views[].widgets[].include[]; -
views[].widgets[].exclude[].
Поля include и exclude определяют выбор пользователем доменов, сущностей, связей и атрибутов в редакторе атрибута типа RQL. В схеме виджета может быть задано только одно из этих полей:
-
Если задан
include, выбор ограничен только указанными элементами. -
Если задан
exclude, в редакторе можно выбирать все доступные элементы, кроме указанных в поле.
Если в массиве include или exclude для сущности не указаны атрибуты и связи, это равносильно перечислению всех доступных элементов.
|
Каждый элемент массивов имеет следующую структуру:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
да |
FQID |
Домен, доступный в редакторе RQL. |
|
нет |
массив |
Список сущностей, доступных в редакторе RQL. Ознакомьтесь с описанием поля |
Список сущностей в редакторе RQL (entities)
Путь в схеме:
-
views[].widgets[].include[].entities[]; -
views[].widgets[].exclude[].entities[].
Каждый элемент массива имеет следующую структуру:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
да |
Data ID Ref |
Идентификатор сущности домена. |
|
нет (по умолчанию: все атрибуты) |
массив |
Массив ссылок на атрибуты сущности в формате |
|
нет (по умолчанию: все связи и атрибуты связанных сущностей) |
массив |
Список связей текущей сущности. Ознакомьтесь с описанием поля |
Список связей в редакторе RQL (linkages)
Путь в схеме:
-
views[].widgets[].include[].entities[].linkages[]; -
views[].widgets[].exclude[].entities[].linkages[].
Каждый элемент массива имеет следующую структуру:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
нет (по умолчанию — |
перечисление |
Сторона связи. |
|
да |
Data ID Ref или FQID |
Идентификатор связи. |
|
нет |
массив |
Массив атрибутов связанной сущности в формате |
Настройки виджета атрибута типа Table
Настройки отображения таблицы задаются в поле view описания пользовательского атрибута-таблицы.
Примеры виджетов атрибутов
Пример виджетов системных атрибутов
views:
widgets:
- id: entity_name_widget
type: attribute
# Объявлять системные атрибуты в поле attribute не нужно.
attribute: entityName
- id: entity_id_widget
type: attribute
attribute: entityId
Пример виджета пользовательского атрибута
views:
widgets:
# Идентификатор виджета.
- id: deviceModelEditor
# Тип виджета атрибута.
type: attribute
# Идентификатор атрибута (должен быть предварительно объявлен).
attribute: deviceModel
# Описание виджета
description: Поле для редактирования наименования модели оборудования
Пример виджета пользовательского атрибута с настройкой элемента управления
views:
widgets:
# Идентификатор виджета.
- id: eNum
# Тип виджета атрибута.
type: attribute
# Идентификатор атрибута уровня критичности.
attribute: severity
control:
# Тип элемента управления.
type: select
# Описание виджета.
description: Поле для редактирования уровня критичности
- id: attach_widget
type: attribute
attribute: arrayDocuments
description: Массив документов
control:
type: drag_drop_area
text: Перетащите файлы для загрузки
Виджет действий (type: action)
Описание виджета типа action дополнительно включает поля:
| Поле | Обязательность и значение по умолчанию | Описание | Тип данных |
|---|---|---|---|
|
Да (если |
Ссылка на одно действие, которое будет выполняться. Нельзя использовать одновременно с |
View ID Ref |
|
Да (если |
Массив ссылок на действия. Формирует выпадающее меню. Нельзя использовать одновременно с |
массив ссылок |
|
Нет |
Элемент управления. Ознакомьтесь с описанием поля |
объект |
Настройки элемента управления в виджете действия (control)
Путь в схеме: views[].widgets[].control
Поле имеет следующую структуру:
| Поле | Обязательное поле | Описание | Тип данных |
|---|---|---|---|
|
нет |
Тип элемента управления. Допустимые значения:
|
перечисление |
|
нет |
Ссылка на идентификатор медиаресурса (иконки). Доступно, если указан |
View ID Ref |
|
нет |
Текст в области перетаскивания. Доступно, если указан |
строка |
Виджет связи (type: linkage)
Описание каждого виджета типа linkage дополнительно включает поля:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
да |
Data ID Ref |
Ссылка на связь сущности, состав которой будет отображаться и редактироваться. |
|
нет (по умолчанию: да (для внешней связи) |
перечисление |
Сторона связи. Возможные значения:
|
|
нет (по умолчанию: пустая строка) |
строка |
Наименование связи, отображаемое в виджете. Ознакомьтесь с описанием поля |
|
нет (по умолчанию: вычисляется автоматически) |
перечисление |
Элемент управления для отображения связи. В зависимости от выбранного редактора описание виджета может включать дополнительные поля. Ознакомьтесь с описанием поля |
|
нет |
массив |
Атрибуты, отображаемые в виджете связи. Ознакомьтесь с описанием поля |
Редактор связей (control)
Путь в схеме: view[].widgets[].control
Доступные значения поля control:
-
select— для связей 1-1 или 1-N, если указана сторона 1 (side: 1). -
multi_select— компактный редактор для связей N-N или 1-N со стороны 2 (side: 2). -
table— расширенный редактор для связей N-N или 1-N со стороны 2 (side: 2).Если связанных объектов много, рекомендуется использовать редактор table.
Настройки для расширенного редактора связи (control: table)
Если в виджете связи указан редактор table, описание виджета дополнительно включает поля:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
нет |
View ID Ref |
Ссылка на списочное представление сущности, отображаемое в модальном окне создания связи при работе в расширенном редакторе. |
|
да |
массив |
Массив записей с описанием колонок таблицы. Ознакомьтесь с описанием поля |
|
нет (по умолчанию: автоматическая сортировка) |
массив |
Массив ссылок на правила сортировки атрибутов сущности. Если хотя бы одно правило сортировки не определено в схеме домена, система сортирует связи в таблице по времени поступившей о них информации за секундный интервал и далее по идентификатору связи. Ознакомьтесь с описанием сортировки в таблицах. |
|
нет |
объект |
Ознакомьтесь с описанием |
Столбцы таблицы в виджете связей (columns)
Путь в схеме: view[].widgets[].columns[]
Каждый элемент массива имеет следующую структуру:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
да |
View ID |
Идентификатор столбца таблицы, который отображается в его заголовке. |
|
да |
Data ID Ref |
Ссылка на атрибут, который отображается в столбце таблицы. Допустимые значения:
|
Атрибуты связи для отображения в виджете (attributes)
Путь в схеме: view[].widgets[].attributes[]
Каждый элемент массива имеет следующую структуру:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
да |
Data ID Ref |
Идентификатор атрибута связи. Допустимые значения:
|
|
нет (по умолчанию: значение |
строка |
Название атрибута в UI Ознакомьтесь с описанием поля |
|
нет (по умолчанию: вычисляется автоматически) |
объект |
Настройки элемента управления. Ознакомьтесь с описанием поля |
Элемент управления атрибута связи (control)
Путь в схеме: view[].widgets[].attributes[].control
Поле имеет следующую структуру:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
нет (по умолчанию: вычисляется автоматически) |
перечисление |
Элемент управления. Доступны элементы, соответствующие типу данных атрибута при использовании в таблицах и массивах. |
|
нет |
View ID Ref |
Представление для выбора сущностей. |
|
нет (по умолчанию: |
логическое |
Переключатель возможности редактирования. |
Виджет списка связей (type: linkage_list)
Описание виджета типа linkage_list дополнительно включает поля:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
нет |
объект |
Ссылки на списочные представления сущностей для отображения атрибутов в виджете. Ознакомьтесь с описанием поля |
|
нет |
объект |
Правила, определяющие, какие связи доступны для просмотра и редактирования. Если не заполнено, доступны все связи. Может содержать только один из двух массивов: |
Ссылки на списочное представление сущности (entity_lists)
Путь в схеме: views[].widgets[].entity_lists
Поле entity_lists содержит массив ссылок на списочное представление сущности. Каждый элемент массива имеет следующую структуру:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
да |
Data ID Ref |
Ссылка на сущность, для которой будут отображаться дополнительны поля. |
|
да |
View ID Ref |
Ссылка на списочное представление сущности. Для каждой сущности можно указать только одну ссылку на списочное представление. |
Правила включения связей (includes)
Путь в схеме: views[].widgets[].rules.includes[]
Поле includes содержит массив правил включения связей в виджет. Каждый элемент массива имеет следующую структуру:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
да |
FQID |
Домен, для которого применяются правила включения |
|
нет |
массив Data ID Ref |
Список связей домена. Если указано, включаются только эти связи домена. Доступно, если не указано поле |
|
нет |
массив Data ID Ref |
Список связей домена. Если указано, включаются все связи домена, кроме перечисленных. Доступно, если не указано поле |
Правила исключения связей (excludes)
Путь в схеме: views[].widgets[].rules.excludes[]
Поле excludes содержит массив правил исключения связей из виджета. Каждый элемент массива имеет следующую структуру:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
да |
FQID |
Домен, для которого применяются правила исключения. |
|
нет |
массив Data ID Ref |
Список связей домена. Если указано, исключаются только эти связи домена. Доступно, если не указано поле |
|
нет |
массив Data ID Ref |
Список связей домена. Если указано, исключаются все связи домена, кроме перечисленных. Доступно, если не указано поле |
Виджет группировки связанных объектов (type: linked_objects_groups)
Описание виджета типа linked_objects_groups дополнительно включает поля:
| Поле | Обязательность и значение по умолчанию | Описание | Тип данных |
|---|---|---|---|
|
Да |
Массив ссылок на связи, по которым производится выборка объектов. Ознакомьтесь с описанием поля |
массив |
|
Да |
Массив полей |
массив |
|
Нет (по умолчанию: |
Элемент управления (редактор) для виджета. Доступное значение: |
строка |
|
Да (при |
Массив записей с описанием столбцов таблицы. Ознакомьтесь с описанием поля |
массив |
|
Нет (при |
Массив ссылок на правила сортировки атрибутов сущности. Ознакомьтесь с описанием поля |
объект |
|
Нет (при |
Настройки постраничной навигации. Ознакомьтесь с описанием поля |
объект |
Список связей (linkages)
Путь в схеме: views[].widgets[].linkages[]
Поле linkages содержит массив ссылок на связи.
Каждый элемент массива имеет следующую структуру:
| Поле | Обязательность и значение по умолчанию | Описание | Тип данных |
|---|---|---|---|
|
Да |
Ссылка на связь. |
Data ID Ref |
|
Нет (по умолчанию: |
Сторона связи. Поле игнорируется, если связь симметричная или направленная. Доступные значения:
|
перечисление |
Столбцы (columns)
Путь в схеме: views[].widgets[].columns
Поле columns содержит массив записей с описанием столбцов таблицы виджета. Каждый элемент массива имеет следующую структуру:
| Поле | Обязательность и значение по умолчанию | Описание | Тип данных |
|---|---|---|---|
|
Да |
Идентификатор колонки таблицы. |
View ID |
|
Да |
Ссылка на атрибут, который будет отображен в колонке таблицы. Допустимые значения:
|
Data ID Ref |
|
Нет |
Наименование столбца. |
строка |
Чтобы работал переход из таблицы на списочное представление при нажатии на totalCount, укажите для каждого типа сущности в действии open_list поле widgetId с id текущего виджета.
|
Структура sortingBy (в виджете группировки)
Путь в схеме: views[].widgets[].sortingBy
Поле sortingBy содержит описание сортировки в столбцах таблицы. Поле имеет следующую структуру:
| Поле | Обязательное поле | Значение по умолчанию | Описание | Тип данных | Комментарий |
|---|---|---|---|---|---|
|
да |
Массив записей столбцов, для которых возможна сортировка в таблице. |
массив |
||
|
нет |
Столбец и направление сортировки по умолчанию. |
объект |
Сортировка в столбце
Путь в схеме:
-
views[].widgets[].columns[] -
views[].widgets[].default
Каждый элемент массива columns и поле default имеют следующую структуру:
| Поле | Обязательное поле | Описание | Тип данных |
|---|---|---|---|
|
Да |
Столбец, по которому выполняется сортировка |
View ID Ref |
|
Да |
направление сортировки:
|
перечисление |
Настройки количества записей в таблице (paging)
Путь в схеме: views[].widgets[].paging
Поле paging содержит настройки количества записей, показываемых в таблице. Поле имеет следующую структуру:
| Поле | Обязательное поле | Значение по умолчанию | Описание | Тип данных | Комментарий |
|---|---|---|---|---|---|
|
да |
Количество записей, показываемых в таблице. |
массив целых положительных чисел |
В этом поле указываются варианты количества записей, доступные для выбора в настройке. Например, |
|
|
да |
Количество записей, показываемых по умолчанию. |
целое положительное число |
Виджет транзитивных связей (type: join)
Описание виджета типа join дополнительно включает поля:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
да |
Data ID Ref |
Идентификатор присоединения связи. |
|
да |
Data ID Ref |
Ссылка на атрибут транзитивно связанной сущности, который отображается в виджете. Поддерживаются обычные и системные атрибуты. |
Виджет визуализации (type: visualization)
Описание виджета типа visualization дополнительно включает поля:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
нет |
строка |
Название визуализации. |
|
нет |
объект |
Настройки автоматического обновления данных виджета. Ознакомьтесь с описанием |
|
да |
объект |
Параметры запроса данных для виджета. Ознакомьтесь с описанием поля |
Параметры построения визуализации (variables)
Путь в схеме: views[].widgets[].variables
Поле variables содержит параметры построения визуализации. Поле имеет следующую структуру:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
да |
RQL-запрос |
Запрос для построения визуализации. Должен содержать конструкцию вида:
Здесь поле |
|
да |
массив |
Массив атрибутов сущности, используемых как переменные в RQL-запросе. |
|
да |
объект |
Временной период отображения данных. Ознакомьтесь с описанием |
|
да |
целое число |
Ограничение на количество строк в результате RQL-запроса. |
|
да |
перечисление |
Тип источника данных. Устанавливается значение |
|
да |
перечисление |
Тип визуализации. Доступные значения:
|
|
да |
массив |
Имя переменной, соответствующей хранилищу событий или активному списку. Ознакомьтесь с описанием поля |
|
да |
массив |
Сопоставление полей данных с элементами графика (оси, группировка). Ознакомьтесь с описанием поля |
Источник данных (searchEntity)
Путь в схеме: views[].widgets[].variables.searchEntity
Поле имеет следующую структуру:
| Поле | Описание | Тип данных | Комментарий |
|---|---|---|---|
|
Идентификатор записи источника (активного списка или хранилища событий) |
строка |
|
|
Тип источника |
enum |
Доступные значения:
|
Сопоставление полей (nameMapping)
Путь в схеме: views[].widgets[].variables.nameMapping[]
Поле nameMapping содержит массив объектов с парами значений key—value, которые зависят от типа визуализации. Поле может содержать несколько пар "ключ — значение". Каждый элемент массива имеет следующую структуру:
| Поле | Обязательное поле | Тип данных | Комментарий |
|---|---|---|---|
|
да |
строка |
Если в поле
Если
Если Если |
|
да |
строка |
Если в поле Если Если |
Параметры времени в виджете визуализации
Путь в схеме:
-
views[].widgets[].autoUpdate -
views[].widgets[].variables.last
Поле last содержит настройки периода, за который отображаются данные в виджете, а поле autoUpdate — настройки автоматического обновления данных. Поля имеют следующую структуру:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
да |
перечисление |
Единица измерения периода формирования визуализации. Доступные значения:
|
|
да |
целое положительное число |
Длительность измерения периода. |
Виджет истории (type: history)
Описание виджета типа history дополнительно включает поля:
| Поле | Обязательность и значение по умолчанию | Описание | Тип данных |
|---|---|---|---|
|
Да |
Идентификатор хранилища событий, из которого загружаются события для отображения. |
строка |
Виджет истории запусков (type: run_history)
Описание виджета типа run_history дополнительно включает поля:
| Поле | Обязательность и значение по умолчанию | Тип данных | Описание |
|---|---|---|---|
|
нет |
объект |
Настройка списка плейбуков, запуски которых должны отображаться в виджете. |
Если поле playbooks не задано, в виджете будут отображаться все плейбуки и скрипты, производившие действия с объектом, без ограничения.
|
Поле playbooks может содержать только один из двух блоков:
-
include— список плейбуков и скриптов, которые нужно отображать; -
exclude— список плейбуков и скриптов, которые нужно исключить из отображения.
Каждый из блоков является массивом полей playbook со строкой — идентификатором плейбука или скрипта.
|
Виджет типа
|
Виджет комментариев (type: comments)
Виджет типа comments использует только общие поля, описанные в разделе Общие поля для всех типов виджетов. Дополнительных полей для этого типа не требуется.
Виджет дашборда (type: card)
Описание виджета типа card дополнительно включает поля:
| Поле | Обязательность и значение по умолчанию | Описание | Тип данных |
|---|---|---|---|
|
Нет |
Ссылка на идентификатор медиаресурса (иконки). |
View ID Ref |
|
Да |
Ссылка на действие, которое будет запускаться при клике на виджет. |
View ID Ref |
Виджет переписок (type: conversation)
Описание виджета типа conversation дополнительно включает поля:
| Поле | Обязательность и значение по умолчанию | Описание | Тип данных |
|---|---|---|---|
|
Да |
Ссылка на связь сущности из текущего домена с сущностью |
Data ID Ref |
|
Нет |
Массив для ограничения доступных транспортов (например, только email). Если не указан, доступны все транспорты. |
массив |
Сторонние виджеты
Сторонние виджеты не являются частью ядра системы и не описываются в схеме домена. Сторонний виджет заранее регистрируется в системе через API. Виджету нужно присваивать уникальный идентификатор. При повторной регистрации с тем же идентификатором данные о виджете переопределяются.
После регистрации через API сторонние виджеты можно использовать в представлениях сущностей. Для обращения к ним надо использовать идентификатор, заданный при регистрации: external:<id виджета>.
Сторонний виджет автоматически получает контекст сущности и объекта, в которой используется, а также собственный контекст.
Была ли полезна эта страница?