Есть Макет СКД. Выгружаю результат в ТаблицуЗначений.
Ссылку там так понимаю использовать нельзя судя по ИТС https://its.1c.ru/db/v8320doc#bookmark:dev:TI000000626
Но ,как мне отобрать по ссылке на документ до вывода результата в ТаблицуЗначений?
Пока код в таком виде........... что то можно вставить, что бы решить это???

```1c
    СхемаКомпоновкиДанных =Документы.НАЗВАНИЕ_ДОКУМЕНТА.ПолучитьМакет("МойМакетСКД");
    КомпоновщикНастроекДанных = Новый КомпоновщикНастроекКомпоновкиДанных;
    КомпоновщикНастроекДанных.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных));
    КомпоновщикНастроекДанных.ЗагрузитьНастройки(СхемаКомпоновкиДанных.НастройкиПоУмолчанию);
    ///////////////////////////////////////////////////////////
    КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
    МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, КомпоновщикНастроекДанных.ПолучитьНастройки(), ,, Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));

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

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

    ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных, Истина);
    Возврат ТабДокумент;
```
---
В запросе схемы МойМакетСКД, вероятно, нужно указать условие отбора типа

```1c
    ....
    ГДЕ ТаблицаДокументов.Ссылка = &ДокументСсылка
```

Затем добавить этот параметр в настройки:

```1c
    НастройкиОтчета = КомпоновщикНастроекДанных.ПолучитьНастройки();
    НастройкиОтчета.ПараметрыДанных.УстановитьЗначениеПараметра("ДокументСсылка", ДокументСсылка);
```

И эти настройки отчета использовать в КомпоновщикМакета.Выполнить(...).
---
Не совсем понял, почему на этапе формирования "отчета" нельзя установить отбор. Что-то новенькое.
Просто надо обработать компоновщик настроек (установить отборы, параметры, при необходимости изменить структуру вывода) и дальше - в компоновку.
---
Спасибо! Так понимаю при создании МакетаСКД в запросе я могу прописать параметр "ссылка" на документ? + дальше его устанавливать в строке?

```1c
    КомпоновщикНастроекДанных.ЗагрузитьНастройки(СхемаКомпоновкиДанных.НастройкиПоУмолчанию);
```

Блин, а можно кодом? Что мне вставить и куда воткнуть ссылку на документ?
---
Дальше
Настройки = КомпоновщикНастроек.ПолучитьНастройки()
Дальше, если БСП, то (вроде)
ОбщегоНазначенияКЛиентсСервер.УстановитьЭлементОтбораКомпоновкиДанных(Настройки.Отбор, "Ссылка", МойДокумент, ВидСравненияКомпоновкиДанных.Равно) - могу ошибиться с поседовательностью
и дальше
МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки.....)
---
В запросе схемы МойМакетСКД, вероятно, нужно указать условие отбора типа

```1c
    ....
    ГДЕ ТаблицаДокументов.Ссылка = &ДокументСсылка
```

Затем добавить этот параметр в настройки:

```1c
    НастройкиОтчета = КомпоновщикНастроекДанных.ПолучитьНастройки();
    НастройкиОтчета.ПараметрыДанных.УстановитьЗначениеПараметра("ДокументСсылка", ДокументСсылка);
```

И эти настройки отчета использовать в КомпоновщикМакета.Выполнить(...).
---
Ребята БЛАГОДАРЮ! Итог таков по коду.....(конечно ссылку на документ в запросе СКД я вытащил)

```1c
    СхемаКомпоновкиДанных =Документы.НАЗВАНИЕ_ДОКУМЕНТА.ПолучитьМакет("МойМакет");
    КомпоновщикНастроекДанных = Новый КомпоновщикНастроекКомпоновкиДанных;
    КомпоновщикНастроекДанных.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных));
    КомпоновщикНастроекДанных.ЗагрузитьНастройки(СхемаКомпоновкиДанных.НастройкиПоУмолчанию);
    НастройкиОтчета = КомпоновщикНастроекДанных.ПолучитьНастройки();
    НастройкиОтчета.ПараметрыДанных.УстановитьЗначениеПараметра("Ссылка", ССЫЛКАнаДОКУМЕНТ);

    КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
    МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, НастройкиОтчета, ,, Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));

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

    Возврат Результат;
```