К статье
Практический материал

Разработка и Конфигурация · 9 мин

Как создать подсистему в 1С: пошаговое руководство

Как создать подсистему в 1С через конфигуратор: настройка командного интерфейса, картинки, порядка разделов, включение объектов и типичные ошибки разработчика.

Подсистема в 1С — это объект конфигурации, который определяет раздел командного интерфейса приложения. Именно подсистемы формируют панель разделов, которую пользователь видит при запуске программы: «Продажи», «Закупки», «Склад», «Отчёты» и так далее. Каждый справочник, документ, отчёт или обработка попадает в интерфейс пользователя только через подсистему, поэтому без их настройки новая функциональность останется невидимой.

Создание подсистемы выполняется в конфигураторе и занимает несколько минут, однако ошибки на этом этапе приводят к типичным проблемам: разделы дублируются, объекты «теряются», у пользователей с ограниченными правами интерфейс выглядит иначе, чем у администратора. Ниже разобран полный цикл работы: от создания объекта метаданных до проверки результата в пользовательском режиме.

Что такое подсистема и когда её нужно создавать

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

Создавать новую подсистему имеет смысл, когда в конфигурацию добавляется самостоятельный блок функциональности — например, модуль электронного документооборота, блок мотивации персонала или интеграция с внешним сервисом. Если добавляется один-два отчёта к существующему учёту, правильнее включить их в уже существующую подсистему, а не плодить разделы.

Создание объекта «Подсистема» в конфигураторе

Откройте конфигуратор и дерево конфигурации (меню «Конфигурация → Открыть конфигурацию», если оно закрыто). Раскройте ветку «Общие», найдите узел «Подсистемы» и через контекстное меню выберите «Добавить». Откроется палитра свойств нового объекта.

Минимальный набор свойств, который нужно заполнить:

  • Имя — внутренний идентификатор без пробелов, например УправлениеПроектами. По нему к подсистеме обращаются из кода.
  • Синоним — название раздела, которое увидит пользователь, например «Управление проектами».
  • Картинка — пиктограмма раздела в панели разделов. Можно выбрать из стандартной библиотеки картинок или загрузить собственную (объект «Общие картинки»).
  • Включать в командный интерфейс — флаг, без которого раздел не появится в панели разделов.
  • Порядок — положение раздела относительно других подсистем того же уровня.
Порядок создания подсистемы
  1. 1
    Откройте конфигуратор и дерево конфигурации
  2. 2
    В ветке «Общие → Подсистемы» выполните «Добавить»
  3. 3
    Заполните имя, синоним, картинку и порядок
  4. 4
    Убедитесь, что включён флаг «Включать в командный интерфейс»
  5. 5
    На закладке «Состав» отметьте объекты раздела
  6. 6
    Обновите конфигурацию базы данных (F7)
  7. 7
    Проверьте раздел в режиме «Предприятие» под пользователем с рабочими правами

Наполнение подсистемы объектами

Состав подсистемы задаётся на закладке «Состав» в окне редактирования объекта или через кнопку «Настройка состава подсистем» в ветке «Подсистемы» — второй способ удобнее, когда нужно распределить много объектов сразу по нескольким разделам. Отметьте флажками справочники, документы, журналы, отчёты и обработки, которые должны быть доступны из этого раздела.

Важно понимать: включение объекта в подсистему не создаёт команд автоматически во всех случаях. Для справочников и документов команды появляются, если у объекта разрешён вывод в командный интерфейс (свойства «Стандартные команды» и настройки командного интерфейса объекта). Для отчётов и обработок проверьте, что у них задана основная форма, иначе команда открытия будет недоступна.

Один объект можно включать в несколько подсистем — это нормальная практика. Например, отчёт «Анализ продаж» логично разместить и в разделе «Продажи», и в разделе «Отчёты руководителя». Дублирования данных при этом не происходит: подсистема хранит только ссылки.

Настройка командного интерфейса раздела

После заполнения состава откройте редактор командного интерфейса подсистемы — кнопка «Командный интерфейс» в палитре свойств. Здесь команды разделены на группы: панель навигации (создание и списки объектов) и панель действий (отчёты, обработки, служебные команды). Для каждой команды можно задать видимость, порядок и представление.

