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

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

    СтандартнаяОбработка = Ложь;
    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
    | РеализацияТоваровУслуг.Ссылка,
    | ижЗаказы.ZAK_POTR,
    | ижСпецификации.Исполнитель,
    | "" КАК Сканы
    |ИЗ
    | Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
    | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ижЗаказы КАК ижЗаказы
    | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ижСпецификации КАК ижСпецификации
    | ПО ижЗаказы.GOD_ISP = ижСпецификации.GOD_ISP
    | И ижЗаказы.ZAKAZ = ижСпецификации.ZAKAZ
    | И ижЗаказы.POZIC = ижСпецификации.POZIC
    | ПО РеализацияТоваровУслуг.Товары.ЗаказПокупателя = ижЗаказы.ЗаказПокупателя
    |ГДЕ
    | РеализацияТоваровУслуг.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&ДатаНач, ДЕНЬ) И КОНЕЦПЕРИОДА(&ДатаКон, ДЕНЬ)";
    Запрос.УстановитьПараметр("ДатаНач",ДатаНач);
    Запрос.УстановитьПараметр("ДатаКон",ДатаКон);
    Данные = Новый ТаблицаЗначений;
    СпособОбхода = ОбходРезультатаЗапроса.Прямой;
    Данные = Запрос.Выполнить().Выгрузить(СпособОбхода);

    Для каждого Стр из Данные Цикл
    ПутьФайла = "F:\group\otd54\Спецификации на поставку ГП\cпецификация " + Стр.ZAK_POTR + ".pdf";
    Файл = Новый Файл(ПутьФайла);
    Если Файл.Существует() Тогда
    Стр.Сканы = ПутьФайла;
    КонецЕсли;
    КонецЦикла;

    СКД = ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
    Настройки = КомпоновщикНастроек.ПолучитьНастройки();
    ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;

    КомпМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
    МакетКомпоновки = КомпМакета.Выполнить(СКД,Настройки,ДанныеРасшифровки);

    НаборДанных = Новый Структура("ДанныеСканы", Данные);
    ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
    ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки,НаборДанных,ДанныеРасшифровки);

    ДокументРезультат.Очистить();

    ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
    ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
    ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);

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

Полный текст ошибки:
Ошибка при вызове метода контекста (Инициализировать)
{ВнешнийОтчет.ОтчетПоРеализациямТоваровИУслуг.МодульОбъекта(43)}: ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки,НаборДанных,ДанныеРасшифровки);
по причине:
Ошибка компоновки данных
по причине:
Ошибка инициализации
по причине:
Не найдено поле замены "Ссылка"

На всякий случай прикрепил скрин СКД
---
чтобы это выполнить нужна база.
На вскидку:
НаборДанных = Новый Структура("ДанныеСканы", Данные);
В СКД просто Данные.

Зачем все поля выбрали как группировки в СКД? Убрать группировки.
Ну и то что я ранее предложил попробовать.
---
попробуйте в запросе дать альянс полям. И поле Ссылка изменить на другое имя.

```1c
    РеализацияТоваровУслуг.Ссылка КАК Реализация,
```

Соответственно в СКД заменить Ссылка на Реализация и указать нужный тип. Возможно еще проставить роль.
---
У меня в начале так и было, он жаловался, что не может найти ZAK_POTR, хотя я обозначил его как Номер и использовал везде как Номер, но нет, говорит не вижу ZAK_POTR и ошибку выдвал при этом на МакетеКомпоновки, исправил, стал дальше уходить почти под конец, но теперь ошибку из топика выдает.

Могу сам отчет кинуть, может это ясности внесет, хотя вроде все нормально должно быть, не исключаю, что я где-то в другом месте накосячил
---
чтобы это выполнить нужна база.
На вскидку:
НаборДанных = Новый Структура("ДанныеСканы", Данные);
В СКД просто Данные.

Зачем все поля выбрали как группировки в СКД? Убрать группировки.
Ну и то что я ранее предложил попробовать.
---
Я туда только сканы закинул, когда открыл они там сами уже все были, без моей помощи
---
Хм... я вот что понял за сегодня, либо я хреново жму Ctrl+S, либо с серваком что-то не то, потому что который раз за сегодня я после сохранения при открытии в предприятии вижу версию отчета без изменений внесенных и сохраненых только что
---
Простоу меня в СКД написано ДанныеСканы и я этот вариант сохранял прежде чем прикрепить очтет сюда
---
Я не знаю как, но оно заработало! Я просто сохранил еще раз и запустил и оно получилось!
---
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки,НаборДанных1,ДанныеРасшифровки);
в коде просто НаборДанных.
---
Предыдущую ошибку скинул нечаянно
---
Могу ошибаться, но, если не изменяет память, при выгрузке из запроса Колонки ТЗ содержат кроме нужного типа колонки еще и null, для того, чтобы потом его снова считать в запрос нужно null из типов вычесть.
---
Не подскажите как это сделать?
---
Кажется я вас обманул, эта проблема была при попытке загрузки ТЗ в Таблицу на форме...
Раз уж написал то тип вычитается так:

```1c
    НоваяКолонка.ОграничениеТипа = Новый ОписаниеТипов(КолонкаТаблицы.ТипЗначения,, "null"); //вычитаем null из типов колонки таблицы значений, т.к. после выгрузки из запроса тип колонки всегда содержит тип значения и null
```
---
И самое что забавное, я понимаю, что скорее всего ошибка там максимально глупая, но как подхожу не могу понять в чем косяк-то.