Добрый день.

Делаю элементарный запрос в СКД с выводом в таблицу:

```1c
    ВЫБРАТЬ
    ПартииТоваровНаСкладахОстатки.Номенклатура.Артикул КАК Артикул,
    ПартииТоваровНаСкладахОстатки.Номенклатура,
    ПартииТоваровНаСкладахОстатки.КоличествоОстаток КАК ОстатокНаСкладе,
    ПартииТоваровНаСкладахОстатки.ДокументОприходования.Дата КАК ДатаПоступления,
    ПартииТоваровНаСкладахОстатки.Склад
    ИЗ
    РегистрНакопления.ПартииТоваровНаСкладах.Остатки(&Период, ) КАК ПартииТоваровНаСкладахОстатки
    ГДЕ
    ПартииТоваровНаСкладахОстатки.КоличествоОстаток > 0
    И ПартииТоваровНаСкладахОстатки.Склад В ИЕРАРХИИ(&Склад)
```

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

    НастройкиКомпоновщика = КомпоновщикНастроек.Настройки;
    ПараметрыНастройки = НастройкиКомпоновщика.ПараметрыДанных;

    // устанавливаем параметры отчета
    ЗначениеПараметра = ПараметрыНастройки.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Период"));
    ЗначениеПараметра.Значение = КонецДня(ТекущаяДата());

    ЗначениеПараметра = ПараметрыНастройки.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Склад"));
    ЗначениеПараметра.Значение = Объект.Склад;

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

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

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

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

    Возврат ТаблицаРезультат;
```

Параметр Склад игнорируется. Почему?
---
```1c
    &НаСервере
    Функция РезультатКомпоновкиВТЗ(СКД)

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

    //++ 1
    //НастройкиКомпоновщика = КомпоновщикНастроек.Настройки;
    НастройкиКомпоновщика = КомпоновщикНастроек.ПолучитьНастройки();
    //--
    ПараметрыНастройки = НастройкиКомпоновщика.ПараметрыДанных;

    // устанавливаем параметры отчета
    ЗначениеПараметра = ПараметрыНастройки.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ДатаВыгрузки"));
    ЗначениеПараметра.Значение = КонецДня(ТекущаяДата());
    //++ 2
    ЗначениеПараметра.Использование = Истина;
    //--

    ЗначениеПараметра = ПараметрыНастройки.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Склад"));
    ЗначениеПараметра.Значение = Объект.Склад;
    //++ 3
    ЗначениеПараметра.Использование = Истина;
    //--

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

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

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

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

    Возврат ТаблицаРезультат;

    КонецФункции
```

Обратите внимание:
//++ 1:
некритично, но предпочтительно делать так

//++ 2,3:
обязательно. Вообще не стоит доверять всяким использование параметра "авто" в этом случае

//++ 4:
вы передавали не те настройки. самый критичный момент, потому что:
параметры мы устанавливали для этих (НастройкиКомпоновщика) настроек.

Рекомендации вам:
1. запустите с теми поправками, что я показал. Отпишитесь - работает отбор по складу?
2. Если хотите использовать отборы с формы - переделайте на использование "ОтборНаФорме.Настройки" вместо "НастройкиКомпоновщика" в строке кода

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

и переделайте заполнение параметров, что бы заполнялись настройки у "ОтборНаФорме.Настройки", а не у "НастройкиКомпоновщика"
---
А если перенести в параметры виртуальной таблицы?
---
Скиньте обработку/отчет с этим кодом. что бы не гадать, а глянуть всё изнутри.
---
Приложила обработку.
---
```1c
    &НаСервере
    Функция РезультатКомпоновкиВТЗ(СКД)

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

    //++ 1
    //НастройкиКомпоновщика = КомпоновщикНастроек.Настройки;
    НастройкиКомпоновщика = КомпоновщикНастроек.ПолучитьНастройки();
    //--
    ПараметрыНастройки = НастройкиКомпоновщика.ПараметрыДанных;

    // устанавливаем параметры отчета
    ЗначениеПараметра = ПараметрыНастройки.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ДатаВыгрузки"));
    ЗначениеПараметра.Значение = КонецДня(ТекущаяДата());
    //++ 2
    ЗначениеПараметра.Использование = Истина;
    //--

    ЗначениеПараметра = ПараметрыНастройки.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Склад"));
    ЗначениеПараметра.Значение = Объект.Склад;
    //++ 3
    ЗначениеПараметра.Использование = Истина;
    //--

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

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

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

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

    Возврат ТаблицаРезультат;

    КонецФункции
```

Обратите внимание:
//++ 1:
некритично, но предпочтительно делать так

//++ 2,3:
обязательно. Вообще не стоит доверять всяким использование параметра "авто" в этом случае

//++ 4:
вы передавали не те настройки. самый критичный момент, потому что:
параметры мы устанавливали для этих (НастройкиКомпоновщика) настроек.

Рекомендации вам:
1. запустите с теми поправками, что я показал. Отпишитесь - работает отбор по складу?
2. Если хотите использовать отборы с формы - переделайте на использование "ОтборНаФорме.Настройки" вместо "НастройкиКомпоновщика" в строке кода

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

и переделайте заполнение параметров, что бы заполнялись настройки у "ОтборНаФорме.Настройки", а не у "НастройкиКомпоновщика"
---
Да, спасибо! се заработало!
---
из вашего топика (1) вообще было не понятно что это за "ОтборНаФорме", какой тип, как он заполняется и тд. После получения обработки и чтения полного кода - становится видно логическую ошибку (запутались?).
---
Замените стандартный параметр "Период" на какой-нибудь свой "ПериодМой"
---
Пробовала - то же самое.
(2) Это тоже пробовала - никакой разницы.