Категории¶
Категория — это шаблон, по которому создаются задачи определённого вида: заявки, договоры, поручения, обращения и т. п. Категория определяет, как выглядит форма задачи, по какому маршруту она движется, какие у неё дополнительные поля (ДП), как отображается список задач и у кого есть к ним доступ.
Настройка категории — самый объёмный раздел администрирования: у одной категории сотни параметров. Этот документ помогает разобраться, где и как они настраиваются и как диагностировать проблемы.
Сокращения в документе:
- ДП — дополнительные параметры (настраиваемые поля задачи);
- НТФ — форма создания новой задачи;
- МТФ — карточка (форма) открытой задачи;
- БИ — блоки «Используется» (связанные задачи и объекты в карточке);
- БП — бизнес-процесс.
Механизмы администрирования¶
Автоадминка (dbadmin)¶
Часть настроек категории доступна через формы автоадминки (dbadmin) по их alias:
| Alias формы | Название | Таблица БД | Полей | Секций | Где используется |
|---|---|---|---|---|---|
subcategories |
Категории | dbo.Subcategories |
319 | 24 | Основной массив флагов и параметров категории |
categories |
Разделы | dbo.Categories |
15 | 1 | Иерархия разделов (папок). Терминология: таблица Categories = Разделы, таблица Subcategories = Категории (см. глоссарий в корневом CLAUDE.md) |
states |
Статусы | dbo.States |
21 | 1 | Справочник статусов маршрута |
bp-roles |
Роли | dbo.BpRoles |
6 | 1 | Роли БП |
bp-roles-groups |
Привязки групп к ролям | dbo.BpRolesGroups |
4 | 1 | Связь ролей и групп |
bp-roles-steps |
Привязка роли к переходу и подписи | dbo.BpRolesSteps |
10 | 1 | Роли на шагах маршрута + подписи |
subcat-notes |
Примечания | dbo.SubcatNotes |
8 | 1 | Служебные заметки по категориям |
subcat-state-hints |
Подсказки | dbo.SubcatStateHints |
5 | 1 | UI-подсказки по статусам |
signatures |
Подписи | dbo.Signatures |
3 | 1 | Справочник подписей |
technical-works |
Технические работы | dbo.Subcategories |
279 | — | Срез для техработ и сервисной диагностики |
EntityEditor¶
Сводные категории и их состояния настраиваются через EntityEditor:
| Схема | Таблица БД | Назначение |
|---|---|---|
summarycategories.json |
SummaryCategories |
Сводные категории, группы доступа, тип поиска |
summarycategoriesstates.json |
SummaryStates |
Связи «сводная категория ↔ состояния категорий» |
FormsGenerator¶
Контроллеры формы редактирования категории (API):
GET /api/admin/forms/scheme/SubCategoryGET /api/admin/forms/{entity}/{key}POST /api/admin/forms/{entity}/{key}
Форма редактирования разбита на блоки (на эти имена ссылаются разделы «Где настраивается» ниже):
| Блок (SchemeBlock) | Порядок | Фокус |
|---|---|---|
stdHeaderMain |
0 | Основные свойства категории |
stdHeaderTerms |
1 | Сроки, дедлайны, напоминания |
stdHeaderWord |
2 | Word/редлайн/сравнение файлов |
EditSubcat_Counters |
3 | Счетчики просмотров/комментариев/лайков |
stdHeaderAuto |
4 | Автоматизация и SP-хуки |
EditSubcategory2_PerformersSubscribers |
5 | Исполнители/подписчики/ограничения |
stdHeaderTaskText |
6 | Текст задачи, комментарии, поиск |
Поиск по полям формы. В верхней части формы редактирования настроек категории в AdminSPA доступно поле поиска — фильтрует список секций и полей среди 319 настроек по вхождению подстроки в название (регистр не учитывается). При непустом запросе секция отображается, если её название или название хотя бы одного поля внутри неё содержит подстроку.
Admin API¶
Программно категории настраиваются через Admin API:
| Маршрут | Методы | Назначение |
|---|---|---|
/api/admin/categories |
GET, POST, DELETE | Управление разделами, копирование, массовые уведомления, отзыв прав |
/api/admin/subcategories |
GET, POST | Управление категориями (создание, копирование, удаление, очистка), зависимости Lookup, массовая генерация текста |
/api/admin/subcategories/tree |
GET | Полное дерево категорий для админки |
/api/admin/subcategories/{subcatId} |
GET, POST | Основные и доп. настройки, панель инструментов, начальный статус, порядок полей МТФ |
/api/admin/subcategories/blocks* |
GET, POST, PUT, DELETE | Блоки формы, таблицы в блоках, порядок и связи |
/api/admin/subcategories/*/buttons |
GET, POST, DELETE | Кнопки в карточке задачи |
/api/admin/subcategories/*/files |
GET, DELETE | Файлы категории и генерация шаблона DOCX |
/api/admin/subcategories/{subcatId}/includes/* |
GET, POST, DELETE | JS/CSS/HTML-вставки для НТФ/МТФ |
/api/admin/subcategories/{subcatId}/news-settings |
GET | Настройки новостных категорий |
/api/admin/subcategories/{subcatId}/resources |
GET, POST | Ресурсные категории и доступные ресурсы |
/api/admin/subcategories/{subcatId}/survey-settings |
GET, POST | Настройки опросов |
/api/admin/subcategories/{subcatId}/universal-templates |
GET, POST | Универсальные шаблоны и правила применения |
/api/admin/subcategories/steps |
GET, POST, DELETE | Переходы маршрута в категории |
/api/admin/subcategories/steps/{stepId}/actions-with-ep |
GET, POST, DELETE | Действия над ДП/файлами/шаблонами на переходах |
/api/admin/states-routes/packs-on-events |
GET | Пакеты действий до/после перехода |
/api/admin/states-routes/{stepId}/ext-params |
GET, POST, DELETE | Ограничения переходов по ДП |
/api/admin/states-routes/{stepId}/subtasks |
GET, POST, PUT, DELETE | Автоподзадачи на переходах |
Для подкатегорий с чатовым типом представления в Admin SPA дополнительно отображается секция «Настройки МТФ-панели» (чекбокс showMtfPanel + мультиселект mtfPanelGroupIds). Хранение — dbo.Subcategories (ShowMtfPanel, MtfPanelGroupIds). API: GET/PUT /api/admin/subcat/{subcatId}/settings. Бизнес-правила видимости панели описаны в бизнес-документации чата, раздел «Видимость МТФ-панели».
Список категорий, создание и переход к настройкам¶
Все категории площадки собраны в реестре Категории и процессы (Администрирование → Категории). Для каждой категории в списке видны ID, наименование, модуль, раздел, описание, ответственная группа и режим отображения; в блоке действий доступна кнопка «Очистить», удаляющая все задачи категории.

Чтобы найти категорию по номеру задачи, введите номер в поисковую строку над списком — система покажет категорию, которой принадлежит эта задача.

Создание категории¶
Новая категория создаётся кнопкой «Создать» в панели инструментов. В окне создания заполняют три поля: раздел, название категории и тип.

Раздел — родительский раздел, в который попадёт категория (категория обязательно принадлежит какому-либо разделу). Выбирается из выпадающего списка с поиском по названию и по ID раздела.

Тип определяет, как будет работать процесс и какие возможности появятся внутри категории: «Задачи» (по умолчанию), «Справочник», «Ресурсы», «Экземпляры ресурсов», «Пространство», «Чаты/каналы», «Новости», «Группы соц. сетей» и «Календарь». У каждого типа в списке есть краткое описание.

Копирование категории¶
Категорию можно создать копированием существующей: переносятся все настройки, ДП и автоматизации (включая смарты и статические подписи маршрута). Для этого служит кнопка «Копировать категорию» в панели инструментов.

В окне копирования вводят название новой категории и выбирают категорию-источник.

Главная страница настроек категории¶
Выбор категории в списке открывает её настройки — блоки «Основные настройки», «Настройки категории», «Доступ», «ДП», «Маршрут», «Смарты», «Формы» и «Уведомления». Отсюда же категорию можно удалить или очистить от задач.

Переход к настройкам категории из пользовательского интерфейса¶
Открыть настройки категории можно не только из режима администрирования, но и из пользовательского интерфейса.
Из дерева «Категории» в левом меню — через контекстное меню категории, пункт «Настройка».

Из табличного представления категории — пункт «Настройка» в меню доступных действий.

Из карточки задачи — пункт «Настройка» в списке действий панели инструментов.

Ключевые настройки¶
1. Основные свойства категории¶
Где настраивается:
- автоадминка:
subcategories - FormsGenerator:
stdHeaderMain - API:
POST /api/admin/subcategories/{subcatId}/settings
Таблица БД: dbo.Subcategories
Ключевые поля:
| Поле | Что контролирует |
|---|---|
SubcatName |
Имя категории в UI |
Details |
Описание категории |
CategoryId |
Родительский раздел |
OneFMainVisibilityMode |
Режим видимости в 1F-main |
IsDictionary |
Режим справочника |
IsCalendar |
Календарный тип |
FileProviderId |
Провайдер файлов по умолчанию |
ConfidentialMode |
Конфиденциальность |
Зависимости между полями:
CategoryIdобязателен при создании категории.IsCalendarвлияет на доступность смежных календарных сценариев и на требования к датам задач.

2. Блоки формы задачи (МТФ)¶
Где настраивается:
- API: блоки формы
- API: основные настройки (
mtf/orderable-items,mtf/reorder-items)
Таблицы БД:
dbo.CustomTaskUsedAsEpBlockSettingsdbo.Subcategories(часть общих МТФ-флагов)
Ключевые поля/объекты:
| Элемент | Что контролирует |
|---|---|
| Блок формы | Контейнер для ДП и таблиц |
| Таблица в блоке | Настройка таблицы внутри блока |
| Порядок МТФ | Порядок элементов на форме задачи |
| Кнопки формы | Связанные действия в карточке (МТФ) |
Зависимости между полями:
- Порядок МТФ зависит от включенности и видимости блока.
- Связи таблиц с блоками влияют на фактическое расположение ДП в карточке.
3. Исполнители и подписчики¶
Где настраивается:
- FormsGenerator:
EditSubcategory2_PerformersSubscribers - API:
POST /api/admin/subcategories/{subcatId}/settings
Таблица БД: dbo.Subcategories (+ связи по группам/подписям)
Ключевые поля:
| Поле | Что контролирует |
|---|---|
PerformerMode |
Режим автоподстановки исполнителей |
DoNotSelectOwner |
Не подставлять заказчика автоматически |
RestrictPerformerRemove |
Ограничить удаление исполнителей |
AllowGroupSubcription |
Разрешить подписку группами |
AllowMultiFinished |
Режим мультизавершения |
MultiFinishAction |
Поведение после завершения участником |
AllowSetSinglePerformer |
Принудительно один исполнитель |
SpecialUsersSmartExpressionId |
Смарт-определение спецпользователей |
PerformersRestrictionSmartExpressionId |
Смарт-ограничение набора исполнителей |
Зависимости между полями:
DelegateTaskConfirmSignature→ либоDelegateTaskConfirmSignatureId, либоDelegateTaskConfirmSignatureSmartExpressionId.TaskOwnerChange→ либоTaskOwnerChangeConfirmSignatureId, либоTaskOwnerChangeSmartExpressionId.AllowMultiFinishedоткрывает смысловую зависимость сMultiFinishAction.
4. Текст задачи и комментарии¶
Где настраивается:
- FormsGenerator:
stdHeaderTaskText - API:
/settings,/settings/set-task-text-uniqueness,/generate-task-descriptions-by-template
Таблица БД: dbo.Subcategories
Ключевые поля:
| Поле | Что контролирует |
|---|---|
SubcatTextMode |
Режим работы с текстом задачи |
DefaultText |
Дефолтный шаблон текста |
TaskTextMaxLength |
Лимит длины текста |
AllowHTMLTaskText |
HTML-режим ввода |
AllowImagesInTaskText |
Картинки в тексте |
OwnerCanChangeText / AdminCanEditText / SubscriberCanEditText / AnyoneCanEditText |
Модель редактирования текста |
EnableComments / EnableCommentsEdit / DenyEnterComments |
Поведение комментариев |
HideSystemComments |
Скрытие системных комментариев |
TaskTextSearchType |
Тип поиска по тексту |
Зависимости между полями:
- При включении уникальности текста через API возможны блокировки создания дублей.
- Массовая генерация текста зависит от шаблона и ДП категории.
5. Сроки и таймеры¶
Где настраивается:
- FormsGenerator:
stdHeaderTerms - API:
POST /api/admin/subcategories/{subcatId}/settings
Таблица БД: dbo.Subcategories
Ключевые поля:
| Поле | Что контролирует |
|---|---|
SrokMode |
Модель срока/дедлайна |
DefaultDurationMode |
Дефолтная длительность |
MinSrok |
Минимальный срок |
RecommendedDueDate |
Рекомендованный срок |
AllowChangeDuration |
Разрешение менять длительность |
AllowSetTaskStartTime |
Разрешение задавать старт |
AllowSetTimeParamsInPast |
Разрешить прошлые даты |
SrokControl |
Напоминание/контроль до срока |
Smart25/Smart50/Smart75/Smart100 |
Процентные напоминания |
ExcludeFromOverdueReport |
Исключение из отчёта просрочки |
Зависимости между полями:
ChangeDueConfirm→ChangeDueConfirmSignatureIdилиChangeDueConfirmSignatureSmartExpressionId.- Ограничения на прошлые/рабочие интервалы влияют на доступность ручной коррекции сроков.
6. Статусы и переходы¶
Где настраивается:
- автоадминка:
states,bp-roles,bp-roles-groups,bp-roles-steps,subcat-state-hints - API: переходы маршрута
Таблицы БД:
dbo.Statesdbo.StatesRoutesInSubcatdbo.BpRolesdbo.BpRolesGroupsdbo.BpRolesStepsdbo.SubcatStateHints
Ключевые поля/объекты:
| Элемент | Что контролирует |
|---|---|
| Переход | Переход между статусами |
Роли (BpRoles) |
Ролевая модель на переходах |
| Действия по ДП | Действия по ДП на переходе |
| Ограничения перехода | Блокирующие проверки перед переходом |
| Автоподзадачи | Автосоздание подзадач на переходе |
| Пакеты действий | Пакеты смарт-действий до/после шага |
Зависимости между полями:
- Ограничения по ДП и actions-with-ep привязаны к конкретному
stepId. - Пакеты действий привязываются к событиям
BeforeTaskStep/AfterTaskStep.
Маршрут категории и дизайнер¶
Маршрут (жизненный цикл) настраивается отдельно для каждой категории на вкладке «Маршрут» и состоит из переходов между статусами. При создании категории маршрут настроен по умолчанию.

В графическом дизайнере маршрута статусы создают и редактируют в окне свойств статуса: имя, цвет, почтовые сообщения и комментарии при переходе в статус.

Через панель инструментов дизайнера создают новый статус, добавляют существующий и добавляют переход. Эти кнопки активны только в режиме «Показать полный маршрут»: пока у категории настроен основной маршрут, добавление статусов и переходов скрыто.
Кнопки перехода¶
Каждому переходу соответствует кнопка на карточке задачи; текст кнопки — это название перехода. По умолчанию кнопки выводятся в начале формы.

Положение меняется опцией категории «Положение кнопок переходов и смарт-кнопок» (секция «Карточка задачи»); вариант «В конце формы» выводит блок кнопок после всех ДП, перед лентой сообщений.

Таблица переходов¶
Маршрут в табличном виде: каждая строка — переход из статуса (колонка «Из статуса») в целевой («В статус») с текстом кнопки, переопределением права на переход (колонка «Право»), сроком перехода, признаком активности (колонка «Активна») и автоматически присваиваемым ID. Над таблицей — кнопки «Добавить переход», «Восстановить по умолчанию», «Удалить выбранные переходы».

Начальный статус и шаг при постановке¶
Начальный статус по умолчанию — «Новая»; в опции «Произвольный статус начала маршрута» над таблицей можно выбрать другой начальный статус (только из статусов с типом «Начальный»).

Опция «Шаг при постановке» задаёт автоматический переход сразу после создания задачи (из переходов начального статуса). ⚠️ У создающего задачу должно быть право на этот переход.

Тот же автопереход можно реализовать иначе — пакетом смарт-действий на событии «После создания задачи» (вкладка «Смарт»); это удобно, когда переход нужен по условию или не из статуса «Новая».
Настройка перехода¶
Клик по строке таблицы открывает настройки перехода. Окно состоит из вкладок: «Настройки», «Подзадачи на переходе», «Подписи на переходе», «Доп. параметры», «Действия с ДП», «Смарты на переходе».

На вкладке «Настройки» задаются параметры самого перехода:
- Кнопка и порядок — название кнопки, описание (подсказка), порядок среди кнопок.
- Автоисполнитель — кто становится исполнителем после перехода (нажавший кнопку или роль). Вариант «берётся из ДП» работает только с ДП-списком, в значениях которого указаны ID пользователей; настройка «Действия при автоназначении» решает судьбу прежних исполнителей (оставить или удалить, назначить ответственным).
- Срок перехода и «Альтернативный переход при просрочке» — по истечении срока задача автоматически уходит в указанный статус; если он не задан, задача остаётся в текущем статусе, а срок на кнопке становится красным.
- Флаги: «Сбросить срок» (очищает срок; для просроченных запрашивает причину), «Кнопка скрыта» (кнопка не отображается, но переход остаётся доступен в ленте маршрута, в дизайнере — пунктиром), «Требовать комментарий при переходе», «Назначить заказчика исполнителем», «Автоматически делать переход при завершении всех подзадач».
- «Изменить текст задачи» — подставляет новый текст по шаблону (не действует, если в категории включена автогенерация текста по ДП). «Перейти по ссылке после перехода» — смарт-выражение формирует URL или номер задачи, куда перейти после нажатия.
- «Сквозное согласование» — переход выполняется независимо от резолюций акцептантов; «Разовое согласование» — подпись не запрашивается повторно у акцептанта, уже давшего положительную резолюцию (действует на все подписи перехода).
Блок «Ограничить доступ» управляет видимостью кнопки: смарт-фильтр видимости плюс матрица переопределения права. В режиме «По умолчанию» кнопка видна только пользователям с правом «Исполнять» в категории; служебные пользователи (Робот1Ф) выполняют переходы всегда.
⚠️ Поле «Процедура при переходе (SQL)» оставляйте пустым — оно предназначено только для сертифицированных специалистов разработчика; произвольный SQL здесь может повредить данные.
⚠️ Принудительная смена статуса (правка поля «Статус» в карточке) доступна только администратору категории и не запускает автоматизации перехода — подписи, проверки и изменения ДП, смарты; использовать только для исправления ошибок.
Подзадачи на переходе¶
Автосоздание подзадач или связанных задач после выполнения перехода.

Новая подзадача добавляется кнопкой «Добавить подзадачу» — сначала указывается категория.

На вкладке «Основное» задают текст задачи (с подстановкой $ExtNДП из родителя), срок, условие создания, заказчика и флаги (связанная задача, копировать подписчиков, переносить вложения).

⚠️ Флаг «Связанная задача» создаёт связанную (а не дочернюю) задачу; при его включении в родительской задаче перестаёт работать автопереход по завершении всех подзадач.
Вкладка «Параметры» — источник значения каждого ДП подзадачи: Автоматически / Фиксированное значение / из ДП родительской задачи.

Вкладка «Исполнители» — кто назначается исполнителем подзадачи (группа, заказчик родительской, роль и т. д.).

Подписи на переходе¶
Запрос подписей (согласование) при переходе — статический или динамический маршрут согласования.

Новая подпись создаётся в форме с вкладками «Основное», «Обязательные ДП», «Информационные ДП», «Условия запроса», «Настройки ЭП».

Порядок подписей задаёт поле «Этап согласования» на вкладке «Основное»: одинаковый номер этапа — подписи запрашиваются параллельно, разные номера — последовательно. Вкладка «Настройки ЭП» появляется только при включённом флаге «ЭЦП».
Обязательные ДП — параметры, которые акцептант должен заполнить до вынесения резолюции.

Информационные ДП — значения, видимые акцептанту при запросе подписи (не поддерживаются типы «Большой текст с форматированием», «Таблица», «Выбор пользователей», «Адрес», «Дерево»).

Динамический маршрут согласования формируется SQL-процедурой в момент перехода (опция «Сервис определения подписей на переходе» = «Маршрут из sql запроса»).

Флаг «Кешировать полный маршрут согласования» фиксирует настройки маршрута на момент старта согласования: правки, внесённые по ходу, применятся только в следующем цикле.
Доп. параметры (обязательные на переходе)¶
ДП, обязательные к заполнению для выполнения перехода.

Обязательный ДП добавляется выбором из списка над таблицей и кнопкой «Создать».

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

Действия с ДП¶
Действия с ДП типа «Файл» на переходе: сгенерировать файл по шаблону и вложить его в задачу или в ДП, ограничить доступ к файлу.

Новое действие создаётся заполнением параметров и кнопкой «Создать действие» (генерация по шаблону, выбор действий, ограничение доступа, имя файла-результата).

Флаг «Шаблон находится в доп. параметре» переключает источник шаблона: включён — шаблон берётся из выбранного ДП, выключен — выбирается готовый шаблон. Уровень защиты результата задаёт «Ограничить доступ к файлу»: без защиты, только чтение (с паролем или без), отслеживание изменений, комментирование.
После создания действие появляется в таблице.

Смарты на переходе¶
Смарт-пакеты, привязанные к событиям «Перед переходом» и «После перехода» (те же пакеты доступны и на вкладке «Смарт» категории — здесь вынесены для удобства).

Если на переходе настроены и подпись, и смарты, действия выполняются по порядку: акцепт подписи → смарт-действия после подписания статической подписи → переход по маршруту → смарт-действия после перехода.
7. Файлы и вложения¶
Где настраивается:
- FormsGenerator:
FileProviderId, Word-блок - API: файлы категории
- API: действия по ДП на переходах (файловые действия на шагах)
Таблицы БД:
dbo.Subcategoriesdbo.Signatures(косвенно для сценариев подписи файлов)- профильные таблицы вложений (через file services)
Ключевые поля:
| Поле/объект | Что контролирует |
|---|---|
FileProviderId |
Где хранить вложения категории |
AllowDeleteFiles (AllowDeleteFilesEnum) |
Разрешение удаления файлов. Влияет на блок «Файлы» задачи и на кнопку удаления в ДП типа «Файл» и «Мультифайл». Значения: Allow (0), Disallow (1), DefineBySmartExpression (2). При DefineBySmartExpression: смарт-выражение возвращает true — запрещено, false — разрешено. |
AllowDeleteFilesSmartExpressionId |
ID смарт-выражения для режима DefineBySmartExpression |
ForbidUploadFilesIntoClosedTasks |
Блок загрузки в закрытых задачах |
AutoDeletePrevVersionsOfFiles |
Автоудаление старых версий |
DisallowProtectedDocx / DisallowEmbeddingsInDocx |
Ограничения Docx |
GenerateSubcategoryTemplate |
Генерация DOCX-шаблона категории |
Зависимости между полями:
- Ограничения Docx и Word-сценарии актуальны только в категориях с соответствующим процессом документов.
8. Подписи¶
Где настраивается:
- автоадминка:
signatures,bp-roles-steps - FormsGenerator: поля
*ConfirmSignature*,StepSignsFromSysRobot,DeclineSignatureFromSysRobot - API: маршруты/шаги и роли БП
Таблицы БД:
dbo.Signaturesdbo.BpRolesStepsdbo.Subcategories
Ключевые поля:
| Поле | Что контролирует |
|---|---|
AllowSignatureRevoke |
Разрешение отзыва подписи |
AllowSignatureRevokeByAcceptors |
Отзыв акцептантами |
AllowSignatureRevokeByOwner |
Отзыв заказчиком |
AllowSignatureRevokeByRequester |
Отзыв инициатором |
DelegateTaskConfirmSignatureId |
Подпись при делегировании |
TaskOwnerChangeConfirmSignatureId |
Подпись при смене заказчика |
ChangeDueConfirmSignatureId |
Подпись при смене срока |
Зависимости между полями:
- Для каждой проверки подтверждения выбирается источник: статическая подпись (
...SignatureId) или смарт-выражение (...SmartExpressionId).
9. Шаблоны задач¶
Где настраивается:
- API: универсальные шаблоны
- API: категории и разделы (
auto-task-text-template, массовая генерация)
Таблицы БД:
- таблицы контура
TaskUniversalTemplates dbo.Subcategories(часть template-related параметров)
Ключевые поля/объекты:
| Элемент | Что контролирует |
|---|---|
| Шаблон задачи | Шаблоны создания задач |
| Правило применения | Правила применения шаблонов |
| Генерация шаблона | Генерация шаблона по структуре категории |
auto-task-text-template |
Шаблон автогенерации текста |
Зависимости между полями:
- Правила шаблонов привязаны к категории и могут конфликтовать по приоритету.
10. JS/CSS вставки¶
Где настраивается:
- API: JS/CSS-вставки
Таблицы БД: таблицы контура вставок (includes)
Ключевые поля/объекты:
| Объект | Что контролирует |
|---|---|
GET .../includes/ntf |
Вставки на форму создания задачи (НТФ) |
GET .../includes/mtf |
Вставки на карточку задачи (МТФ) |
SubcatIncludeType |
Тип/режим отображения вставки |
Зависимости между полями:
- Одна и та же вставка может иметь разные типы отображения для НТФ и МТФ.
11. Опросы и новости¶
Где настраивается:
- API: настройки опросов
- API: настройки новостей
- API: категории и разделы (
/news) - EntityEditor:
summarycategories*(для сводных категорий состояний)
Таблицы БД:
SummaryCategories/SummaryStates- настройки новостей/опросов через профильные сервисы
Ключевые поля/объекты:
| Элемент | Что контролирует |
|---|---|
| Настройки новостной категории | Поведение новостной категории |
| Настройки опросов | Шаблон и условия опросов |
AllowPartialSurveyComplete |
Разрешить частичное прохождение опроса: участник может закрыть опрос на середине, промежуточные ответы автоматически сохраняются, финал фиксируется только при нажатии «Готово». При false опрос должен быть пройден за одну сессию |
TaskTextSearchType (сводная категория) |
Поиск в сводной категории |
SummaryCategoryIDSummaryStates |
Состояния, включённые в сводку |
Smart-события при прохождении опроса:
| Когда срабатывает | EventID / код |
|---|---|
Промежуточное автосохранение ответов (IsComplete = false, есть изменения) |
187 — AfterSurveyResultUpdated |
Финальное «Готово» (IsComplete = true) |
188 — AfterSurveyCompleted + custom event SURVEY_RESULT (для смарт-пакетов «После завершения опроса») |
AfterSurveyCompleted и SURVEY_RESULT срабатывают на финальное «Готово» независимо от настройки AllowPartialSurveyComplete. Повторное нажатие «Готово» по уже завершённому опросу отбивается ошибкой SurveyHasAlreadyBeenCompleted — событие не дублируется.
Зависимости между полями:
- Сводная категория зависит от выбранных состояний и привязанных групп доступа.
12. Кнопки действий¶
Где настраивается:
- API: кнопки действий
Таблицы БД: контур пользовательскых кнопок (TaskFormCustomButton*)
Ключевые поля/объекты:
| Элемент | Что контролирует |
|---|---|
| Создание кнопки | Параметры создаваемой кнопки |
| Условия кнопки | Условия показа и действия |
| Список кнопок | Список кнопок категории |
buttons/update |
Изменение кнопок без редактирования категории целиком |
Зависимости между полями:
- Видимость кнопки зависит от её условий и от структуры переходов/ролей.
Типичные ошибки настройки¶
Частые проблемы настройки категории и где их проверять:
| Симптом | Причина | Где проверить | SQL-диагностика |
|---|---|---|---|
| Не видны нужные блоки/ДП в карточке | Нарушен порядок МТФ или связи блок-таблица | блоки формы + subcategories |
select top 100 * from dbo.CustomTaskUsedAsEpBlockSettings where SubcatID = @SubcatId order by SortOrder; |
| Переход не срабатывает | Ограничение по ДП на шаге или неверный role-step | states-routes*, bp-roles-steps |
select * from dbo.BpRolesSteps where StepId = @StepId; |
| Нельзя делегировать/сменить заказчика | Включено подтверждение подписью, но не настроен источник подписи | блок исполнителей в FormsGenerator | select top 1 SubcatId, DelegateTaskConfirmSignatureId, TaskOwnerChangeConfirmSignatureId from dbo.Subcategories where SubcatId = @SubcatId; |
| Невозможно загрузить файл в закрытой задаче | Активен запрет для закрытых задач | subcategories / files settings |
select SubcatId, ForbidUploadFilesIntoClosedTasks from dbo.Subcategories where SubcatId = @SubcatId; |
| Массовая генерация текста изменила все задачи не так, как ожидалось | Ошибка в шаблоне автотекста | generate-task-descriptions-by-template |
select SubcatId, AutoTaskTextTemplate from dbo.Subcategories where SubcatId = @SubcatId; |
| Категория «пропала» из нужного дерева | Сбита привязка к разделу или видимость | categories + subcategories |
select s.SubcatId, s.CategoryId, c.Name as CategoryName from dbo.Subcategories s left join dbo.Categories c on c.CategoryId = s.CategoryId where s.SubcatId = @SubcatId; |
SQL-диагностика метамодели админки¶
Проверка, какими формами и полями управляется категория:
select
af.Alias,
af.Name,
do.FullObjectName,
afc.CountColumns,
afs.CountSections
from dbadmin.AdminForms af
left join (
select FormId, count(1) as CountColumns
from dbadmin.AdminFormSectionColumns
group by FormId
) afc
on afc.FormId = af.Id
left join (
select FormId, count(1) as CountSections
from dbadmin.AdminFormSections
group by FormId
) afs
on afs.FormId = af.Id
left join dbadmin.DbaObjects do
on do.Id = af.DbaObjectId
where af.Alias in (
'subcategories',
'categories',
'states',
'bp-roles',
'bp-roles-groups',
'bp-roles-steps',
'subcat-notes',
'subcat-state-hints',
'signatures',
'technical-works'
)
order by af.Alias;
Проверка зависимостей полей в форме subcategories:
select
dep.AdminFormSectionColumnId as ColumnId,
dep.DependsOnColumnId,
dep.OperationType,
dep.Value,
dep.DependencyRuleType
from dbadmin.AdminFormSectionColumnsDeps dep
where dep.FormId = (
select top 1 af.Id
from dbadmin.AdminForms af
where af.Alias = 'subcategories'
)
order by dep.AdminFormSectionColumnId;
Admin API — создание категорий и разделов¶
Создание раздела (Category)¶
Раздел создаётся запросом:
POST("/api/admin/categories", {
"CategoryName": "Название раздела" # НЕ "Name"!
})
Создание категории (Subcategory)¶
Категория создаётся запросом:
POST("/api/admin/subcategories", {
"SubcategoryName": "Название категории", # НЕ "Name"!
"CategoryID": category_id # Поле БД: CategoryId; в API принимается как CategoryID
})
Создание переходов (StateRoutes / Steps)¶
Переходы маршрута создаются запросом:
POST("/api/admin/subcategories/steps", {
"SubcatID": subcat_id,
"StateID": state_id,
"HiddenStep": False # ОБЯЗАТЕЛЬНО — bool?, NULL → InvalidCastException
})
Системные steps создаются автоматически при создании категории (stateId:1 «Новая», stateId:2 «Завершена»). Повторный вызов с теми же stateId → 500.
Типичные ошибки Admin API категорий¶
Частые ошибки при работе с Admin API категорий:
| Проблема | Причина | Решение |
|---|---|---|
Name → 500 |
Поле называется CategoryName / SubcategoryName |
Использовать точные имена полей (см. примеры запросов выше) |
HiddenStep не передан → InvalidCastException |
bool? → NULL в БД → ошибка приведения типа |
Всегда передавать HiddenStep: false |
| 500 при создании step | Дубль stateId (системные steps уже созданы) | Проверять наличие перед созданием |
13. Дополнительные параметры (ДП) в категории¶
Дополнительные параметры (ДП) — настраиваемые поля задачи помимо системных: они определяют, какие данные собираются в категории, как они отображаются на форме и в карточке задачи и кто имеет к ним доступ.
Привязка ДП к категории и все их настройки описаны в профильном домене ДП — ext-params/admin.md → «Привязка ДП к категории».
14. Блоки «Используется» (БИ)¶
БИ отображают связанные задачи и объекты (письма, звонки, файлы) в карточке задачи.
В карточке задачи блок «Используется» выглядит как отдельный список связанных задач или объектов с собственной панелью инструментов и (при настройке) кнопкой «Создать».

Где настраивается:
- UI: настройки категории → «Блоки Используется»
- API: блоки формы
Таблицы БД: dbo.CustomTaskUsedAsEpBlockSettings, dbo.EpBlockSettingsToBlocks
Все блоки БИ категории собраны в списке: идентификатор, имя, порядок на форме и признаки сворачивания. Новый блок создаётся кнопкой «Создать».

Настройки блока¶
Параметры блока «Используется» (БИ):
| Параметр | Описание |
|---|---|
| ID | Присваивается автоматически при создании |
| Имя | Название блока |
| Порядок на форме | Общий порядок с блоками ДП (порядок 1 выше порядка 2) |
| Может сворачиваться / По умолчанию свернут | Управление раскрытием |
| Доступен по смарт-фильтру | Видимость блока по условиям (пользователь, параметры задачи). Недоступно при создании — задаётся на форме редактирования |
| Видимость | Скрыта / Только мобильный / Только веб / Отображать везде. Приоритет над смарт-фильтром. Недоступно при создании — задаётся на форме редактирования |
| Вид отображения | Таблица (стандартный список), Формы задач подряд (последовательность карточек), Галерея задач (в разработке) |
Новый блок создаётся в форме с полями «Имя», «Порядок на форме» и флагами сворачивания.

Существующий блок редактируется на вкладке «Редактировать блоки»: сверху — параметры блока, снизу — список его вкладок.

В виде отображения «Таблица» связанные задачи показываются стандартным списком.

В виде «Формы задач подряд» каждая связанная задача выводится отдельной карточкой без панели инструментов и ленты комментариев; ДП, ресурсы и вложения можно редактировать прямо из блока, как в форме задачи. Если в блоке одна таблица — задачи показываются раскрывающимися блоками с заголовком «имя БИ + номер»; если таблиц несколько — единой лентой с горизонтальными разделителями.

Если у категории-источника включено «Скрыть текст задачи» и задано «Название сущности», это название показывается вместо имени блока БИ. Если в категории-источнике задан «Текст кнопки постановки», он используется как надпись кнопки создания задачи из БИ.
Источники данных вкладки БИ¶
Вкладка БИ может брать данные из разных источников:
| Тип источника | Описание |
|---|---|
| Связанная категория | Категория с Lookup-ДП на данную. При создании из БИ — автозаполнение Lookup. В выпадающем списке доступны только категории, где уже есть такой Lookup-ДП (иначе сначала создайте его в категории-источнике) |
| Хранимая процедура SQL | Обязательные параметры: @UserID, @TaskID, @UserNameMode, @ShowAllTasks, @StartIndex, @EndIndex. Обязательные поля: TaskID, IsOverdue, StateID, PriorityID, IsClosed, IntColor, FinishWork, ParentTaskID. Опционально: TaskIdToDrillDown (int) — цель перехода при клике. Для корректной группировки/фильтрации переведите вкладку на «Произвольный источник» |
| Произвольный источник | ХП с произвольными колонками. @UserID обязательно, @TaskID опционально |
| Смарт-фильтр | Отбор задач из любых категорий. Поле «Категория» определяет куда ставить новые задачи |
| Существующая таблица | Повторное добавление вкладки из другого БИ. Одна таблица может быть в нескольких блоках, но в одном блоке — только один раз |
⚠️ БИ работает с уникальными TaskID — основной TaskID должен быть уникален для каждой строки набора данных (повторы допустимы только в колонке TaskIdToDrillDown).
Новая вкладка добавляется на вкладке «Добавить таблицу в блок»: выбирают тип источника, блок, категорию и параметры отображения.

Настройки вкладки¶
Параметры вкладки БИ:
| Параметр | Описание |
|---|---|
| Имя | Название вкладки; если не задано — берётся имя источника (только для SQL и Smart) |
| Показывать только активные | На вкладке только незавершённые задачи (только для связанных категорий) |
| Категории источники | Мультивыбор категорий; для оптимизации запросов данных |
| Показывать кнопку «Создать» | Да / Нет / Smart+TSql. Кнопка видна только пользователям с правом создавать задачи в категории |
| Пакетная обработка | Кнопка пакетной обработки на панели инструментов. Для SQL/Smart источников — ограниченный набор операций |
| Режим выбора | Выбор задач для пакетной обработки |
| Тип контента | Задача / Прочее (для SQL-источников) |
| Брать ссылку из | Колонка набора данных со ссылкой; по клику на строку открывается она вместо карточки задачи (только SQL) |
| Открывать ссылку в | По умолчанию (по профилю) / Новое окно / Модальное окно (только SQL) |
| Приоритетный режим таблицы | Прямое редактирование (двойной клик → edit, только при праве менять параметр) или Просмотр (клик → карточка). По умолчанию «Не указано» — применяется режим из РМ группы «Приоритет режима редактирования» |
| Не закрывать окно после создания | Задача остаётся в модальном окне |
| Видимость | Скрыта / Только мобильный / Только веб / Везде. Приоритет над смарт-фильтром видимости |
Существующая вкладка редактируется в отдельном окне — те же параметры источника, кнопки «Создать», режима таблицы и видимости.

Форма быстрой постановки¶
Флаг IsQuickCreateForm в CustomTaskUsedAsEpBlockSettings. Показывает краткую форму (системные поля + обязательные ДП). Недоступна если есть обязательные ДП типа Таблица или Multilookup. Только для БИ на категорию.
При включённой быстрой постановке кнопка «Создать» открывает краткую форму — только системные поля (в зависимости от настроек категории) и обязательные при создании ДП.

В выпадающем меню у кнопки «Создать» остаётся пункт «Полная форма» — для открытия полной карточки постановки.

Итоги (агрегаты)¶
CustomSetting DataSourceAggregates:
[{"type": "taskUsed", "id": 39, "gridTotalColumns": {"ExtParam1709": ["sum", "avg"]}}]
sum, avg, min, max. Для ДП — ключ ExtParam{ID}, для системных — имя параметра (overallPlan, overallFact).
Связь БИ-таблицы с блоком ДП¶
Одна таблица БИ (режим «Таблица») может быть встроена внутрь блока ДП — отображается рядом с полями. Порядок блоков ДП и БИ — общий.
Встраивание включается в настройках блока ДП опцией «Связь таблицы БИ с блоком ДП» (доступно только для БИ с видом отображения «Таблица»).

После связывания таблица БИ отображается внутри блока ДП рядом с его полями.

UI-переход к настройкам¶
Открыть настройки БИ можно из пользовательского интерфейса: ПКМ на блоке в карточке задачи → «Настройки» — откроется соответствующий раздел администрирования. Пункт «Настройки» в контекстном меню доступен только администраторам.

15. Смарт-кнопки¶
Кнопки действий в карточке задачи и в статьях пространств.
Где настраивается:
- UI: настройки категории → вкладка «Кнопки»
- API: кнопки действий
Таблицы БД: контур TaskFormCustomButton*
Смарт-кнопки настраиваются в настройках категории на вкладке «Кнопки» — здесь их список и кнопка «Создать». По умолчанию кнопки выводятся в начале формы вместе с переходами по маршруту; их положение меняется опцией категории «Положение кнопок переходов и смарт-кнопок» (секция «Карточка задачи»).

Основные параметры кнопки¶
Основные параметры смарт-кнопки:
| Параметр | Описание |
|---|---|
| Имя | Текст кнопки (или tooltip при наличии иконки) |
| Описание | Всплывающая подсказка |
| Иконка | Из набора /spa/content-icons |
| Порядок | Порядок среди кнопок |
| Видимость | Скрыта / Только мобильный / Только веб / Отображать везде. Приоритет над всеми остальными настройками видимости |
| Отображать в «Других действиях» | Группировка в выпадающее меню. Доступно только при Видимость = «Только веб» / «Отображать везде». Название меню задаётся опцией категории «Другие действия» |
Новая кнопка создаётся кнопкой «Создать» — в окне свойств задают имя, описание, иконку, порядок, видимость, действие (JS/пакет/URL), права и связь с ДП/БИ.

Действие кнопки¶
Действие кнопки задаётся одним из вариантов:
| Вариант | Описание |
|---|---|
| JavaScript выражение | Скрипт при нажатии |
| Пакет действий | Глобальный или локальный пакет смарт-действий |
| URL | Произвольная ссылка / Форма новой задачи / Форма задачи / Раздел / Категория. FastReport: /reports/view/{id}/print-form. onlyCloseAfterCreate=true — закрыть модалку без редиректа (только для ссылок в модальном окне). Для «Форма новой задачи» — смарт-выражения: Категория (обяз.), Задача-источник/Подзадача/Связанная (опц.); ДП переносятся из задачи-источника |
| Открывать ссылку в | В текущем окне / В модальном окне / В новом окне — способ открытия URL |
⚠️ Если указаны и JS/пакет, и URL — сначала JS/пакет, затем URL. Ошибка JS → переход по URL не выполняется.
Режим недоступности¶
Поведение недоступной кнопки:
| Параметр | Описание |
|---|---|
| Сообщение пользователю | Текст или смарт-выражение при нажатии на недоступную кнопку |
| Смарт-фильтр активности | true → доступна, false → недоступна |
| Скрыть по смарт-фильтру | При false — кнопка полностью скрыта |
Права на кнопку¶
Доступ к кнопке:
- По умолчанию — только с правом «Исполнять». Робот1Ф всегда имеет доступ
- Матрица доступа — статусы × группы/роли/права
Матрица настраивается по кнопке «Настройка прав доступа»: статусы × группы/роли/права, иконка 👁 — просмотр, ✏️ — редактирование.

Связь с ДП и БИ¶
Кнопку можно привязать к полю ДП или таблице БИ:
- С ДП — кнопка рядом с полем (одна кнопка ↔ несколько ДП и наоборот). С иконками — друг за другом, без иконок — свёрнуты в «Действия». Для «Большой текст» — max 2 кнопки напрямую, с 3-й переносятся в «Действия»; длинный текст кнопки обрезается (полный — в подсказке)
- С таблицами БИ — кнопка в панели инструментов блока (одна кнопка ↔ несколько таблиц и наоборот)
С иконками кнопки выводятся рядом с ДП друг за другом.

Без иконок кнопки сворачиваются в меню «Действия».

Привязанная к таблице БИ кнопка отображается в панели инструментов блока.

Созданная кнопка появляется в списке; чтобы изменить её — кликните по строке (удаление — через контекстное меню строки).

Кнопки в пространствах¶
Доступны через иконку действий в статье. иконка по умолчанию из /spa/content-icons. Отделены от стандартных действий горизонтальной чертой. Кнопки можно сгруппировать в «Другие действия», как в карточке задачи.
![]()
Автоматически создаваемые кнопки¶
Пример: «Пройти опрос» при включении режима опросов, «Редактор» для категории-справочника опросов.
UI-переход к настройкам¶
Открыть настройки кнопки можно из пользовательского режима: ПКМ на кнопке в карточке задачи → «Настройки» (доступно только администраторам).

16. Опросы¶
Двухкатегорийная архитектура: справочник опросов + категория прохождения.
Где настраивается:
- UI: настройки категории → вкладка «Опросы»
- API: настройки опросов
Таблицы БД: dbo.Surveys, dbo.SurveyQuestions, dbo.SurveyResults, dbo.SurveyResultQuestions
⚠️ Не путать с опросами в сообщениях (чаты/соцсеть) — там таблицы Polls, PollsQuestions, PollsQuestionsAnswersOptions, PollsResponses.
Режим «Опросы» (категория-справочник)¶
Автосоздаётся смарт-кнопка «Редактор» с URL /spa/survey/creator/?surveyTaskId={surveyTaskId}. Настройки кнопки можно корректировать (видимость, статусы и т.д.).
Режим «Прохождение опросов» (категория-исполнитель)¶
Требует ДП Lookup (источник — категория-справочник), указанный в «Выбор опроса».
| Параметр | Описание |
|---|---|
| Разрешить частичное прохождение | Автосохранение каждого ответа, возврат к прерванному месту. Если выключено — сохранение только по кнопке «Готово» |
| Опрос — настройка доступа | Матрица доступа к кнопке прохождения (статусы × группы/роли). По умолчанию — доступно всем |
| Результат — настройка доступа | Матрица доступа к блоку результатов. По умолчанию — доступно всем |
Кнопка «Пройти опрос» доступна только исполнителю. В результатах — только показанные вопросы с записанными ответами (включая пустые). Скрытые по условиям вопросы не выводятся.
События автоматизации¶
При работе с опросом доступны события автоматизации:
- «После завершения опроса»
- «После обновления результата опроса»
17. Права доступа к категории¶
Вкладка «Доступ» в настройках категории. Детальная матрица 12 прав — см.
../permissions/admin.md.
Где настраивается:
- UI: настройки категории → вкладка «Доступ»
- UI: настройки группы → «Права на категории»
Два режима просмотра: «По группам» и «По правам». Поиск групп — по названию и ID.

12 прав на категорию¶
Полный набор прав, выдаваемых группам на категорию:
| Право | Описание |
|---|---|
| Администратор задач | Менять любые параметры, удалять задачи/комментарии, принудительные переходы, редактировать пространства |
| Администратор категории | Настройка категории (кроме ДП, удаления, маршрута), смарт-поиск, табличный вид |
| Добавлять и менять акцептантов | Делегирование подписей, добавление акцептантов |
| Запретить экспортировать в Excel | Блокировка выгрузки |
| Исполнять | Работа с задачами, переходы по маршруту |
| Менять заказчика | Смена заказчика задачи |
| Редактировать исполнителей | Назначение/удаление исполнителей, трудозатраты за других |
| Пакетная обработка | Массовые действия над задачами |
| Переносить срок | Смена срока (при включённом ограничении в настройках) |
| Просмотр всех задач | Просмотр и комментирование всех задач |
| Просмотр зашифрованных задач | Доступ к тексту/ДП зашифрованных задач |
| Создавать задачи | Создание задач (пользователь = заказчик) |
Взаимодействие «Редактировать исполнителей» × «Ограничить удаление»¶
Совместное действие двух настроек:
| Редактировать исполнителей | Ограничить удаление | Результат |
|---|---|---|
| + | + | Можно удалить себя, можно добавлять |
| + | − | Можно добавлять и удалять любых |
| − | − | Только чтение |
| − | + | Только чтение |
SQL view доступа на просмотр¶
v2.265 Цефей+. View/таблица возвращает (TaskID, UserID). Имя хранится в dbo.Subcategories.TSQLAccessFunction. ⚠️ WITH (NOLOCK) обязательно. Права категории > SQL view.
Наследование руководителями¶
Право «Просмотр всех задач» может наследоваться руководителями двумя способами:
- CustomSetting
ForbidSubcatRightsInheritanceToDirector— наследование права «Просмотр всех задач» по группам - Общая настройка «Руководитель наследует право на просмотр задач» — по роли в задаче
Заместители¶
Получают все права замещаемого, кроме просмотра конфиденциальных задач и просмотра зашифрованных задач.
18. Настройки раздела (Category)¶
Раздел = папка для группировки категорий (
dbo.Categories).
Где настраивается:
- UI: режим администрирования → раздел
- API: разделы
Параметры раздела¶
Доступные параметры раздела:
| Параметр | Описание |
|---|---|
| Родительский раздел | Иерархия разделов |
| Стандартное представление | вид по умолчанию для всех категорий раздела (Лента, Таблица, Календарь, Канбан, Галерея, Иерархия, Диск, Проекты, Соц. сети и др.) |
| Дополнительный синдикат | Подключение портала к разделу |
| Модуль | Привязка к модулю. Новые категории наследуют модуль раздела |
Выбор родительского раздела осуществляется через выпадающий список в настройках категории (вкладка «Основные»). С v2.268 список показывает полный иерархический путь раздела в виде Родитель / Подраздел / Раздел — вместо плоского отображения только имени и ID. Это позволяет однозначно выбрать нужный раздел, если несколько разделов имеют одинаковые названия.
Массовые действия с правами¶
Единственный способ массово настроить доступ при создании нового раздела:
- Выбрать «Группа» + «Право» → Выдать (добавляет право всем вложенным категориям) или Отобрать (снимает)
- Отобрать все права у всех групп — полный сброс
Быстрые действия¶
Быстрые действия с разделом:
- Быстрое создание категорий в разделе
- Копировать в новый раздел (с вложенными категориями)
- Переименовать (контекстное меню)
19. Счётчики задач¶
Где настраивается:
- UI: настройки категории → Инструменты → Счётчики
| Настройка | Описание |
|---|---|
| Показывать количество новых задач | Синий индикатор в дереве (начальный статус). Кроме Справочников |
| Показывать количество просроченных | Красный индикатор в дереве + в Панели навигации (где пользователь = исполнитель) |
| Показывать количество всех задач | Серый индикатор в дереве. Кроме Справочников |
| Показывать количество в заголовках | Над списком задач — количество с учётом фильтров |
| Количество просмотров | Только для Новостей — счётчик просмотров новости |
20. Названия интерфейса¶
Основные названия¶
Основные интерфейсные названия категории:
| Настройка | Описание | По умолчанию |
|---|---|---|
| Подсказка (тултип) | Всплывающая подсказка при наведении на категорию в дереве | — |
| Название сущности | Вместо «Задача» — «Документ», «Поручение» и т.д. | Задача |
| Текст кнопки постановки | Текст кнопки на НТФ | Поставить задачу |
Прочие названия¶
Прочие настраиваемые названия и тексты:
| Настройка | Описание | По умолчанию |
|---|---|---|
| Название срока выполнения | Срок | |
| Название даты начала работы | Начало работы | |
| Текст назначения исполнителя | Системное сообщение при назначении | — |
| Ссылка на текст родительской | Заголовок текста родителя в подзадаче | — |
| Наименование исполнителя | Исполнитель | |
| Наименование заказчика | Для Новостей → автоматически «Автор» | Заказчик |
| Сообщение о создании | Поступила новая задача | |
| Текст при добавлении подписчика (один) | Добавлен подписчик | |
| Текст при добавлении подписчиков (несколько) | Добавлены подписчики | |
| Шаблон напоминания | Текст напоминания, поддерживает вставки автогенерации | — |
21. Иерархический вид¶
Два метода настройки иерархии:
- По ДП Lookup: создать ДП Lookup (источник = сама категория) + ДП Галочка. В настройках иерархии указать «Лукап родителя» и «Чекбокс папки»
- По дереву подзадач: создать настройку без выбора ДП — иерархия соответствует дереву подзадач
Доп. параметры в гриде — список ДП для отображения в иерархическом представлении.
22. Новостные категории¶
Доступно при типе категории «Новости».
| Настройка | Описание |
|---|---|
| Наличие обложки | Обязательная при включении. Пропорция 2:3 |
| Отображать автора | Автоподстановка «Автор» в «Наименование заказчика» |
| Теги | Обязательные при включении. ДП «Новости - Теги» |
| Рубрика | Обязательная при включении. ДП «Новости - Рубрика» |
| Аннотация | Max 150 символов. ДП «Новости - Аннотация» |
По умолчанию все настройки включены.
23. Рекомендуемые категории¶
Список категорий, рекомендуемых для создания подзадач/связанных задач. Отображается перед полным списком. В проектном управлении — первая категория из списка становится целевой для новой подзадачи.
24. Подзадачи¶
Настройки поведения подзадач в категории:
| Настройка | Описание |
|---|---|
| Ставить только подзадачи | Задачи создаются только как дочерние |
| Отклонять дочерние при отклонении родительской | Каскадное отклонение |
| Для завершения требуется завершить подзадачи | Блокировка завершения |
| Фиксировать смену статусов дочерних | Сообщение в родительскую при смене статуса |
| Срок зависит от дочерних/родительских | Дочерняя не позже родительской |
| Копировать подписчиков в подзадачи | Автокопирование подписчиков |
25. Повторения задач¶
Настройки материализации повторяющихся задач.
| Параметр | Описание |
|---|---|
| Включить материализацию повторений | Создание цепочек задач. Опорная дата = дата начала работы. При перематериализации: будущие задачи корректируются, прошлые — нет |
| Отображать в задаче (Смарт) | 1 = показать блок повторений, 0 = скрыть |
| Дата начала / Дата окончания (Смарт) | даты по умолчанию повторения |
| Право редактировать повторение (Смарт) | 1 = можно менять настройки, 0 = нельзя |
| Порядок повторений | Порядок блока относительно ДП |
| Стилизация календаря (Смарт) | Набор данных: datetime2, color, title |
| Срок (Смарт) | срок по умолчанию для каждого экземпляра |
| Скрыть выбор даты окончания серии | Убрать элемент выбора окончания |
| Скрыть выбор срока | Скрыть поле срока (при авто-расчёте) |
Материализация при переносе с нерабочих дней (с 2.268.332). Если в правиле повторения используется перенос с нерабочего дня (настройка «При попадании на нерабочий день» = «Перенести на ближайший рабочий день»), материализация включается принудительно, независимо от значения параметра «Включить материализацию повторений» в категории. Механизм переноса реализован только в материализованной ветке исполнения, бэк-валидация ValidateRecurrences отклоняет такие расписания при отключённой материализации. В остальных случаях, когда фронт не передаёт isMaterializationEnabled, бэк подставляет значение из настройки категории (Subcategories.IsRecurrenceMaterializationEnabled). Глубина материализации задаётся пользовательской настройкой RecurrenceTasksMaterializationDays (по умолчанию 365 дней).
26. Форма создания задачи (НТФ)¶
Настройки карточки создания новой задачи.
| Параметр | Описание |
|---|---|
| Не использовать форму создания | Мгновенное создание без НТФ. Недоступно если: есть обязательные ДП, текст обязателен без default, срок обязателен без default, исполнитель обязателен |
| Разрешить назначать приоритет | Выбор приоритета на НТФ |
| Разрешить добавление подписчиков | Поле «Подписчики» на НТФ |
| Разрешить указывать получателей уведомлений | Поле «Уведомить» на НТФ |
| Разрешить устанавливать повторения | Кнопка «Параметры времени» на НТФ |
| Разрешить устанавливать напоминания | Кнопка «Напоминания» на НТФ |
| Разрешено устанавливать дату начала | Поле «Начало работы» на НТФ |
| Заполнять дату начала текущим временем | Автозаполнение при создании |
| Отображать кнопку «Закрепить как чат» | Пункт в карточке и меню «Участники» |
| Лимит вложений | Суммарный размер файлов (байты). Автоформатирование: байты → КБ → МБ → ГБ |
| Количество колонок доп.параметров (НТФ) | По умолчанию = 3. Влияет на «Количество занимаемых колонок» ДП |
27. Прочие настройки¶
Прочие настройки категории:
| Параметр | Описание |
|---|---|
| Тип поиска | Вхождение / Полнотекстовый / Полное совпадение / Обрамлять справа / Обрамлять слева |
| Искать в ДП по умолчанию | режим по умолчанию поиска «в полях» |
| Ограничить просмотр истории | Нет / Согласно доступам на редактирование / Смарт-выражение |
| Частота обновления грида (сек) | Автообновление списка. Не чаще 30 сек |
| Напоминание за N дней | Автосоздание напоминания подписчикам |
| Использовать триграмм | Нечёткий поиск с учётом опечаток. Минимум 3 символа. SP OnChangeSubcatUseTrigramSearchF (MS SQL only) |
| Напоминание 25%/50%/75%/в день окончания | Процентные напоминания |
| Скрыть быстрое создание в ДП | Блокировка быстрой постановки в Lookup/Multilookup |
| Скрыть кнопку создания | Блокировка создания во всех представлениях |
CustomSettings для триграмм:
UseTrigramInSimpleSearch— нечёткий поиск в быстром поискеFilterChain.MaxTrigramCountForTrigramSearch— max триграмм (по умолчанию: 100000)FilterChain.MinSubcatSizeForTrigramSearch— min размер категории (по умолчанию: 100000)
28. Представления категории¶
Включение/отключение представлений и выбор представления по умолчанию.
⚠️ Между доменами: масштабы Ресурсов (7 масштабов) и Календаря (6 масштабов) + флаг «Отображать в терминальном статусе» настраиваются в календаре. Здесь — только включение/отключение и выбор представления по умолчанию.
| Параметр | Описание |
|---|---|
| Включение представлений | Активация переключателей для каждого типа (Таблица, Лента, Канбан, Календарь и т.д.) |
| Представление по умолчанию | Кнопка ★ на блоке. Вступает в силу после перезагрузки страницы |
| Закреплять по умолчанию как чат | Задачи автоматически приравниваются к чатам |
Для блока «Таблица» — переход к настройкам табличного вида (см. ниже).
Настройки табличного вида категории¶
Доступны через блок «Таблица» представлений категории. Настройки определяют дефолтный вид списка задач для всех пользователей.
Изменения вступают в силу после сброса пользователем настроек на вид по умолчанию.
Общие настройки¶
Общие настройки табличного вида:
| Параметр | Описание |
|---|---|
| Отбор по умолчанию | Преднастроенный отбор категории, применяемый при открытии списка |
| Тип статуса | Все / Активные / Завершённые / Отклонённые. С 2.268.363 значение «Все» применяется корректно при открытии грида — раньше оно автоматически подменялось дефолтным «Активные». С 2.268.366 (#2097422, ч.2) также корректно сохраняется ручной выбор «Все» в пользовательских настройках грида (раньше null терялся при сериализации). См. ../grids/business.md § «Системные отборы по статусу» |
| Группировать по | Одно или несколько полей для дефолтной группировки |
| Группировать одной строкой | Склеивает группу в одну строку (по умолчанию вкл) |
| Позиция закрепления | Слева / Справа — для столбцов с активной опцией «Закрепить столбец» |
| Скрыть невидимые поля | Скрывает поля без видимости по умолчанию |
Кнопки: «Открыть предпросмотр» (проверка изменений до сохранения), «Сбросить на рекомендуемые» (Выравнивание/Ширина/Тип фильтра в дефолт), «Сбросить» (откат изменений и колонок с «Видимостью по умолчанию» до предыдущего сохранения для всех).
Дополнительные настройки таблицы¶
«Больше настроек»:
| Параметр | По умолчанию | Поведение |
|---|---|---|
| Можно менять ширину столбцов | Вкл | Перетаскивание угла столбца. Установленная ширина сохраняется индивидуально для каждого пользователя |
| Можно менять порядок столбцов | Вкл | Перемещение заголовка мышью. Сохраняется индивидуально для каждого пользователя |
| Сохранять пользовательские настройки | Вкл | При повторном входе таблица открывается с пользовательскими настройками. При экспорте в Excel учитывается тоже: вкл = пользовательские, выкл = дефолт |
| Можно включать фильтры | Вкл | Кнопка фильтрации + пункт «Фильтровать по значению» в контекстном меню. Панель по умолчанию раскрыта |
| Можно включать группировку | Вкл | Кнопка группировки + пункт «Группировать» в контекстном меню. Если группировка задана — раскрыта; иначе свёрнута |
| Можно включать доп. поле столбца | Выкл | Кнопка «Показать меню» в панели; иначе — в меню действий |
| Переносить заголовки по строкам | Вкл | Полные заголовки с переносом; иначе обрезаются многоточием |
С версии 2.268 быстрая фильтрация по аватарке исполнителя включена по умолчанию (доп. настройки не требуются).
Доступ по группам к колонкам¶
При настройке доступа по группам к колонкам виртуальные группы (например, «Подписчики задач (всем)») не применяются — нужно использовать обычные или связанные группы.
29. Блоки ДП и группы блоков¶
Настройки блоков ДП и групп блоков (список, создание и редактирование блока, цвет, смарт-фильтры, группы) — в ext-params/admin.md → «Блоки ДП и группы блоков». Здесь — связь с БИ.
Связь БИ-таблицы с блоком ДП¶
Одна таблица БИ (вид «Таблица») может быть встроена в блок ДП. Порядок блоков ДП и БИ — общий (блок с порядком 1 выше блока с порядком 2). Привязка хранится в ExtParamsInSubcatToBlocks.
Группы блоков ДП¶
Блоки объединяются в группы. Порядок внутри группы — по Порядок на форме. Группа связывается с категорией через страницу «Группы блоков ДП».
Смарт-фильтры блоков¶
Видимостью блоков можно управлять смарт-фильтрами:
| Фильтр | Контекст |
|---|---|
| Сворачивать по смарт-фильтру | МТФ: true = свёрнут |
| Скрывать по смарт-фильтру | МТФ: true = скрыт |
| Сворачивать при постановке | НТФ: true = свёрнут |
| Скрывать при постановке | НТФ: true = скрыт |
Контекстный параметр @eventParam1 (WhenOpenTask=64): 0=Undefined, 1=Spa, 2=Mobile, 3=Conference.
30. ДП на мобильном¶
Ключевые принципы настройки ДП с учётом мобильного приложения:
- ДП должны быть сгруппированы в тематические блоки
- Порядок — по ходу заполнения
- Видимость — по правам и логике процесса
- Обязательность — на каждом переходе хотя бы один ДП
- Не требовать много параметров при создании — использовать статус «Подготовка» с автопереходом
Наследование значений из задачи-источника¶
При создании из контекста (БИ, Lookup, Multilookup, подзадачи) — совпадающие ДП наследуют значения. Отключение — опция «Не копировать значения из задачи-источника» в настройках ДП.
31. Автосоздание подзадач на переходах¶
Настройка подзадач, создаваемых при переходе по маршруту.
Где настраивается:
- API: автоподзадачи на переходах
- См. также:
transition-settings-reference.md(поляStatesRoutesSubtask*)
Основные параметры подзадачи на переходе¶
Основные параметры автосоздаваемой подзадачи:
| Параметр | Описание |
|---|---|
| Текст задачи | С вставками $Ext{ID} из родительской задачи |
| Срок задачи | На основе поправки срока |
| Имя параметра | Условное создание: если ДП родителя = значение |
| От кого | От исполнителя / От заказчика / От нажавшего кнопку |
| Связанная задача | Не дочерняя, а связанная (отключает автопереход по завершении подзадач) |
| Копировать подписчиков | Из родительской |
| Переносить вложения | Все файлы из родителя |
| Каждому исполнителю — копию | Отдельная подзадача на каждого |
Исполнители подзадачи¶
Исполнители подзадачи определяются одним из способов:
- Исполнители из группы
- Назначить исполнителем заказчика родительской
- Назначать роль заказчика (по группе)
- Копировать исполнителей
Параметры подзадачи¶
Для каждого ДП — источник: Автоматически / Фиксированное значение / Из ДП родителя.
CustomSettings — глобальные ключи поведения категорий¶
Глобальные ключи CustomSettings, влияющие на поведение категорий:
| Ключ | Тип | Назначение |
|---|---|---|
ExtendedSubcatSettings |
JSON | Расширенные настройки категории (per-SubcatID): отключить вопросы (commentQuestionsAllow=false) и/или требование комментария при «Вопрос не мне» (commentNotMeAnswerRequired=false). Формат: {"$SUBCAT_ID":{"commentQuestionsAllow":bool,"commentNotMeAnswerRequired":bool}} |
FromUtpTableFirstOrderSubcats |
array | ID категорий, для которых в SQL-запросе списка задач предикат проверки прав ставится первым в FROM — оптимизация для крупных таблиц с дорогостоящими JOIN |
CalendarPopupMenuSubcats |
array | ID категорий, попадающих в контекстное меню календарных категорий для быстрой постановки задачи. Если ключ не задан — в меню стандартный набор (Событие в календаре, Задача в категории, все календарные категории) |
Последовательность действий при переходе по маршруту¶
При выполнении перехода система последовательно выполняет 38 шагов, в том числе:
- Проверка статуса подзадач (если требуется).
- Проверка прав пользователя.
- Проверка динамических подписей.
- Выполнение коннекторов и смартов «перед сменой статуса».
- Проверка плановых трудозатрат (если назначаются исполнители).
- Мультизавершение (если включено).
- Запрос подписей (задача переходит в «На подписи»).
- Выполнение перехода и запись в журнал.
- Генерация текста задачи (по шаблону), сброс срока.
- Комментарий о переходе, email-рассылка уведомлений.
- Постановка подзадач на переходе.
- Выполнение хранимых процедур.
- Смарты «После перехода» и «После изменения статуса».
- Обновление денормализации.
Принудительная смена статуса (через редактирование поля «Статус») не выполняет переход по маршруту и пропускает все автоматизации. Доступна только пользователям с правами администратора категории.
Связи с другими доменами¶
Категория связана с другими доменами системы:
| Домен | Связь |
|---|---|
| Задачи | Категория — шаблон для создания задач; определяет маршрут, ДП, представления, права |
| Дополнительные параметры | Привязка ДП к категории с индивидуальными настройками (имя, обязательность, блок) |
| Подписи | Подписи на переходах маршрута; настройки отзыва и делегирования через подписи |
| Маршруты / Статусы | Маршрут жизненного цикла задач; автопереходы, альтернативные переходы |
| Смарт-логика | Смарты на переходах, смарт-доступ, смарт-выражения для исполнителей/подсказок |
| Комментарии | Настройки ленты сообщений на уровне категории |
| Пользователи и группы | Права доступа на категорию выдаются группам; роли определяют доступ к задачам |
| Уведомления | Оповещения при переходах, просрочках, изменениях |
| Почта | Настройки почтовых ящиков категории |
| Файлы | Настройки вложений, шаблоны файлов |
| Порталы | Раздел может отображаться как портал (дополнительный синдикат) |
| Проекты | Проектные задачи, рекомендуемые категории для подзадач |
| Календарь | Категории типа «Календарь» отображаются в календарях пользователей |
| Чат | Категории типа «Чаты/каналы» для мессенджера |
| Отчеты | Рекомендуемый срок, исключение из отчетов о просрочке |
| Интеграции | Синхронизация с 1С, коннекторы, хранимые процедуры |
Связанные документы¶
См. также:
- Справочник переходов ЖЦ — полный справочник полей переходов жизненного цикла (
StatesRoutesInSubcat) - Типы категорий и бизнес-правила
- Настройка ДП — общие настройки ДП, типы, блоки ДП
- Форма задачи — формы задач (НТФ/МТФ)
- Права доступа — матрица прав на категорию (12 прав)
- Смарт-действия — пакеты действий до/после переходов
- Календарь — масштабы Календаря и Ресурсов, терминальный статус