Открытие управляемой формы 1С на основании другого объекта

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

А в этом нам поможет уже знакомый метод глобального контекста ОткрытьФорму.
Познакомиться с этим методом можно в статье:

Открытие управляемой формы в 1С 8.3 с передачей параметров

В каркасной конфигурации (взята для примера к статье) документ «Оплата» можно создать на основании документа «Приход товара».

Пример ввода на основании

Для открытия новой формы с заполненными полями как у объекта-основания необходимо использовать параметр Основание, который является параметром расширения управляемых формы 1С, в частности, для документов и справочников. Заметьте, у формы документа Оплата нет параметра Основание.

Управляемая форма документа Оплата

Для примера, в конфигураторе 1С я сделал внешнюю обработку, на форме обработки разместил реквизит ДокументПриходТовара с типом ДокументСсылка.ПриходТовара и команду «Открыть форму на основании», при её выполнении откроется форма документа Оплата с полями, заполненными на основании документа из реквизита.

Управляемая форма внешней обработки

В обработчике команды напишем следующий код:

&НаКлиенте
Процедура ОткрытиФормуНаОсновании(Команда)

    ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить(«Основание»,ДокументПриходТовара);

    ОткрытьФорму(«Документ.Оплата.Форма.ФормаДокумента»,ПараметрыФормы);

КонецПроцедуры

И всё. Мы просто при открытии формы, использовали параметр Основание. После выполнения этой команды откроется форма документа «Оплата», в которой нужные поля будут заполнены данными из объекта-основания (согласно обработчику объекта ОбработкаЗаполнения).

Подробно вопросы работы с управляемыми формами в частности и с управляемым приложением в целом рассмотрены в книге «Основы разработки в 1С: Такси. Разработка управляемого приложения за 12 шагов». Эта книга станет настоящим подспорьем для тех, кто только начал знакомится с разработкой управляемого приложения.

Книга «Основы разработки в 1С: Такси»

Книга «Основы разработки в 1С: Такси» отлично подойдёт тем, кто уже начал программировать и испытывает определенные сложности с этой темой и тем, кто уже давно программирует, но ни разу еще не работал с управляемыми формами 1С

  1. Без сложных технических терминов;
  2. Более 600 страниц практического материала;
  3. Каждый пример сопровождается рисунком (скриншот);
  4. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!

Промо-код на скидку в 15% — 48PVXHeYu

Изучайте основы конфигурирования в 1С и учитесь программировать в «1С: Предприятии» с помощью моих книг: «Программировать в 1С за 11 шагов» и «Основы разработки в 1С: Такси»

Книга «Программировать в 1С за 11 шагов»

Изучайте программирование в 1С в месте с моей книги «Программировать в 1С за 11 шагов»

  1. Книга написана понятным и простым языком — для новичка.
  2. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  3. Научитесь понимать архитектуру 1С;
  4. Станете писать код на языке 1С;
  5. Освоите основные приемы программирования;
  6. Закрепите полученные знания при помощи задачника;


Если Вам помог этот урок решить какую-нибудь проблему, понравился или оказался полезен, то Вы можете поддержать мой проект, перечислив любую сумму:

можно оплатить вручную:

Яндекс.Деньги — 410012882996301
Web Money — R955262494655

Вступайте в мои группы в соцсетях, и будьте в курсе всех новостей

Вконтакте: https://vk.com/1c_prosto
Фейсбуке: https://www.facebook.com/groups/922972144448119/
ОК: http://ok.ru/group/52970839015518
Твиттер: https://twitter.com/signum2009

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *