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

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

Как добавить кнопку на панель в 1С

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

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

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

Определяемся, куда и какую кнопку добавляем

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

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

Маршрут решения

Как выбрать способ

Нужно вывести существующий документ, отчёт или обработку в разделИспользуйте командный интерфейс подсистемы в конфигураторе или настройку интерфейса в режиме «Предприятие»
Нужна кнопка с собственной логикой на формеСоздавайте команду формы и кнопку в конфигураторе или расширении
Нет доступа к конфигуратору, а команда уже существуетОткройте форму, меню «Ещё» → «Изменить форму» и включите видимость команды

Добавление кнопки в командный интерфейс раздела

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

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

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

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

Добавление кнопки на командную панель формы

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

Для команды создаётся обработчик: в свойствах команды укажите действие, и конфигуратор сформирует процедуру в модуле формы. Внутри процедуры пишется код, который выполнится по нажатию кнопки. Если логика требует серверного контекста, добавьте директиву компиляции &НаСервере или вызов серверной процедуры.

После создания команды перетащите её из дерева команд в дерево элементов формы — в нужную командную панель или подменю. Кнопка появится автоматически. Расположение внутри панели определяет порядок: первые кнопки видны сразу, остальные уходят в «Ещё» при нехватке места.

bsl
&НаКлиенте
Процедура ПечатьАкта(Команда)
	ПечатьАктаНаСервере(Объект.Ссылка);
КонецПроцедуры

&НаСервереБезКонтекста
Процедура ПечатьАктаНаСервере(ДокументСсылка)
	// формирование и вывод печатной формы
КонецПроцедуры

Добавление кнопки без конфигуратора: настройка формы пользователем

В типовых конфигурациях пользователь с правами администратора может вывести существующую, но скрытую команду на панель без доработки. Откройте нужную форму в режиме «Предприятие», в меню «Ещё» выберите «Изменить форму». В открывшемся дереве элементов найдите командную панель и установите флажки видимости у нужных команд.

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

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

Кнопка через расширение конфигурации

Если конфигурация на полной поддержке и снимать её с поддержки нежелательно, кнопку добавляют через расширение. В конфигураторе откройте «Конфигурация» → «Расширения конфигурации», создайте новое расширение и заимствуйте в него нужную форму. Дальше работа с командами и кнопками идёт так же, как в обычной форме.

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

Проверка результата и частые ошибки

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

Если кнопки нет, проверяйте по цепочке: входит ли объект в состав подсистемы, включена ли видимость команды в командном интерфейсе, есть ли у пользователя права на объект, не ушла ли кнопка в подменю «Ещё» из-за нехватки ширины панели. Для форм дополнительно проверьте, что кнопка перенесена в дерево элементов, а не осталась только в списке команд.

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

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

Отображение кнопки
Норма

Кнопка видна в нужном разделе или на форме сразу после открытия

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

Кнопки нет ни на панели, ни в подменю «Ещё»

Работа команды
Норма

Нажатие выполняет действие без сообщений об ошибках

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

Ошибка «Процедура не обнаружена» или прав доступа

Доступность для других пользователей
Норма

Кнопка видна всем, у кого есть права на объект

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

Кнопка есть только у администратора — проверяйте роли

FAQ

Почему кнопка появилась у меня, но не у коллег?

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

Можно ли добавить кнопку внешней обработки на панель раздела?

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

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

В конфигураторе порядок меняется перетаскиванием команд в окне командного интерфейса подсистемы или в дереве элементов формы. В режиме «Предприятие» — через «Настройку навигации» раздела и «Изменить форму» для конкретной формы.

Кнопка есть в конфигураторе, но в «Предприятии» её не видно. Что проверить первым делом?

Обновите конфигурацию базы данных (F7) и перезапустите сеанс. Затем проверьте видимость команды в командном интерфейсе и права пользователя. Если кнопка на форме — убедитесь, что она перенесена в дерево элементов, а не осталась только в списке команд.

Можно ли добавить кнопку программно, без изменения формы в конфигураторе?

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

Итог

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

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