Динамические колонки

Динамические колонки

Продукты SaveToDB поддерживают отображение, скрытие и именование колонок данных в зависимости от параметров запроса.

Представьте, что у вас есть таблица с данными всех клиентов. У каждого клиента может быть свой уникальный набор колонок или, по крайней мере, различные наименования колонок.

Вы можете настроить соответствие наборов колонок клиентам, чтобы показывать только актуальные колонки и скрывать остальные, когда пользователь выбирает нового клиента.

Например, таблица данных (s14.data) содержит следующие колонки:

idclient_idid1id2id3string1string2int1int2float1float2
 

Таблица соответствия (s14.view_aliases) содержит следующие настройки:

client_idtable_namecolumn_namealiasis_active
1s14.datafloat1sales
1s14.dataid1state
1s14.datastring1product
2s14.datafloat1sales
2s14.datastring1region
2s14.datastring2manager

Чтобы настроить динамические колонки, укажите таблицу соответствия и тип DynamicColumns в таблице xls.handlers:

IDTABLE_SCHEMATABLE_NAMECOLUMN_NAMEEVENT_NAMEHANDLER_SCHEMAHANDLER_NAMEHANDLER_TYPEHANDLER_CODE
 s14dataDynamicColumnss14dynamic_columnsCODE<SQL code>

Вот пример SQL кода:

SELECT
    column_name, alias, is_active
FROM
    s14.view_aliases
WHERE
    client_id = @client_id AND table_name = 's14.data'

В результате пользователи увидят только колонки, специфичные для выбранного клиента.

Вместо SQL кода можно использовать обычные объекты базы данных. Просто возвращайте данные для настройки колонок.

Обработчики динамических колонок должны возвращать три колонки:

  1. Имя исходной колонки
  2. Имя колонки для отображения
  3. Флаг видимости колонки

Флаг видимости может принимать следующие значения:

  • NULL — оставить колонку в текущем состоянии
  • 0 — скрыть видимую колонку
  • 1 — отобразить скрытую колонку

Этот веб-сайт использует куки. Продолжая использовать веб-сайт, Вы принимаете условия Политики защиты персональных данных.