События при вводе на основании и при копировании
29.05.2018
Теги: 1С:Предприятие • ВводНаОсновании • Заполнить • Копировать • Параметр • ПараметрОбъектКопирования • Событие
При вызове стандартной команды ввода на основании выполняется создание нового объекта и вызов в модуле объекта обработчика события ОбработкаЗаполнения()
. В этом событии должен быть реализован алгоритм заполнения данных объекта из данных объекта-основания. Именно этот обработчик генерируется конструктором ввода на основании:
Процедура ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка) //{{__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ // Данный фрагмент построен конструктором. // При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!! Если ТипЗнч(ДанныеЗаполнения) = Тип("СправочникСсылка.Клиенты") Тогда // Заполнение шапки Клиент = ДанныеЗаполнения.Ссылка; КонецЕсли; //}}__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ КонецПроцедуры
Следует учитывать, что этот обработчик будет использоваться не только при вводе на основании. Он будет вызываться и при вызове метода объекта Заполнить()
:
НовыйДокумент = Документы.РасходнаяНакладная.СоздатьДокумент(); НовыйДокумент.Заполнить(ВыбранныйКлиент); ФормаДокумента = НовыйДокумент.ПолучитьФорму(); ФормаДокумента.ПараметрОснование = ВыбранныйКлиент; ФормаДокумента.Открыть();
Таким образом, он является стандартным местом, в котором реализуется заполнение данных объекта из данных объекта основания без учета того, откуда и зачем вызывается это заполнение. Соответственно в этом обработчике можно только выполнять заполнение данных и нельзя делать каких-либо дополнительных действий связанных с интерфейсом системы.
Аналогично при копировании вызывается обработчик события ПриКопировании()
, в котором можно дополнить стандартное заполнение данных выполняемое системой при копировании объекта. Этот обработчик вызывается, как при интерактивном копировании, так и при вызове метода Скопировать()
.
Кроме того, расширения форм объектов предоставляют свойства ПараметрОснование
и ПараметрОбъектКопирования
, которые заполняются системой при выполнении стандартных команд ввода на основании и копирования. Значения этих свойств могут использоваться в обработчиках формы для определения того, что при открытии формы выполнялся ввод на основании или копирование.
Справка
ДокументСсылка.ИмяДокумента.Скопировать()
Возвращаемое значение:
- Тип:
ДокументОбъект
.
Описание:
- Создает новый документ копированием существующего. Использование метода не приводит к записи созданного объекта в базу данных.
Доступность:
- Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер).
ДокументОбъект.ИмяДокумента.ПриКопировании(ОбъектКопирования)
Параметры:
ОбъектКопирования
, типДокументОбъект
. Исходный документ, который является источником копирования.
Описание:
- Возникает при создании документа копированием.
- Конструктор ввода на основании
- Как создать документ и открыть его форму?
- Как при открытии формы определить, что создается новый элемент?
- Как программно открыть и заполнить форму?
- Как открыть форму существующего объекта?
- Форма динамического списка с произвольным запросом
- Как открыть форму списка с некоторым отбором?
Поиск: 1С:Предприятие • Ввод на основании • Заполнить • Копировать • Обработка заполнения • Параметр • Параметр объект копирования • Параметр основание • Событие