1с команды: командный интерфейс формы

Всем привет! Продолжаем делать заметки в рубрику ‘Джуниор1с’. И сегодня мы рассмотрим один из примеров – как работать с командами в 1с и для чего они нужны.

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

Рассмотрим пример с использованием команды на простом примере: В справочнике ‘_ДемоКонтрагенты’ необходимо отображать все документы безналичной денежной оплаты ‘_ДемоСписаниеБезналичныхДенежныхСредств’ в которых присутствует данный контрагент (проще говоря все переводы денежных средств текущему контрагенту). Данная задача легко решается с использованием команд в 1с.

В первую очередь создадим у справочника ‘_ДемоКонтрагенты’ новую форму, в которой будем отображать набор необходимых документов и отобразим на ней динамический список:

Форма отображения документов контрагента.
Форма отображения документов контрагента.

Отлично, теперь все что нам осталось, это каким-то образом отобразить данную форму пользователю и установить параметр динамического списка ‘Получатель’ равным текущему контрагенту.

Для этого мы создаем новую команду ‘ОтобразитьСписокБезналичныхОплат’ у нашего справочника:

Команда справочника в 1с.
Команда справочника в 1с.

Заметьте, данную команду мы параметризовали: тип параметра команды ‘СправочникСсылка._ДемоКонтрагенты’. Это говорит о том, платформа в качестве одного из параметров в команду будет передавать значение данного типа. А так же данная команда будет доступна в формах значений указанного типа.

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

Команда в командном интерфейсе.
Команда в командном интерфейсе.

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

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

Обработка команды в 1с.
Обработка команды в 1с.

Поскольку ранее мы параметризовали нашу команду, то в качестве параметра ‘ПараметрКоманды’ – мы получаем текущего контрагента, которого мы и передадим в открываемую нами форму:

А в открываем форме ‘ФормаДокументовБезналичнойОплаты’ установим параметр динамического списка при создании её на сервере. О том как работать с параметрами формы читай в этой статье.

В результате что хотели, то и получили:

Команда отобразить список безналичных оплат.
Команда отобразить список безналичных оплат.
Список документов.
Список документов.

Это один из немногих примеров использования команд в 1с. Будем рассматривать еще. Всем удачи и пока!

2+

Оставить комментарий

Ваш адрес email не будет опубликован.