УТ, внешний отчет на СКД. В обработке создал реквизит СсылкаНаДок составного типа ДокументСсылка.ЗаказКлиента, ДокументСсылка.ЗаказНаПеремещение. В модуле формы в Процедуре ВыполнитьКоманду записываю в этот реквизит ссылку на документ. А в модуле объекта в процедуре ПриКомпоновкеРезультата этот реквизит почему-то оказывается пустой. Пытаюсь обратиться к табличной части Товары этой ссылки, но выдает ошибку, что Товары не является значением объектного типа. Проверял, в модуле объекта реквизит СсылкаНаДок уже является пустой, как будто его нет, хотя это реквизит объекта, а не формы. Подскажите пожалуйста, в чем причина?

```1c
    &НаКлиенте
    Процедура ВыполнитьКоманду(ИдентификаторКоманды,ОбъектыНазначенияМассив)Экспорт

    ПараметрыОтчета = Новый Структура;
    ПараметрыОтчета.Вставить("Вариант", Отчет.КомпоновщикНастроек.Настройки);
    ПараметрыОтчета.Вставить("ПользовательскиеНастройки", Отчет.КомпоновщикНастроек.Настройки);
    ОткрытьФорму("ВнешнийОтчет.ВнешнийОтчетТабЗначений.Форма.ФормаОтчета",ПараметрыОтчета);

    Отчет.СсылкаНаДок = ОбъектыНазначенияМассив[0];

    КонецПроцедуры

    &НаСервере
    Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)

    СтандартнаяОбработка = Ложь;

    ТЗ = Новый ТаблицаЗначений;

    //Добавляем колонки
    ТЗ.Колонки.Добавить("Номенклатура", Новый ОписаниеТипов("СправочникСсылка.Номенклатура"));
    ТЗ.Колонки.Добавить("Характеристика", Новый ОписаниеТипов("СправочникСсылка.ХарактеристикиНоменклатуры"));

    Для Каждого Строка Из СсылкаНаДок.Товары Цикл

    НоваяСтрока = ТЗ.Добавить();
    НоваяСтрока.Номенклатура = Строка.Номенклатура;
    НоваяСтрока.Характеристика = Строка.Характеристика;
    Сообщить(НоваяСтрока);
    КонецЦикла;
```
---
потому что в процедуре ВыполнитьКоманду открывается новая форма внешнего отчета, а в нее не передается значение реквизита. И Сформировать идет уже в этой новой форме.
Внешние отчеты и обработки не синхронизируют свои реквизиты. В каждой форме они свои.
---
УТ, внешний отчет на СКД. В обработке создал реквизит Так все-таки отчет или обработка?
В предыдущей вашей теме вы еще не поняли, в чем различие Объекта именно во внешних обработках и отчетах?
---
Отчет
(2)
---
Уверен, что у тебя есть СсылкаНаДок в обработчике? Что тебе об этом говорит отладчик?
---
Да, уверен. Ниже скрины
(4)
---
На так ведь нет ссылки в обработчике...
---
Так в этом и вопрос, почему в процедуре ВыполнитьКоманду она есть, а в ПриКомпонвокеРезультата ее нет?
---
потому что в процедуре ВыполнитьКоманду открывается новая форма внешнего отчета, а в нее не передается значение реквизита. И Сформировать идет уже в этой новой форме.
Внешние отчеты и обработки не синхронизируют свои реквизиты. В каждой форме они свои.
---
Да, понял, благодарю Вас!) Решил задачу следующим образом - помещаю значение в реквизит и открываю форму и форма открывается с заполненным реквизитом!И дальше уже можно переходить к ПриКомпоновкеРезультата!
(8)
&НаКлиенте
Процедура ВыполнитьКоманду(ИдентификаторКоманды,ОбъектыНазначенияМассив)Экспорт

 ПараметрыОтчета = Новый Структура;
 ПараметрыОтчета.Вставить("СформироватьПриОткрытии", Истина);
 ПараметрыОтчета.Вставить("Настройки",Отчет.КомпоновщикНастроек.Настройки);
 ПараметрыОтчета.Вставить("Документ", ОбъектыНазначенияМассив[0]);
 Отчет.Документ = ОбъектыНазначенияМассив[0];
 ЭтаФорма.Открыть();

 КонецПроцедуры