Книга: Разработка интерфейса прикладных решений на платформе "1С:Предприятие 8"
Назад: Глобальные команды
Дальше: Краткие итоги

Если не хватает стандартных команд

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

Давайте создадим произвольную команду подбора товаров в документе РасходТовара.

Для создания произвольной команды воспользуемся командой Добавить на закладке Команды формы в редакторе команд. В результате в список произвольных команд формы будет добавлена новая команда и для нее откроется окно свойств (рис. 1.211).

Рис. 1.211. Добавление произвольной команды формы

Заполним для команды свойства (рис. 1.211):

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

ПРИМЕЧАНИЕ

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

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

Для этого нужно нажать кнопку открытия (со значком лупы) справа от поля выбора свойства Действия. После этого необходимо выбрать тип обработчика команды. Выберем значение по умолчанию Создать на клиенте. В результате в модуле формы будет создан шаблон процедуры – обработчика команды, исполняющейся на клиенте. И эта процедура автоматически будет указана в качестве обработчика команды в свойстве Действия (ПодборТовара). Разработчику останется только написать программный код исполнения команды (в нашем случае это будет просто сообщение пользователю).

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

Перетащим команду в окно элементов формы в командную панель таблицы Товары. Кроме того, зададим свойства для оформления новой кнопки в интерфейсе. Установим желтый цвет фона кнопки (свойство ЦветФона), отображение заголовка кнопки курсивом (свойство Шрифт), свойство Фигура в значение Овальная.

В результате пользователь получил возможность выбора команды Подбор товара из командной панели таблицы товаров (рис. 1.212).

Рис. 1.212. Произвольная команда формы добавлена в интерфейс

Настройка размещения и видимости произвольных команд выполняется аналогично настройке стандартных команд – и стандартная, и произвольная команды связываются с элементом формы одного и того же типа Кнопка. А доступность и видимость фактически настраиваются уже для этого элемента.

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

Рис. 1.213. Настройка доступности произвольной команды в разрезе ролей

При этом разработчик может определить:

Например, для пользователя с ролью Менеджер по ценам команда Подбор товара недоступна (флажок сброшен), см. рис. 1.213. Для этого пользователя в командной панели таблицы Товары команды нет.

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

Например, зададим зависимость команды Подбор товара от значения функциональной опции Работа с торговым оборудованием (рис. 1.214).

Рис. 1.214. Настройка доступности произвольной команды в зависимости от функциональной опции

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

Рис. 1.215. Зависимость доступности команды от значения функциональной опции

ВНИМАНИЕ!

Свойства команды Доступность и Функциональные опции имеют приоритет перед свойствами элемента управления Кнопка.

Назад: Глобальные команды
Дальше: Краткие итоги