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

Обновлено: 07.07.2024

Элементы управления - это объекты формы, определяющие визуальное представление формы и предназначенные для интерактивного взаимодействия с пользователем (например, кнопки, флажки, поля ввода и т.д., визуальное объединение "элементарных" элементов управления).

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

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

В элементах управления данные не хранятся!

Для обычной формы полный список элементов можно открыть из меню "Форма" - "Список элементов управления формы" (рис. отсюда ): Добавить элемент управления в обычную форму можно:
  1. через пункт главного меню "Форма - Вставить элемент управления";
  2. с помощью командной панели "Элементы управления".

Элемент управления "Панель"

Элемент управления "Панель" предназначен для разделения визуального пространства формы на отдельные закладки, причем на каждой закладке могут быть расположены свои элементы управления.

Особенности использования элемента управления "Панель":

  1. Если в форму вставлен элемент управления "Панель", то для этого элемента можно задать режим "Автоправила", отличный от одноименного режима формы, причем данный режим будет действовать на все страницы панели. Свойство "Автоправила" обеспечивает автоматическую привязку границ элементов управления. Для Панели автоправила можно выставить в значение, отличающееся от значения родительской формы.
  2. При размещении элементов управления в форме нельзя разместить один и тот же элемент управления на двух страницах.
  3. Многостраничная форма может не иметь закладок, если:
    • для свойства формы "Отображать закладки" установлено значение "Не отображать";
    • отображение закладок отключено программным способом.
  4. Закладки на форме могут быть расположены сверху, снизу, справа и слева.
    используя пункт контекстного меню формы "Добавить страницу";


Элемент управления "Поле HTML-документа"

Элемент управления "Поле HTML-документа" предназначен для просмотра или редактирования HTML-документов и позволяет:
  1. отобразить на форме веб-страницу;
  2. назначить обработчики для множества событий.

HTML-документ в элементе управления "Поле HTML-документа" может быть сформирован:

  1. программно;
  2. загружен из ресурса, указываемого через URL;
  3. загружен из макета типа HTML-документ.

Редактировать HTML-документ, отображаемый в элементе управления "Поле HTML-документа", можно в режиме 1С:Предприятие (в конфигураторе документ не редактируется).

Элементы формы для списочных значений

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

  1. "Поле выбора" (пользователь может выбрать значение из списка, который можно как связать с данными, так и определить произвольный для данной формы через опцию "Строки списка выбора");
  2. "Поле списка" (пользователю показывается полный список значений, список раскрывать не нужно);
  3. "Поле ввода" (можно выбрать из данных ссылочного типа).

Можно одновременно создать элемент управления "Поле ввода" вместе с поясняющей надписью, представляющей элемент управления "Надпись", для чего необходимо создавать поле ввода через пункт главного меню "Форма - Вставить элемент управления. ".

Особенности работы с элементами формы для списочных значений:

  1. Элемент управления "Поле ввода" предназначен для:
    • ввода значений непосредственно в поле, например, с клавиатуры;
    • выбора ссылок на объекты;
    • выбора значений из предварительно сформированного списка.
  2. Тонкая прерывистая линия красного цвета в поле ввода означает, что данное поле обязательно к заполнению.
  3. Состав кнопок, расположенных справа у элемента управления "Поле ввода", определяется:
    • значением свойства поля ввода "Тип значения";
    • выбором соответствующего свойства в окне свойств элемента управления.

Отсюда . Первая опция определяется тем, что не каждый тип данных можно открыть скажем на просмотр (например для перечислений). Вторая опция также существует:

Автоматическое заполнение командной панели в форме

Для удобства и ускорения разработки форм в платформе 1С:Предприятие 8 реализована возможность автоматического заполнения командных панелей.

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

Пример. В конфигурации имеется документ РасходнаяНакладная с разработанной формой документа, в которую вставлена автоматически заполняемая командная панель. В конфигурацию добавляется документ ПриходнаяНакладная, и для него настраивается возможность ввода на основании документа РасходнаяНакладная. При этом автоматически в форме документа РасходнаяНакладная, в командной панели, появится подменю "Ввести на основании" с кнопкой, инициирующей ввод документа ПриходнаяНакладная на основании данного документа.

Набор действий и порядок их выполнения зависят от значения свойства " Источник действий " командной панели.

Источники действий

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

В качестве источника действий для командной панели могут быть выбраны:

  • все источники - служит для объединения действий от всех возможных источников формы, обработка действий при этом будет зависеть от активного элемента формы;
  • форма - обычно используется в случаях, когда панель должна содержать действия, предоставляемые формой и элементами управления, связанными с реквизитом формы по умолчанию; действия будут обрабатываться данными элементами управления и формой;
  • конкретный элемент управления - предназначен для непосредственной привязки командной панели к элементу управления; действия от панели с таким источником будут обрабатываться только данным элементом управления.

Каждый из вариантов источника действий обладает особенностями как в процессе заполнения командных панелей кнопками, так и в порядке выполнения действий, установленных в кнопках.

Порядок заполнения командных панелей

Все источники - в этом случае для заполнения командной панели используются действия, предоставленные всеми имеющимися в форме источниками (форма и все элементы управления, предоставляющие действия).

Форма - для заполнения командной панели используются действия, предоставленные формой и элементами управления, связанными с реквизитом формы по умолчанию (выделен жирным шрифтом на закладке "Реквизиты" редактора формы).

Конкретный элемент управления - для заполнения командной панели используются действия, предоставляемые данным элементом управления. Подобным источником действий может служить элемент управления ТабличноеПоле.

Если источник действий является по сути составным (все источники или форма), то действия от различных источников объединяются. При объединении дублирующиеся действия игнорируются.

Порядок выполнения действий и обновления состояния кнопок

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

Под обновлением состояния кнопок командной панели в данном случае подразумевается запрет/разрешение кнопки, установку пометки и т.д. Обновление состояния происходит в моменты бездействия системы. На текущее состояние кнопки панели влияет множество внешних (по отношению к кнопке) факторов, а также значения свойств кнопки, соответствующих тому или иному состоянию (например, свойства: " Доступность ", " Пометка "). Состояние доступности и пометки кнопки зависят в первую очередь от значений соответствующих свойств. Поясним данное высказывание на примере состояния доступности кнопки командной панели и, связанного с этим состоянием, свойства " Доступность ": если свойство установлено в значение Истина , то реальная доступность кнопки определяется платформой на основе текущего состояния источника данных; в противном случае кнопка считается недоступной (вне зависимости от текущего состояния источника данных).

Рассмотрим порядок обновления состояния кнопок командной панели и выполнения действий. Этот порядок зависит от вида действия, установленного в кнопке, и от значения свойства " Источник действий ". В случае, когда действием является вызов процедуры, состояние кнопки (доступность) определяется платформой исходя из наличия указанной в действии процедуры; в случае доступности кнопки, при инициации действия будет вызвана соответствующая процедура модуля. Для действий, отрабатываемых платформой, порядок выполнения следующий:

Все источники - сначала производится попытка обновить состояние кнопки (или выполнить действие) посредством элементов управления, связанных с реквизитом формы по умолчанию. Далее, в случае неудачи, попытка производится для активного элемента управления и, затем, для самой формы.

Форма - сначала производится попытка обновить состояние кнопки (или выполнить действие) посредством элементов управления, связанных с реквизитом формы по умолчанию. Далее, в случае неудачи, попытка производится для формы.

Конкретный элемент управления - действия выполняются (или обновляется состояние) непосредственно источником, вне зависимости от его активности в форме.

Свойство "Автозаполнение"

Установка значение Истина свойству " Автозаполнение " командной панели приводит к автоматическому заполнению кнопками в соответствии с выбранным источником действий. Автоматически добавленные кнопки не сохраняются в панели, их набор и порядок определяется платформой и зависит от множества факторов (в основном от текущего состояния источника действий). В случае установленного свойства " Автозаполнение " изменение состава кнопок, предоставляемого источником действий, автоматически отражается на составе кнопок командной панели, связанной с ним. Для подобных кнопок отсутствует возможность редактирования их свойств или изменения положения в командной панели.

Имена кнопок

Автоматически вставленные кнопки не имеют строго предопределенных имен, значения имен для них назначаются в процессе заполнения панели. Таким образом имя кнопки зависит от порядка вставки кнопки в панель и, следовательно, не рекомендуется ориентироваться на имена подобных кнопок в процессе программирования формы.

Однако из этого правила есть исключения.

Добавление кнопок в автоматически заполненные подменю

В автоматически заполненные панели и подменю имеется возможность добавления неавтоматических кнопок. При этом в случае добавления таких кнопок в подменю, имя кнопки подменю будет зафиксировано и будет оставаться неизменным до тех пор, пока данное подменю содержит кнопки, добавленные вручную.

Ручное заполнение панели

Быстрое заполнение панели кнопками с возможностью их последующего редактирования можно осуществить через контекстное меню командной панели. Для этого необходимо выбрать пункт контекстного меню " Заполнить автоматически ". Командная панель заполниться кнопками аналогично случаю с установленным свойством " Автозаполнение ", однако, кнопки панели будут доступны для редактирования и появится возможность изменять их состав и порядок.

Заполнение системного подменю

Аналогично командной панели возможностью автозаполнения обладают подменю, предоставляемые источником действий. При вставке такого подменю в панель происходит его автоматическое заполнение. Для заполнения кнопками с возможностью редактирования следует воспользоваться контекстным меню кнопки и выбрать пункт " Заполнить автоматически ".

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

В 1С Предприятии 8.2 внешний вид формы определяется расположением и свойствами элементов в дереве элементов формы. На основе этих свойств система сама "рисует" форму, в частности, командную панель формы.

Любая группа кнопок (командная панель, подменю, группа кнопок, контекстное меню) заполняется по одинаковым правилам:

  • сначала идут кнопки, предоставляемые источником команд, с которым связана данная группа;
  • затем идёт фрагмент командного интерфейса, если источник команд подразумевает его включение;
  • затем идут пользовательские команды, добавленные в данную группу;
  • затем идёт подменю Все действия (только для командной панели);
  • и в конце идёт кнопка Справка в том случае если она была предоставлена источником команд.

Рассмотрим самый простой вариант, когда в форме элемента справочника созданы две команды и помещены в командную панель формы.


В результате в режиме 1С:Предприятия расположение кнопок, соответствующих созданным командам Команда1 , Команда2 соответствует описанному выше алгоритму: в командной панели формы и в подменю Все действия сначала расположены команды, предоставляемые источником команд - формой элемента справочника (например, Записать и закрыть, Записать и др.), затем команды, созданные разработчиком ( Команда1 , Команда2 ), и затем команда Справка .


Однако у разработчика есть несколько способов существенно вмешаться в этот процесс и повысить удобочитаемость командной панели, контекстного меню и т.п. Какие же есть возможности изменить состав и порядок кнопок?

1. Можно отделить команды, созданные разработчиком, от других команд разделителем.

Для этого нужно создать в командной панели группу вида Группа кнопок и перенести в нее эти команды.


2. Можно расположить какие-то команды разработчика в начале группы команд.

Для этого нужно отменить у группы источник команд (для контекстного меню и автоматической командной панели нужно выключить флажок Автозаполнение ), затем добавить в группу свою кнопку, после нее добавить группу вида Группа кнопок и у этой группы установить источник команд - например, Форма .


В результате в режиме 1С:Предприятия командная панель формы и подменю Все действия будут иметь следующий вид.


3. Можно переместить автоматически заполняемые кнопки.

Для этого нужно поместить в дерево командной панели или контекстного меню кнопку, связанную с той же командой, которая заполняется из источника данных (например, Удалить , Скопировать и др.). Автоматически такая кнопка не будет размещена среди стандартных команд и, таким образом, можно переместить стандартную команду в другое место.


В результате в режиме 1С:Предприятия командная панель формы и подменю Все действия будут иметь следующий вид.


Чтобы пиктограмма команды Удалить отображалась в командной панели формы, нужно установить свойство этой кнопки ТолькоВоВсехДействиях в значение Нет .

4. Можно изменить порядок и видимость кнопок фрагмента командного интерфейса, предоставляемого источником команд Форма .

Например, у объекта конфигурации справочник Контрагенты существует команда Команда3 . Эта команда имеет группу размещения команд - Командная панель формы.Важное и тип параметра команды - СправочникСсылка.Контрагенты .


После установки этих свойств, Команда3 становится доступна закладке Командный интерфейс формы объекта, тип которого имеет команда и располагается в командной панели формы после стандартных команд, поставляемых формой элемента справочника.


В результате в режиме 1С:Предприятия командная панель формы и подменю Все действия будут иметь следующий вид.


Команда3 входит в группу команд фрагмента командного интерфейса. Если Вас не устраивает место, в которое вставляется фрагмент командного интерфейса, можно поместить в командную панель группу вида Группа кнопок и у этой группы установить источник команд - Глобальные команды командной панели формы .


В этом случае автоматическое размещение фрагмента будет отменено (по аналогии со стандартной кнопкой, добавленной вручную), и фрагмент командного интерфейса будет выводиться в новой группе.


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

5. Можно включить/выключить видимость стандартных команд, предоставляемых источником команд, например - Форма .

Для этого нужно открыть окно Состав команд в палитре свойств формы.


В заключение заметим, что возможности изменить порядок кнопок, предоставляемых источником команд, нет. Если такая необходимость появится, нужно отменить источник у группы команд, и полностью заполнить группу вручную.

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

Данный лайфхак поможет быстро настроить 1С для вашего удобства.

Добавление кнопки в журнал документов на вкладке «Счета покупателям»

Шаг 1. Открываем журнал документов «Счета покупателям».

Рабочая панель в данном случае имеет ряд кнопок-команд - «Копировать», «Создать»и т.д. Некоторые кнопки представлены в виде пиктограмм-картинок, а остальные написаны текстом.

Нажимаем для настройки кнопку «Еще».

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

Добавляем на панель кнопки «Провести», «Пометить на удаление/Снять пометку на удаление» и «Отменить проведение».

Шаг 2. Выбираем команду – «Изменить форму».



Шаг 3. Открываем раздел «Командная панель» и активируем группу «Кнопки командной панели».



Шаг 4. Выделяем кнопку, необходимую для расположения на рабочей панели.

В зависимости от выбранной команды может незначительно поменяться настройка, но это не принципиально.

Настройка «Отображение» имеет следующие варианты:

  • текст;
  • картинка;
  • авто;
  • текст и картинка.

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

К примеру выбираем тип «Картинка», он более компактный.

Шаг 5. Выбираем вариант настройки «Положение кнопки в командной панели» из имеющихся вариантов:

  • в командной строке;
  • в дополнительном подменю;
  • авто;
  • в командной панели и дополнительном подменю.



К примеру выбираем - «В командной панели», после чего нажимаем «Ок».

Если окно настройки не отображает кнопку, то необходимо растянуть его вниз, так как она может быть не видна. Без нажатия на «Ок» результат не сохранится.



Кнопка «Пометить текущий элемент на удаление / Снять пометку» размещена на панели.

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

Аналогичные действия выполняем с другими кнопками.

Шаг 6. Нажимаем кнопку «Еще», выбирая команду «Изменение формы». После этого разворачиваем группу «Проведение». Для команд «Отменить проведение» и «Провести» выполните одинаковую настройку: «Отображение – «Текст».

Для «Положение кнопки в командной панели» выбираем вариант «В командной панели и дополнительном подменю». Дополнительное подменю открывается кнопкой «Еще».



Шаг 7. Нажмите «Ок».

Текстовые кнопки «Отменить проведение» и «Провести» будут отображаться на рабочей панели журнала «Счета покупателям», сохранившись в кнопке «Еще».

Читайте также: