09.12.2009
Обычно, в большинстве случаев когда объект вводится на основании, нужно открыть пользователю форму нового объекта, который введен на основании какого-то объекта. В этом случае достаточно просто открыть форму и передать туда параметр Основание:
Копировать в буфер обменаПараметрыФормы = Новый Структура("Основание", Объект.Ссылка);
ОткрытьФорму("Документ.ПриходТовара.ФормаОбъекта", ПараметрыФормы);
При этом отработает процедура ОбработкаЗаполнения в модуле объекта и, соответственно, те алгоритмы заполнения, которые в ней описаны.
Если же вводится объект на основании, и его сразу же надо записать не показывая форму пользователю, то тогда используется метод объекта Заполнить(). Создается новый объект, у него вызывается метод Заполнить(), в который передается значение, на основании которого должен быть создан этот объект.
Копировать в буфер обменаНовыйДокумент = Документы.РасходнаяНакладная.СоздатьДокумент();
НовыйДокумент.Заполнить(ВыбранныйКлиент);
В результате этих действий будет выполнен обработчик события ОбработкаЗаполнения(), расположенный в модуле нового объекта.
Следует заметить, что событие ОбработкаЗаполнения есть не только у объектных данных (документов, справочников и т.п.), но и у регистра сведений, в модуле объекта РегистрСведенийНаборЗаписей.<имя>.
Подробнее о заполнении новых объектов данными можно посмотреть в вопросе "Как при открытии формы определить, что создается новый элемент?".