Системные категории: справочник¶
Обзор¶
Системная категория — категория задач, к которой привязана встроенная функция платформы (чаты, проектное управление, соцсеть и т.д.). Платформа находит такую категорию по её ID, сохранённому в конфигурации, а не по названию.
В интерфейсе администратора системные категории собраны в разделах «Системный» и «Социальные сети».
Почему это важно для поддержки: если клиент удалил или пересоздал системную категорию (либо ID в конфигурации указывает не на ту категорию), соответствующая функция перестаёт работать или работает некорректно. Типовой пример — групповые чаты не создаются, потому что GroupChatSubCatID указывает на категорию личных чатов.
Как платформа определяет системную категорию¶
ID системной категории хранится в одном из двух мест:
| Хранилище | Что | Как читается |
|---|---|---|
dbo.Settings |
Колонки *SubcatId / *SubCatID |
ConfigurationService.Get() → SettingEntity |
dbo.SettingsCustom |
JSON-ключи socialNetworksSettings, ToDoListSettings |
Доменные конфиг-сервисы |
Часть системных категорий дополнительно защищена от удаления — их ID собираются в Categories.cs и при попытке удаления платформа блокирует операцию.
Типы представления категорий (SubcatType)¶
У каждой категории есть тип представления (Subcategories.SubcatTypeID). Для некоторых системных функций требуется конкретный тип.
| Код | SubcatType |
Назначение |
|---|---|---|
| 1 | Tasks |
Задачи (тип по умолчанию) |
| 2 | Dictionary |
Справочник |
| 3 | Calendar |
Календарь |
| 4 | Space |
Пространство |
| 5 | Chats |
Чаты |
| 6 | Media |
Медиа (новости) |
| 7 | Resources |
Ресурсы |
| 8 | ResourcesInstances |
Экземпляры ресурсов |
| 9 | GroupsSocialNetworks |
Группы соцсетей |
Категории раздела «Системный»¶
Ключи хранятся в dbo.Settings, задаются через форму автоадминки system-settings (Общие настройки приложения).
| Категория | Ключ Settings |
Тип | Назначение |
|---|---|---|---|
| Личные чаты | ChatSubcatId |
Tasks¹ |
Личные (p2p) чаты, максимум 2 участника |
| Открытые групповые чаты | GroupChatSubCatID |
Tasks¹ |
Групповые чаты без обязательной приватности |
| Закрытые групповые чаты | ClosedGroupChatSubcatId |
Tasks¹ |
Приватные групповые чаты; целевая категория при включении IsPrivate |
| Личные задачи | PrivateSubcatID |
Tasks |
Личные задачи и поручения, не относящиеся к бизнес-процессам |
| Проектные задачи | ProjectTasksSubcatId |
Tasks |
Проектные задачи на этапе планирования (ПУ); после старта проекта задачи переносятся в категорию проекта |
| Контрольные точки | MilestoneSubcatId |
Tasks |
Вехи (контрольные точки) проектов |
| Справочник ресурсов | RMResourceCatalogSubcatId |
Resources |
Управление ресурсами. Требует тип «Ресурсы». При создании администраторам выдаются полные права, пользователям — просмотр; «Срок» необязателен |
| Календарь | CalendarSubcatId |
Calendar |
Календарные события. ⚠️ В старой документации помечена устаревшей — доступ к событиям сейчас регулируется правом группы на группу «Просматривать календарные события членов группы» |
| Обратная связь | FeedBackSubcatID |
Tasks |
Обращения обратной связи от пользователей |
| Ошибки системы | ErrorSubcatID |
Tasks |
Автоматически регистрируемые отчёты об ошибках |
| Анонимные задачи | AnonymousSubcatID |
Tasks |
Анонимные задачи / обращения |
| Новости заставки | LeadInSubcatId |
Tasks |
Категория задач-новостей для экрана-заставки (lead-in): объявления, показываемые пользователю при входе. Официальное название поля — «Категория новостей заставки» |
¹ Чат-категории. Категории чатов создаются с типом Tasks; платформа опознаёт их по ID из Settings, а не по типу SubcatType. Тип Chats (5) используется параллельно — для каналов. ChatSubcatId, GroupChatSubCatID и ClosedGroupChatSubcatId должны указывать на три разные категории. Пошаговая настройка категорий чатов и разбор типовых ошибок — в chat/admin.md.
Категории раздела «Социальные сети»¶
ID хранятся в dbo.SettingsCustom, JSON-ключ socialNetworksSettings (DTO CustomSettingsSocialNetworksConfigDto).
| Категория | Поле в socialNetworksSettings |
Тип | Назначение |
|---|---|---|---|
| Группы для открытых публикаций | GroupsForPublicationsId |
GroupsSocialNetworks |
Открытые сообщества. Группе «Все пользователи» по умолчанию выданы права: Исполнять, Просмотр всех задач, Создавать задачи, Менять заказчика |
| Группы для закрытых публикаций | GroupsForClosedPublicationsId |
GroupsSocialNetworks |
Закрытые сообщества. Группе «Все пользователи» по умолчанию выдано только «Создавать задачи» |
| Личные публикации | PersonalPublicationsSubcatId |
GroupsSocialNetworks |
Публикации в профиле пользователя. После первого поста создаётся задача «Публикации. {ФИО}», далее каждый пост — сообщение в ней |
| Статьи | ArticlesSubcatId |
Space |
Статьи пространств, создаваемые из формы поста по кнопке «Создать статью» |
Дополнительно в socialNetworksSettings: RootCategoryId — раздел-контейнер «Социальные сети», PortalId — портал соцсети.
⚠️ Имена полей групп — без суффикса Subcat: GroupsForPublicationsId, GroupsForClosedPublicationsId. У «Статей» тип Space, а не GroupsSocialNetworks — при пересоздании категории указывать тип «Пространство».
При смене типа сообщества «Открытое» ↔ «Закрытое» задача автоматически переносится между категориями открытых и закрытых публикаций.
ToDo list (чек-листы)¶
ID хранятся в dbo.SettingsCustom, JSON-ключ ToDoListSettings (DTO CustomSettingsToDoListConfigDto).
| Категория | Ключ | Тип | Назначение |
|---|---|---|---|
| Шаблоны ToDo list | TemplatesSubcatId |
Tasks |
Шаблоны чек-листов, на основе которых наполняются чек-листы в рабочих категориях |
| Задачи шаблонов ToDo list | — (отдельного ключа нет) | Tasks |
Задачи шаблонов чек-листов. Категория определяется по фиксированному GUID 206991aa-e224-4ec0-956e-5165d926ad6a; в ToDoListSettings хранятся только ID её ДП |
Справочники 1С¶
«Справочники 1С» — не отдельная категория, а раздел, категории внутри которого создаются динамически модулем синхронизации с «1С:Предприятие» (Sync1C). Каждая создаваемая категория-справочник получает тип Dictionary (IsDictionary = true); её ID хранится в настройках конкретного профиля синхронизации, а не в общем ключе Settings. Подробнее — integrations/admin.md.
Как восстановить системную категорию¶
Если системная категория удалена или функция к ней «отвязалась»:
- Создать категорию в нужном разделе («Системный» или «Социальные сети») с правильным типом представления (см. таблицы выше — для большинства
Tasks, для ресурсовResources, для статейSpace, для календаряCalendar). - Прописать ID новой категории в соответствующий ключ:
- для ключей
Settings— через форму автоадминкиsystem-settings(Общие настройки приложения) или прямой записью вdbo.Settings; - для соцсетей и ToDo list — через JSON в
dbo.SettingsCustom(socialNetworksSettings/ToDoListSettings). - Проверить права доступа категории для группы «Все пользователи» (см. требования в таблицах).
- Для чат-категорий — убедиться, что три ключа указывают на три разные категории.
Что НЕ является системной категорией¶
«Уведомления о прочтении». В старой документации упоминалась категория с таким названием — для задач, создаваемых при ответах на запросы подписи по email. Технически это не системная категория: отдельного ключа в Settings/SettingsCustom для неё нет, автоматически она не создаётся, от удаления не защищена. Это обычная категория, к которой администратор вручную привязывает почтовый ящик, совпадающий с «ящиком для ответов» из общих настроек. Сценарий настройки относится к домену подписей — см. signatures/business.md.
Связанные документы¶
- categories/admin.md — администрирование категорий
- categories/business.md — бизнес-логика категорий
- chat/admin.md — настройка категорий чатов
- social-network/admin.md — администрирование соцсети
- pm/business.md — проектное управление
- integrations/admin.md — синхронизация с 1С