добрый день всем!

помогите разобраться, сломал всю голову. не могу понять в чём причина.

простейший отчёт в УТ 11.4. в котором в СКД используется внешний набор. при выполнении выдаётся ошибка: Не найден внешний набор "ТаблДок".
---
Во-первых, как сказали в (6), Стандартная обработка = Ложь. Во-вторых, настройки получайте так: Настройки = КомпоновщикНастроек.ПолучитьНастройки().
В-третьих, сделайте вспомогательную схему, чтобы получить список используемых ссылок с учётом установленных параметров и отборов:
```1c
    ВременныеНастройки = КомпоновщикНастроек.ПолучитьНастройки();
    ВременнаяСхема = ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
    ВнешнийНабор = ВременнаяСхема.НаборыДанных.Найти("НаборДанных2");
    ВременнаяСхема.НаборыДанных.Удалить(ВнешнийНабор);
    ВременнаяСхема.СвязиНаборовДанных.Очистить();

    ВыбранныеПоля = ВременныеНастройки.Выбор.Элементы;
    ВыбранныеПоля.Очистить();

    ОтключитьОтборыПоПолюРекурсивно(ВременныеНастройки.Отбор.Элементы, Новый ПолеКомпоновкиДанных("СуммаРозн"));

    ВременныеНастройки.УсловноеОформление.Элементы.Очистить();
    ВременныеНастройки.Структура.Очистить();

    НоваяГруппировка = ВременныеНастройки.Структура.Добавить(Тип("ГруппировкаКомпоновкиДанных"));
    НоваяГруппировка.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных"));

    НовоеПолеГруппировки = НоваяГруппировка.ПоляГруппировки.Элементы.Добавить(Тип("ПолеГруппировкиКомпоновкиДанных"));
    НовоеПолеГруппировки.Поле = Новый ПолеКомпоновкиДанных("Ссылка");

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

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

Очевидно, необходимо отключить отборы по полю СуммаРозн, если они есть, иначе временная схема не сгенерируется, поэтому используем рекурсивную процедуру:
```1c
    Процедура ОтключитьОтборыПоПолюРекурсивно(ЭлементыОтбора, Поле)
    Для Каждого ЭлементОтбора Из ЭлементыОтбора Цикл
    Если ТипЗнч(ЭлементОтбора) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда
    Если ЭлементОтбора.ЛевоеЗначение = Поле Или ЭлементОтбора.ПравоеЗначение = Поле Тогда
    ЭлементОтбора.Использование = Ложь;
    КонецЕсли;
    Иначе
    ОтключитьОтборыПоПолюРекурсивно(ЭлементОтбора.Элементы, Поле)
    КонецЕсли;
    КонецЦикла;
    КонецПроцедуры
```
---
Попробуй в НабореДанных2 у докСсылка поставить Параметр, ну например "ДокументСсылка".
Этот параметр укажи в связях наборов данных в колонке Параметр
---
не сработало (((

самое смешное - это далеко не первый отчёт на СКД в котором я использую внешний набор данных.
---
А попробуй без внешнего набора данных.
Просто создай временную таблицу, только обязательно ее инициализируй по типам.
Например вот так:

```1c
    ТабДок = Новый ТаблицаЗначений;
    ОписаниеЧисла = Новый ОписаниеТипов("Число",Новый КвалификаторыЧисла(15, 2));
    ОписаниеСтроки = Новый ОписаниеТипов("Строка",Новый КвалификаторыСтроки(100));
    ОписаниеДаты = Новый ОписаниеТипов("Дата",Новый КвалификаторыДаты(ЧастиДаты.ДатаВремя));

    ТабДок.Колонки.Добавить(Ссылка,"Документссылка.ПриобретениеТоваровИУслуг");
    ТабДок.Колонки.Добавить(Номер,ОписаниеСтроки);
    ТабДок.Колонки.Добавить(Дата,ОписаниеДаты);
    ТабДок.Колонки.Добавить(Склад,"СправочникСсылка.Склады");

    //ну и т.д. все остальные колонки

    //А далее в запросе создаешь таблицу и добавляешь поля как в твоей таблице

    ВЫБРАТЬ
    | ТабДок.Ссылка КАК Ссылка,
    | ТабДок.Дата КАК Дата,
    | ТабДок.Номер КАК Номер,
    | ТабДок.Склад КАК Склад
    |ПОМЕСТИТЬ ВТ_ТабДок
    |ИЗ
    | &ТабДок КАК ТабДок
    //Ну и далее твой запрос
```
---
но почему не работает внешний набор?!! ведь должен работать. я не вижу никакой ошибки.
---
Стандартная обработка = Ложь ?
---
когда ставлю
```1c
    СтандартнаяОбработка= ложь
```
 у меня выходит пустой отчёт. такое впечатление, что никакие параметры и отборы не заходят.
---
Во-первых, как сказали в (6), Стандартная обработка = Ложь. Во-вторых, настройки получайте так: Настройки = КомпоновщикНастроек.ПолучитьНастройки().
В-третьих, сделайте вспомогательную схему, чтобы получить список используемых ссылок с учётом установленных параметров и отборов:
```1c
    ВременныеНастройки = КомпоновщикНастроек.ПолучитьНастройки();
    ВременнаяСхема = ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
    ВнешнийНабор = ВременнаяСхема.НаборыДанных.Найти("НаборДанных2");
    ВременнаяСхема.НаборыДанных.Удалить(ВнешнийНабор);
    ВременнаяСхема.СвязиНаборовДанных.Очистить();

    ВыбранныеПоля = ВременныеНастройки.Выбор.Элементы;
    ВыбранныеПоля.Очистить();

    ОтключитьОтборыПоПолюРекурсивно(ВременныеНастройки.Отбор.Элементы, Новый ПолеКомпоновкиДанных("СуммаРозн"));

    ВременныеНастройки.УсловноеОформление.Элементы.Очистить();
    ВременныеНастройки.Структура.Очистить();

    НоваяГруппировка = ВременныеНастройки.Структура.Добавить(Тип("ГруппировкаКомпоновкиДанных"));
    НоваяГруппировка.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных"));

    НовоеПолеГруппировки = НоваяГруппировка.ПоляГруппировки.Элементы.Добавить(Тип("ПолеГруппировкиКомпоновкиДанных"));
    НовоеПолеГруппировки.Поле = Новый ПолеКомпоновкиДанных("Ссылка");

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

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

Очевидно, необходимо отключить отборы по полю СуммаРозн, если они есть, иначе временная схема не сгенерируется, поэтому используем рекурсивную процедуру:
```1c
    Процедура ОтключитьОтборыПоПолюРекурсивно(ЭлементыОтбора, Поле)
    Для Каждого ЭлементОтбора Из ЭлементыОтбора Цикл
    Если ТипЗнч(ЭлементОтбора) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда
    Если ЭлементОтбора.ЛевоеЗначение = Поле Или ЭлементОтбора.ПравоеЗначение = Поле Тогда
    ЭлементОтбора.Использование = Ложь;
    КонецЕсли;
    Иначе
    ОтключитьОтборыПоПолюРекурсивно(ЭлементОтбора.Элементы, Поле)
    КонецЕсли;
    КонецЦикла;
    КонецПроцедуры
```
---
Спасибо большое. это помогло.

ошибка была в строке:

```1c
    Настройки = СхемаКомпоновкиДанных.НастройкиПоУмолчанию
```

после того как заменил её на строку:

```1c
    Настройки = КомпоновщикНастроек.ПолучитьНастройки()
```

всё заработало.