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