Обычно, в большинстве случаев когда объект вводится на основании, нужно открыть пользователю форму нового объекта, который введен на основании какого-то объекта.

В этом случае достаточно просто передать параметр Основание в процедуру открытия формы:

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

При этом отработает процедура ОбработкаЗаполнения в модуле объекта и, соответственно, те алгоритмы заполнения, которые в ней описаны.

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

Создать новый объект, и вызвать у него метод Заполнить(), в который передать значение, на основании которого должен быть создан этот объект.

НовыйДокумент = Документы.РасходнаяНакладная.СоздатьДокумент();
НовыйДокумент.Заполнить(ВыбранныйКлиент);

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

Следует заметить, что событие ОбработкаЗаполнения есть не только у объектных данных (документов, справочников и т.п.), но и у регистра сведений, в модуле объекта РегистрСведенийНаборЗаписей.<имя>.

Комментарии

  • Гринёв 20.12.2017 09:45
    Только надо иметь ввиду, что СтандартнаяОбработка = Ложь в процедуре ПриКомпоновкеРезультата отключает стандартную расшифровку полей отчёта.

    Подробнее...

     
  • proekt 06.12.2017 10:03
    Привет. Обработка проведения РасходнойНакладной запрос от проведения ПланаПродаж необходимо подправить запрос для Расходной. Такой вопрос при проведении Расходной накладной почему сразу в запросе не ...

    Подробнее...

     
  • Ivan 01.11.2017 14:14
    Неверно. Так мы узнаем DNS сервер по умолчанию, но он не обязательно совпадает с контроллером домена. Нужно так > set logon В ответе получим имя сервера, на котором мы залогинились.

    Подробнее...