Разработка и Конфигурация · 9 мин
Подсистемы в 1С: зачем нужны и как их использовать
Зачем нужны подсистемы в 1С: роль в интерфейсе и правах доступа, как создать и настроить подсистему, типичные ошибки и проверка результата.
Подсистема в 1С — это объект конфигурации, который определяет, какие разделы видит пользователь в панели разделов и какие документы, справочники и отчёты входят в каждый раздел. Без подсистем интерфейс прикладного решения превращается в неструктурированный список объектов: пользователю приходится искать нужный документ среди сотен элементов, а администратору — управлять доступом к каждому объекту по отдельности.
На практике подсистемы решают три задачи сразу: формируют навигацию (разделы «Продажи», «Склад», «Зарплата»), участвуют в разграничении прав (роли привязываются к подсистемам командой видимости) и помогают разработчику логически группировать объекты конфигурации. В типовых конфигурациях на БСП (Библиотека стандартных подсистем) практически весь интерфейс построен именно на подсистемах.
Что такое подсистема и как она устроена
Подсистема — объект метаданных в ветке «Общие» дерева конфигурации. У неё есть имя, синоним (отображаемое название раздела), картинка, порядок в панели разделов и состав — перечень объектов конфигурации, которые к ней относятся. Один и тот же объект (например, документ «Реализация товаров») может входить сразу в несколько подсистем: «Продажи» и «Склад».
Подсистемы поддерживают иерархию: внутри раздела первого уровня можно создать вложенные подсистемы, которые отображаются как группы в панели навигации раздела. Например, внутри «Зарплата и кадры» могут быть вложенные «Кадровый учёт», «Начисления», «Отчётность». Это позволяет строить двух- и трёхуровневую навигацию без перегрузки верхней панели.
Важно понимать: подсистема сама по себе не хранит данные и не выполняет бизнес-логику. Это чисто организационный объект. Удаление подсистемы не удаляет документы и справочники — они просто перестают отображаться в соответствующем разделе интерфейса.
Как подсистемы формируют интерфейс пользователя
В управляемом приложении (режим «Такси») подсистемы первого уровня образуют панель разделов — вертикальную или горизонтальную полосу с основными областями учёта. Когда пользователь открывает раздел, он видит панель навигации со ссылками на списки документов, справочники и отчёты, входящие в состав этой подсистемы.
Порядок разделов задаётся свойством «Порядок» или перетаскиванием в окне «Все подсистемы» конфигуратора. Картинка подсистемы отображается рядом с названием и помогает пользователям быстрее ориентироваться. Если картинка не задана, платформа показывает стандартный значок.
Командный интерфейс каждого раздела настраивается отдельно: через кнопку «Командный интерфейс» в палитре свойств подсистемы можно менять порядок команд, объединять их в группы (создание, отчёты, сервис) и управлять видимостью. Избыточный командный интерфейс — частая причина жалоб пользователей: в разделе появляются десятки ссылок, большинство из которых конкретному сотруднику не нужны.
Роль подсистем в разграничении прав доступа
Второе ключевое назначение подсистем — управление видимостью интерфейса по ролям. В конфигураторе для каждой роли можно установить признак видимости подсистемы: если у роли нет доступа к подсистеме, пользователь с этой ролью вообще не увидит раздел в панели разделов, даже если формально у него есть права на отдельные объекты.
В типовых конфигурациях на базе БСП механизм усилен: подсистемы связываются с профилями групп доступа и функциональными опциями. Например, пока в настройках не включена опция «Вести учёт по нескольким складам», соответствующие элементы интерфейса скрыты. Это позволяет одной конфигурацией обслуживать и малые фирмы, и крупные компании — интерфейс подстраивается под включённый функционал.
При доработке типовой конфигурации важно не разрушать эту связку: если добавить новый документ напрямую в подсистему, минуя стандартные механизмы, он может стать виден пользователям, которым его видеть не положено, или наоборот — пропасть из интерфейса после обновления.
Как создать и настроить подсистему
Создание подсистемы выполняется в конфигураторе и занимает несколько минут. Типовая последовательность такова:
- 1Откройте конфигуратор, в дереве конфигурации найдите ветку «Общие» → «Подсистемы» и добавьте новую подсистему.
- 2Задайте имя (латиницей, без пробелов) и синоним — именно синоним увидят пользователи в панели разделов.
- 3Выберите картинку из общей библиотеки картинок или загрузите свою.
- 4На вкладке «Состав» отметьте документы, справочники, отчёты и обработки, которые должны входить в раздел.
- 5Нажмите «Командный интерфейс» и настройте порядок и видимость команд внутри раздела.
- 6В свойствах ролей отметьте, каким ролям подсистема видна.
- 7Обновите конфигурацию базы данных (F7) и проверьте результат под пользователем с соответствующей ролью.
После создания проверьте две вещи: что раздел появился в панели разделов у нужных ролей и что внутри раздела команды расположены в логичном порядке — сначала основные рабочие списки, затем отчёты, затем сервисные функции. Пользователи привыкают к расположению быстро, и хаотичная структура снижает скорость их работы.
Вложенные подсистемы
Если раздел получается перегруженным, создайте дочерние подсистемы: в палитре свойств родительской подсистемы на вкладке «Состав» можно включить другие подсистемы. Вложенные подсистемы отображаются как группы ссылок в панели навигации. Не стройте иерархию глубже двух-трёх уровней — глубокая вложенность затрудняет поиск и путает пользователей.
Типичные ошибки при работе с подсистемами
Отдельная ошибка — путать подсистемы с функциональными опциями. Подсистема отвечает за структуру навигации, функциональная опция — за включение и отключение возможностей. В типовых решениях они работают вместе, но при собственной разработке их нужно проектировать осознанно: опция скрывает элементы, а подсистема определяет, где они находятся, когда видимы.
Как проверить результат после настройки
Как проверить результат
Новый раздел виден, название и картинка корректны
Раздел отсутствует или виден лишним ролям
Все нужные списки и отчёты доступны за 1–2 клика
Часть объектов доступна только через «Все функции»
Пользователь открывает только те объекты, что ему положены
Есть доступ к объектам вне его зоны ответственности
После тестового обновления структура разделов сохраняется
Доработки теряются или конфликтуют с типовыми
Проверку выполняйте под реальной учётной записью пользователя, а не под администратором с полными правами: администратор видит всё, и ошибки видимости под ним незаметны. Заведите тестового пользователя с целевой ролью и пройдите его типовой рабочий сценарий от начала до конца.
FAQ: частые вопросы о подсистемах в 1С
Можно ли обойтись без подсистем в собственной конфигурации?
Технически да — платформа не требует их наличия. Но тогда вся навигация сведётся к меню «Все функции», что приемлемо разве что для конфигурации из пяти объектов. Для любого рабочего решения хотя бы 3–5 подсистем по функциональным областям заметно упрощают жизнь пользователям.
Удалится ли документ, если удалить подсистему, в которую он входит?
Нет. Подсистема — это только навигационная оболочка. Объекты метаданных и данные в базе останутся нетронутыми, просто ссылки на них исчезнут из соответствующего раздела интерфейса.
Один документ может входить в несколько подсистем — это нормально?
Да, это штатная практика. Например, «Реализация товаров и услуг» логично показывать и в разделе продаж, и в разделе склада. Главное — не злоупотреблять: если объект присутствует в большинстве разделов, навигация теряет смысл.
Как скрыть раздел от части пользователей?
В конфигураторе откройте подсистему, перейдите к настройке видимости по ролям и снимите отметку с ролей, которым раздел не нужен. В типовых конфигурациях дополнительно используйте профили групп доступа и функциональные опции — они управляют видимостью без изменения конфигурации.
Почему после обновления типовой конфигурации мои изменения в подсистемах пропали?
Если вы редактировали типовые подсистемы без перевода объектов на поддержку с возможностью изменения, механизм обновления восстанавливает типовое состояние. Рекомендуемый подход — создавать собственные подсистемы и добавлять в них свои объекты, не трогая типовые разделы.
Чем подсистема отличается от функциональной опции?
Подсистема определяет, где объект находится в интерфейсе (в каком разделе). Функциональная опция определяет, доступен ли объект или возможность вообще — в зависимости от настроек программы. Они дополняют друг друга, но не заменяют.
Что важно запомнить
Подсистемы строят панель разделов, группируют объекты по областям учёта и управляют видимостью интерфейса по ролям. Создавайте собственные подсистемы вместо правки типовых, настраивайте командный интерфейс и обязательно проверяйте результат под реальной ролью пользователя на тестовой копии.