Практические рекомендации по настройке:

  • Оставляйте в панели навигации только часто используемые списки; редкие объекты убирайте или переносите в группу «См. также».
  • Команды создания документов выносите в начало панели навигации — это ускоряет работу пользователей.
  • Не превращайте панель действий в свалку: если отчётов больше десятка, объединяйте их в общую форму отчётов или дочернюю подсистему.
Порядок разделов в панели разделов задаётся не только свойством «Порядок», но и положением подсистемы в дереве конфигурации: платформа сортирует разделы по порядку следования объектов в дереве. Перетаскивание подсистемы в дереве — самый наглядный способ выстроить разделы.
ПЗ
Практическое замечание

Вложенные подсистемы и права доступа

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

Видимость раздела у конкретного пользователя определяется правами: если у роли пользователя нет прав ни на один объект подсистемы, раздел скрывается автоматически. Это удобно — не нужно программно управлять интерфейсом. Но из этого следует и типичная ловушка: разработчик проверяет результат под полными правами, а у рабочей роли раздел пуст или отсутствует.

Проверка результата

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

Контрольные точки

Как проверить результат

Раздел в панели разделов
Норма

Раздел виден с заданной картинкой и названием, стоит на нужной позиции

Тревожный признак

Раздела нет — проверьте флаг «Включать в командный интерфейс» и права роли

Команды в разделе
Норма

Все объекты из состава доступны в панели навигации или действий

Тревожный признак

Команды отсутствуют — проверьте основную форму объекта и настройку командного интерфейса

Проверка под ограниченной ролью
Норма

Пользователь видит только доступные ему команды

Тревожный признак

Раздел пустой или пропал — у роли нет прав на объекты подсистемы

Если конфигурация работает в клиент-серверном варианте, после обновления конфигурации убедитесь, что пользователи перезапустили сеансы — кэш метаданных на клиенте может показывать старый интерфейс до перезахода.

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

Типичные ошибки
01
Создание отдельной подсистемы под каждый новый отчёт — панель разделов разрастается и теряет логику
02
Забытый флаг «Включать в командный интерфейс» — раздел существует в конфигурации, но невидим для пользователей
03
Проверка только под полными правами — у рабочих ролей раздел оказывается пустым из-за отсутствия прав на объекты
04
Правка типовых подсистем в конфигурации на поддержке — конфликты при обновлении релиза
05
Отсутствие основной формы у отчёта или обработки — команда включена в состав, но не выводится в интерфейс

Отдельная ошибка — попытка управлять интерфейсом программно, скрывая команды кодом. Платформа сама строит интерфейс по правам и составу подсистем; ручное вмешательство усложняет сопровождение и ломается при любом изменении ролей.

Итог

Что важно запомнить

Подсистема создаётся в ветке «Общие → Подсистемы»: имя, синоним, картинка, флаг включения в интерфейс и состав объектов. Видимость раздела у пользователя определяется его правами. Новую функциональность выносите в собственные подсистемы, типовые разделы не правьте напрямую, а результат всегда проверяйте под рабочей ролью.

Частые вопросы

Можно ли создать подсистему через расширение конфигурации?

Да, расширения поддерживают добавление собственных подсистем и включение в них как собственных, так и заимствованных объектов. Это предпочтительный способ доработки типовых конфигураций на поддержке — при обновлении релиза расширение не конфликтует с поставкой.

Почему раздел виден администратору, но не виден пользователю?

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

Как изменить порядок разделов в панели разделов?

Перетащите подсистемы в дереве конфигурации в нужной последовательности — платформа выводит разделы в порядке следования объектов. Дополнительно можно использовать свойство «Порядок», но нагляднее управлять положением в дереве.

Можно ли включить один объект в несколько подсистем?

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

Почему команда отчёта не появилась в разделе, хотя отчёт включён в состав?

Чаще всего у отчёта не назначена основная форма либо команда скрыта в редакторе командного интерфейса подсистемы. Откройте свойства отчёта, проверьте основную форму, затем кнопкой «Командный интерфейс» у подсистемы включите видимость команды.