Вызвать команду в форме 1с

Вызвать команду в форме 1с

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

Для того, чтобы расположить на форме кнопку, раньше, в версии 8.1, нужно было:

  • Перетащить на панель кнопку
  • Добавить функцию — обработчик события кнопки
  • В данной функции прописать код на языке 1С, который выполнит требуемые действия.

В 1С версии 8.2 появились управляемые формы. Разработка управляемых форм отличается и на них нельзя «перетащить кнопку».

Как же тогда быть?

Итак ранее кнопка представляла собой отдельный элемент формы.

Чтобы кнопка при нажатии что-то делала, нужно было для нее подключить функцию языка 1С. Такая функция называется — обработчик.

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

В новой версии 1С 8.2 появился новый объект 1С – команда. Он реализует как раз этот принцип.

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

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

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

Команду возможно использовать как на обычной форме, так и в управляемом (командном) интерфейсе 1С.

Стандартные команды 1С

Расширяем сознание дальше. Итак, суть команды 1С – это действие. Оно может быть запрограммировано на языке 1С.

Но мы знаем также действия, которые не нужно программировать на языке 1С, так как они уже доступны в платформе 1С. Например, для справочников стандартные действия – это возможность создания элемента. Для формы справочника – возможность записать, а для документа – провести. Это тоже действия?

Читайте также:  Телевизор с интернетом и wifi как работает

Да, и теперь они называются – стандартные команды 1С. Свои стандартные команды 1С есть у справочников, документов, форм и прочих объектов 1С.

Стандартные команды 1С можно отключить у конкретного объекта 1С с помощью галочки «Использовать стандартные команды 1С» в конструкторе объекта 1С на закладке «Команды 1С».

Владелец команды 1С

Команды 1С находятся во вложенной ветке своего владельца. Например, Справочники/Контрагенты/Команды 1С.

Также есть команды 1С, которые не имеют владельца, так как они являются общими. Такие команды 1С не привязаны к объектам и находятся в ветке Общие/Общие команды 1С.

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

Параметры команды 1С

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

Например, для справочника Контрагенты, юридический и физический адрес хранятся в связанном регистре Контактные данные. Чтобы перейти в него, необходимо было выбрать меню в форме контрагента(ов) — Перейти/Контактные данные.

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

В свойствах команды 1С возможно указать:

  • Тип параметра команды 1С – тип объекта 1С, который будет использован в качестве параметра, например, справочник Контрагенты
  • Режим использования параметры – нужно одно значение или список (массив).

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

Или просто перетащить команду в список элементов формы.

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

Читайте также:  Очистить кэш в опере комбинация клавиш

Думаю можно сказать, что в 8.1, да и в 7.7 концепция была следующей: оформление определяет логику работы формы, в управляемом интерфейсе во главе стола поставили логику работы, формирование внешнего вида формы переложили на плечи движка 1с. Таким чином от того куда перетащил программист команду зависит визуальное оформление элемента который запустит команду на выполнение

Как видите, это может быть «объемная кнопка», плоская кнопка на панели инструментов, или пункт выпадающего меню.

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

Команды могут находиться в 3 местах в конфигурации:

— команды формы (управляемой) находятся в модуле формы

— команды конкретного объекта конфигурации находятся в соответствующей ветке

— команды без привязки к конкретным объектам конфигурации – общие команды, которые находятся в ветке Общие – общие команды (кто бы мог подумать).

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

То где будет отображаться команда указывается в поле «Группа». Например, если мы укажем, так как показано на скриншоте то в системе команда отобразиться так:

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

Читайте также:  Как узнать пароль от вайфая мгтс

Общие команды — механизм платформы, предназначенный для описания часто используемых команд в конфигурации 1С 8.3.

Общие или глобальные команды удобно использовать, если одна команда нужна многих объектам конфигурации. Например, кнопка для вывода структуры подчиненности документов, команда отображения проводок документа, отчет о изменении объекта.

В команду можно передать параметры, например, из формы какого объекта он вызывается.

Настройка и свойства общей команды в 1С

Добавить новую команду и настроить общую форму достаточно просто, рассмотрим этот процесс подробнее:

Получите 267 видеоуроков по 1С бесплатно:

  • Бесплатный видео самоучитель по 1С Бухгалтерии 8.3;
  • Самоучитель по новой версии 1С ЗУП 3.1;
  • Группа — расположение будущей команды на интерфейсе.
  • Тип параметра команды — определяет набор объектов, в котором будет отображаться будущая команда.
  • Режим использования параметра — задает возможность передать в качестве параметра команды одно или несколько значений.
  • Изменяет данные — если галка установлена, то при выполнение команды форма будет пересчитана с сервера.
  • Модуль команды — обработчик выполнения команды, выполняется на клиенте.

Пример модуля команды:

Здесь ПараметрКоманды — объект, вызывающий команду. А в ПараметрыВыполненияКоманды структура, в которой описан Источник (вызываемая Форма), Окно (ОкноКлиентскогоПриложения), Уникальность, указывает, искать ли уже открытую форму или нет.

Группы команд 1С

Объект, позволяющий вывести команды на командный интерфейс конфигурации в отдельную группу:

Видео по общим командам от Павла Чистова:

Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):

К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

Ссылка на основную публикацию
Выделение строки цветом в excel по условию
Допустим, что одним из наших заданий является ввод информации о том, делал ли заказ клиент в текущем месяце. После чего...
Водонагреватель thermex ошибка е3
Одними из лидеров продаж в России являются водонагреватели марки Thermex. Первый офис компании появился на российском рынке в 1995 году,...
Водопровод в частном доме с гидроаккумулятором
Индивидуальное водоснабжение из колодца способствует удовлетворению ежедневных потребностей в питьевой и технической воде собственников загородных владений. Изучение особенностей, разновидностей схем...
Вызвать команду в форме 1с
На форме 1С обычно располагаются несколько полей, для ввода данных, а также кнопки управления формой и различных сервисных действий. Например,...
Adblock detector