Управление токенами
Функция детализации позволяет обновлять значения токенов и запускать динамические действия на текущем дашборде. Вместо перехода к другому поиску или дашборду, детализация может управлять значениями токенов при клике пользователя на элемент панели.
В зависимости от конфигурации панели, изменение значений токенов может привести к различным динамическим изменениям ее поведения.
Принцип работы
Управление значениями токенов является ключевым элементом создания интерактивного поведения дашборда с помощью функции детализации. Перед настройкой обновления значений токенов необходимо спланировать желаемое поведение панели. Например, можно показывать или скрывать контент по клику пользователя. Также возможно установить значение токена, которое является частью поискового запроса, для формирования более детализированной визуализации на панели.
В детализации можно установить или изменить значения токенов по клику пользователя. Однако само по себе изменение значений токенов не приводит к динамическому поведению панели. Для обеспечения интерактивности необходимо настроить элементы панели на реагирование на эти обновления токенов.
Шаги по настройке
- На дашборде, где требуется настроить детализацию, нажать
Редактировать - Выбрать панель, где настраивается детализация, и нажать на иконку настройки
- Выбрать тип ссылки
Изменение токенов
- Настроить необходимый перечень используемых токенов
- Нажать
Применить настройкидля применения детализации - Добавить фильтр типа
ТекстлибоВыбор, нажав наДобавить фильтр, затем переместить фильтр на панель, которая будет появляться при выборе значения столбца исходной панели - Настроить фильтр, добавив такое же название в
Системное имя, как название токена в пункте 4 - Нажать
Сохранитьдля применения настроек фильтра - Нажать
Сохранитьдля сохранения изменений на дашборде
Примеры использования токенов
$row.columnName$ — значение ячейки таблицы
Токен $row.columnName$ захватывает значение из ячейки таблицы при клике на строку. columnName заменяется на название столбца в результатах запроса.
В примере таблица Статистика по действиям содержит столбец Действие. При клике на строку токен $row.Действие$ получает значение из этого столбца и передает его в зависимую таблицу События по действию.
Запрос основной таблицы:

Настройка детализации — тип Изменение токенов:

В поле Имя токена указывается произвольное имя, например $selectedAction$. В поле Значение токена — $row.Действие$.
Запрос зависимой таблицы использует токен в условии фильтрации:

Зависимая панель скрыта до клика за счет атрибута depends: ["$selectedAction$"] в JSON-редакторе панели.
Результат — клик на строку раскрывает детальную таблицу:

$click.value[X|Y]$ — значение оси диаграммы
Токен $click.valueX$ захватывает значение по оси X в точке клика, $click.valueY$ — по оси Y. Применяется для столбчатых, круговых и линейных диаграмм.
В примере столбчатая диаграмма Распределение по исходам отображает количество событий по значениям поля event.outcome. При клике на столбец токен $click.valueX$ получает значение исхода (success или failure).
Визуализация:

Настройка детализации:

Запрос зависимой таблицы фильтрует события по выбранному значению:

Результат:

$click.name[X|Y]$ — название серии диаграммы
Токен $click.nameY$ захватывает название серии при клике на линию многосерийного графика. В отличие от $click.valueY$, он возвращает не числовое значение точки, а имя серии данных.
В примере линейный график строит отдельную серию для каждого типа действия. При клике на линию logged-in токен $click.nameY$ получает значение logged-in.
Визуализация:

Настройка детализации:

Запрос зависимой таблицы:

Результат:

$dashboardToken$ — значение фильтра дашборда
Токен $dashboardToken$ соответствует значению, выбранному в фильтре на дашборде. Вместо dashboardToken используется системное имя конкретного фильтра.
В примере на дашборде размещен фильтр типа Выбор с системным именем action. Запрос визуализации использует значение этого фильтра через токен $action$. При изменении значения фильтра запрос перевыполняется автоматически.
Фильтр на дашборде:

Запрос, использующий токен фильтра:

Результат:

$timeToken$ — временной фильтр
Токен $timeToken$ соответствует значению фильтра типа Время. Вместо timeToken используется системное имя конкретного временного фильтра. Например, если системное имя фильтра — time, то доступны следующие подтокены:
$time.start$— начало временного периода$time.end$— конец временного периода$time.isPaused$— флаг автообновления$time.refreshInterval$— интервал обновления
Значения используются в детализации типа Произвольная ссылка для передачи временного диапазона на другой дашборд:
/app/general/sm-dashboards/<target-dashboard>#?_q=(time:(end:'$time.end$',start:'$time.start$'))
На целевом дашборде должен быть фильтр с тем же системным именем и визуализация, которая на него реагирует.
Временной фильтр на исходном дашборде:

Настройка детализации — тип Произвольная ссылка:

Временной фильтр на целевом дашборде (системное имя совпадает):

Визуализация на целевом дашборде обновляется с переданным временным диапазоном:

$data.fieldName$ — поле из результатов HTML-визуализации
Токен $data.fieldName$ используется только в HTML-визуализации. Он подставляет значение поля из текущей строки результатов запроса прямо в HTML-шаблон. fieldName заменяется на имя столбца из результатов.
Запрос:

Настройка HTML-шаблона — поля подставляются через токены, например $data.user$, $data.host$, $data.action$:

Результат:
