Перейти к содержанию

Гриды — Администрирование

Администрирование табличного представления задач в 1Форме: индикаторы (тикеры), избранное групп, общие параметры табличного вида и пользовательские настройки колонок и фильтров. Документ описывает формы автоадминистрирования, отдельные SPA-страницы, API администрирования, ключевые настройки и типичные ошибки конфигурации.

Обзор

Домен grids охватывает настройку табличного представления задач: индикаторы (тикеры), избранное группы, общие параметры табличного вида и пользовательские настройки колонок и фильтров. Администрирование использует три механизма:

  • Автоадминистрирование — 1 форма (настройки табличного вида)
  • Отдельные SPA-страницы — 2 формы (тикеры, избранное), зарегистрированы в дереве автоадминки, но открывают собственные SPA-страницы
  • API администрирования — 1 группа маршрутов (управление группами/папками избранного)

Табличное представление задач с панелью инструментов и контекстным меню ячейки (фильтр по значению, переход, действия)

Механизмы администрирования

Три механизма управления настройками табличного представления: форма автоадминистрирования, отдельные SPA-страницы и API администрирования.

Автоадминистрирование:

Alias формы Название Таблица БД Папка
user-task-only-settings Общие настройки табличного вида dbo.UserTaskOnlySettings Устаревшее

Отдельные SPA-страницы (в дереве автоадминки):

Alias формы Название Url Таблица БД Папка
tickers Индикаторы /administration/tickers dbo.MenuItemTicker Пользовательский интерфейс
favourites Избранное группы /administration/favorites-groups dbo.UserLinks Пользовательский интерфейс

API администрирования:

Маршрут Методы Назначение
/api/admin/favorites/groups GET, POST, PUT, DELETE Управление группами, папками и ссылками избранного

Ключевые настройки

Где настраивается: SPA-страница /administration/tickers (пункт tickers в дереве автоадминки) Таблица БД: dbo.MenuItemTicker

11 полей, определяющих цветовые/числовые индикаторы в навигационном меню:

Группа полей Что контролирует
Имя, описание Идентификация тикера
Тип индикатора Числовой / цветовой
Источник данных SQL-запрос или предопределённый источник
Цвет, иконка Визуальное оформление в меню
Привязка к пункту К какому разделу меню привязан тикер

Как применяется: тикеры обновляются периодически в реальном времени.

Где настраивается: SPA-страница /administration/favorites-groups (пункт favourites в дереве автоадминки) или API администрирования Таблица БД: dbo.UserLinks

18 полей: структура ссылок и папок блока «Избранное группы». Администратор настраивает набор ссылок для группы, которые отображаются у всех пользователей группы.

Группа полей Что контролирует
Группа, папка Привязка к группе и иерархия
URL, название Содержание ссылки
Тип ссылки Задача / категория / пространство / внешняя
Порядок Сортировка в блоке избранного

Редактирование структуры

В редакторе блока «Избранное группы» поддерживается перетаскивание для перестроения дерева элементов. Администратор может:

  • перемещать ссылку в другую папку;
  • перемещать папку внутрь другой папки;
  • менять порядок ссылок и папок на одном уровне.

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

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

Как применяется: блок «Избранное группы» формируется в навигационной панели.

Общие настройки, колонки и фильтры

Три категории настроек табличного представления: устаревшие глобальные параметры, пользовательские настройки колонок и сохранённые фильтры.

Общие настройки табличного вида (UserTaskOnlySettings). Автоадминка → форма user-task-only-settings. Таблица БД: dbo.UserTaskOnlySettings. 6 полей: глобальные параметры табличного представления задач. Примечание: форма находится в папке «Устаревшее», основные настройки табличного вида теперь задаются через пользовательские колонки и фильтры.

Пользовательские настройки колонок. API: /api-core/datasource/{type}/columns/save|reset. Таблицы БД: dbo.DataSources, dbo.DataSourceColumns. Пользователь сохраняет видимость, порядок и ширину колонок (отдельно для каждого пользователя). Настройки сбрасываются через columns/reset.

Выбор видимых колонок в табличном представлении задач

Сохранённые фильтры. API: /api-core/datasource/{type}/filters. Таблица БД: dbo.DataSourceFilters. Сохранённые фильтры и сценарии выбора. Фильтрация задач и фильтрация табличных ДП обрабатываются раздельно.

Условное форматирование колонок табличных ДП (v2.266)

Где настраивается: API администрирования (/api/admin/extparams/table/{tableId}/formatting-rules) Таблица БД: dbo.ExtParamTableColumnFormattingRules (FK → ExtParamTableSettings.Id)

Условное форматирование позволяет задать правила подсветки ячеек в табличных ДП по значению — аналогично условному форматированию в Excel. Правила настраиваются отдельно для каждой колонки через API администрирования.

Маршруты API:

Метод Маршрут Назначение
GET /api/admin/extparams/table/{tableId}/formatting-rules Все правила для ДП Таблица (включая неактивные)
POST /api/admin/extparams/table/{tableId}/formatting-rules Создание правила
PUT /api/admin/extparams/table/{tableId}/formatting-rules/{ruleId} Обновление правила
DELETE /api/admin/extparams/table/{tableId}/formatting-rules/{ruleId} Удаление правила

tableId — ID самого ДП Таблица; ColumnId передаётся в теле запроса.

Модель правила:

Поле Тип Описание
ColumnId int (FK → ExtParamTableSettings.Id) На какую колонку правило
RuleType enum EpTableFormattingRuleType Тип правила: числовые (GreaterThan, Between, Min/Max, …), текстовые (Contains, StartsWith, …), Duplicates
ValueX string (nullable) Первое значение условия; не используется для Min/Max/Duplicates
ValueY string (nullable) Второе значение условия; используется только для Between/Outside
Color enum EpTableFormattingColor Цвет (Red, Green, Yellow, …) — 12 значений палитры
ColorTone enum EpTableFormattingTone Тон (None, White, Light, Normal, Dark)
Priority int Приоритет: правило с меньшим Priority применяется первым
IsActive bit Активность правила

Правила форматирования интегрированы в настройки колонок табличного ДП. При загрузке настроек колонки правила включаются в ответ автоматически.

Полный справочник типов правил (числовые/текстовые/универсальные), палитры цветов и тонов, логики валидации — в справочнике настроек ДП Таблица (раздел «Условное форматирование колонок»).

CustomSettings — экспорт, агрегаты, права на CSV

Глобальные настройки экспорта, агрегатов и прав на CSV:

Ключ Тип / Default Назначение
MaxExcelExportRows int / 50000 Максимум строк для экспорта в Excel. При превышении — ошибка (не больше 50 000)
MaxCsvExportRows int / 50000 Максимум строк для экспорта в CSV (не больше 50 000)
ExportAgGridAsCsv bool / false Если true — кнопка «В Excel» в табличном виде категории экспортирует в CSV вместо XLSX
MaxScriptsToCombine int / 10 Лимит на объединение скриптов
CompressDSSettings bool / true Если true — настройки табличного вида хранятся в DataSourceSettings.ValueGZip (GZip). При false — в Value (JSON). Загрузка совместима с обоими режимами: сначала ValueGZip, потом Value
DataSourceAggregates JSON Включает строку итогов (sum / avg / min / max) для числовых и денежных колонок в табличном виде категории и в блоке БИ. Формат: [{"type":"subcat\|taskUsed","id":N,"gridTotalColumns":{"{column}":["sum","avg","min","max"]}}]
DSUpdateCSVPermissions JSON Управляет правом «Создание/обновление из CSV»: при отсутствии права кнопки скрываются. Формат: "UseNewExtParamsAndTaskUsed":[{"subcats":[ids],"groups":[ids]}] — категории и группы, для которых кнопки включены
DoNotSelectedTaskInSummary bool / false Если true — задачи из сводных разделов не добавляются в запрос
CSVImportMaxThreadsCount int Количество потоков для импорта задач из CSV. Увеличение ускоряет, но возможна ошибка Specified argument was out of the range. Рекомендация — 1
UseNewGrid JSON-массив правил Включает новый грид (таблицу задач) для выбранных пользователей в выбранных контекстах. Применяется покомпонентно: каждое правило независимо, может быть задано несколько. См. структуру ниже

Пользовательские настройки задаются на странице «Настройки приложения» → «Пользовательские ключи». Источник: dbo.SettingsCustom.

Диалог «Постановка задач из CSV файла»: категория, файл, разделитель и сопоставление колонок

UseNewGrid — структура правил

Каждый объект массива:

Поле Тип / Default Назначение
subcats int[] ID категорий, для которых включается новый грид. Игнорируется при allSubcats=true
users int[] ID пользователей, к которым применяется правило
allUsers bool / false Применить ко всем пользователям
allSubcats bool / false Новый грид для всех категорий
myTasks bool / false Включить в разделе «Мои задачи»
tickers bool / false Включить для тикеров (индикаторов)

Логика применения: правило срабатывает для пользователя, если users содержит его ID или allUsers=true. При наличии хотя бы одного подходящего правила с allSubcats=true — новый грид включается для всех категорий; иначе — объединяются subcats из всех подходящих правил. Флаги myTasks / tickers ставятся в true, если хотя бы одно подходящее правило содержит их true.

Примеры:

Все пользователи, все категории, включая «Мои задачи» и тикеры:

[{"subcats":[],"users":[],"allUsers":true,"allSubcats":true,"myTasks":true,"tickers":true}]

Конкретные пользователи и категории:

[{"subcats":[5574],"users":[6736],"allUsers":false,"allSubcats":false,"myTasks":false,"tickers":false}]

Типичные ошибки настройки

Частые проблемы настройки грида и способы их диагностики:

Симптом Причина Где проверить SQL-диагностика
Пропала колонка в гриде Скрыта пользователем или убрана из схемы категории dbo.DataSourceColumns select * from dbo.DataSourceColumns where DataSourceId = {dsId} and UserId = {userId}
Фильтр работает в задачах, но не в ДП Таблица Фильтрация задач и табличных ДП обрабатывается раздельно Настройки фильтрации колонки Проверить настройки фильтрации колонки табличного ДП
Избранное группы не отображается Нет ссылок для группы пользователя Форма favourites select * from dbo.UserLinks where GroupId = {groupId}
Тикер показывает неверные данные Некорректный источник данных тикера Форма tickers select * from dbo.MenuItemTicker where Id = {tickerId}
Неверный DataSourceType/entityId Грид загружает «не тот» набор данных Параметры запроса к /api-core/datasource Проверить DataSourceType и entityId в запросе
Кнопка «В Excel» отдаёт CSV ExportAgGridAsCsv=true Пользовательские настройки приложения select * from dbo.SettingsCustom where Name = 'ExportAgGridAsCsv'
Экспорт обрывается на 50 000 строк Достигнут лимит MaxExcelExportRows / MaxCsvExportRows Пользовательские настройки приложения См. соответствующий ключ
Нет кнопок «Создание/обновление из CSV» Нет права для текущего пользователя/категории по DSUpdateCSVPermissions Пользовательские настройки приложения См. JSON-настройку выше

Связанные документы

Смежные разделы: