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