В платформе 1С существует механизм создания одного объекта на основании другого. Сделать это можно интерактивно с помощью стандартной команды «Создать на основании…», но можно и программным методом. В этой статье мы научимся программным способом эмулировать стандартную команду «Создать на основании…», т.е. форма нужного объекта с заполненными полями откроется, на сам объект не будет записан в базу.
А в этом нам поможет уже знакомый метод глобального контекста ОткрытьФорму.
Познакомиться с этим методом можно в статье:
Открытие управляемой формы в 1С 8.3 с передачей параметров
В каркасной конфигурации (взята для примера к статье) документ «Оплата» можно создать на основании документа «Приход товара».
Для открытия новой формы с заполненными полями как у объекта-основания необходимо использовать параметр Основание, который является параметром расширения управляемых формы 1С, в частности, для документов и справочников. Заметьте, у формы документа Оплата нет параметра Основание.
Для примера, в конфигураторе 1С я сделал внешнюю обработку, на форме обработки разместил реквизит ДокументПриходТовара с типом ДокументСсылка.ПриходТовара и команду «Открыть форму на основании», при её выполнении откроется форма документа Оплата с полями, заполненными на основании документа из реквизита.
В обработчике команды напишем следующий код:
&НаКлиенте
Процедура ОткрытиФормуНаОсновании(Команда)
ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить(«Основание»,ДокументПриходТовара);
ОткрытьФорму(«Документ.Оплата.Форма.ФормаДокумента»,ПараметрыФормы);
КонецПроцедуры
И всё. Мы просто при открытии формы, использовали параметр Основание. После выполнения этой команды откроется форма документа «Оплата», в которой нужные поля будут заполнены данными из объекта-основания (согласно обработчику объекта ОбработкаЗаполнения).
Подробно вопросы работы с управляемыми формами в частности и с управляемым приложением в целом рассмотрены в книге «Основы разработки в 1С: Такси. Разработка управляемого приложения за 12 шагов». Эта книга станет настоящим подспорьем для тех, кто только начал знакомится с разработкой управляемого приложения.
Книга «Основы разработки в 1С: Такси»
Книга «Основы разработки в 1С: Такси» отлично подойдёт тем, кто уже начал программировать и испытывает определенные сложности с этой темой и тем, кто уже давно программирует, но ни разу еще не работал с управляемыми формами 1С
- Без сложных технических терминов;
- Более 600 страниц практического материала;
- Каждый пример сопровождается рисунком (скриншот);
- Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
Промо-код на скидку в 15% — 48PVXHeYu
Изучайте основы конфигурирования в 1С и учитесь программировать в «1С: Предприятии» с помощью моих книг: «Программировать в 1С за 11 шагов» и «Основы разработки в 1С: Такси»
Книга «Программировать в 1С за 11 шагов»
Изучайте программирование в 1С в месте с моей книги «Программировать в 1С за 11 шагов»
- Книга написана понятным и простым языком — для новичка.
- Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
- Научитесь понимать архитектуру 1С;
- Станете писать код на языке 1С;
- Освоите основные приемы программирования;
- Закрепите полученные знания при помощи задачника;
Если Вам помог этот урок решить какую-нибудь проблему, понравился или оказался полезен, то Вы можете поддержать мой проект, перечислив любую сумму:
можно оплатить вручную:
Яндекс.Деньги — 410012882996301
Web Money — R955262494655
Вступайте в мои группы в соцсетях, и будьте в курсе всех новостей
Вконтакте: https://vk.com/1c_prosto
Фейсбуке: https://www.facebook.com/groups/922972144448119/
ОК: http://ok.ru/group/52970839015518
Твиттер: https://twitter.com/signum2009