Добрый день коллеги. Есть нетривиальная задача:

1. Из формы открываем форму произвольного нового документа. Имеем ввиду что в некоторых случаях сначала открывается форма выбора операции (например документ "Реализация товаров услуг" в БП).
2. В открывшейся форме документа вносим необходимые изменения и записываем его или не записываем.

Внимание вопрос: Как в форме - владельце получить ссылку на новый документ?

Вариант с подключением события "при закрытии" не работает, так как событие выполняется при закрытии формы выбора операции.

Вариант с оповещением записи нового - тоже не работает, так как этот обработчик надо каким-то образом вызывать из формы нового документа.

Буду благодарен за оригинальные идеи. Спасибо.
---
Всем спасибо за ответы.
Решил задачу с помощью события формы "Обработка записи нового".
При записи нового объекта в форму - владельца передается ссылка на него в этот обработчик.
Ветку закрываю.
---
получить ссылку на новый документ? Пока объект не записан( новый) ссылки у него нет. Запишите - будет ссылка.
---
В открывающуюся форму передать обработчик ОписаниеОповещенияОЗакрытии. В параметрах этого обработчика поместить ссылку на созданный документ. После закрытия формы нового документа, во владельце сработает обработчик - в нем будет помещенная ссылка.
---
Спасибо. Однако, я же написал что в некоторых случаях перед открытием основной формы документа, открывается формы выбора операции, тогда обработчик закрытия срабатывает при закрытии формы выбора операции и форма документа открывается уже без этого обработчика.
---
попробуйте может так пройдет

в форме обработке, в обработчике события в форму Владелец можно писать в реквизиты

```1c
    &НаКлиенте
    Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка)
    ЭтаФорма.ВладелецФормы.РеквизитДокумент = ВашаССылка;
    ПередЗакрытиемНаСервере();
    КонецПроцедуры
```
---
Спасибо.
Желательно универсальное решение. В том решении что вы предлагаете придется переписать формы всех документов типовой конфигурации. Так можно сделать, но хотелось бы более красивое решение.

Можно было бы переопределить событие формы, но я не могу со 100% гарантией сказать что перед закрытием в типовых формах нет каких-то важных событий.
---
тогда так, во всех типовых формах есть вызов процедуры общего модуля
вот в этой одной процедуре и сделайте переброску значения в форму владелец
---
такое решение имеет место быть, однако для разных форм используются разные общие модули, что опять же ведет к изменению большого числа общих модулей или написания расширения к ним.
---
из формы которая вызывает создание документа

```1c
    ГУИДДокумента = Новый УникальныйИдентификатор()
    ДокументСсылка = Документы..........ПолучитьСсылку(ГУИДДокумента )
    ДокОбъект = Документы...........Создать;
    ДокОбъект .УстановитьСсылкуНового(ДокументСсылка);

    ДокументСсылка.Открыть()
```

p/s/ не проверял
но как вариант тогда будет известен Гуид и через xmlЗначение можно получить ссылку
---
```1c
    Форма = ПолучитьФорму("НужнаяФорма",ПараметрыФормы);
    Форма.Записать();
    Форма.Открыть();
    НоваяСсылка = Форма.Объект.Ссылка;
```

Такой вариант может быть подойдет?
---
Всем спасибо за ответы.
Решил задачу с помощью события формы "Обработка записи нового".
При записи нового объекта в форму - владельца передается ссылка на него в этот обработчик.
Ветку закрываю.