Есть рабочий код открытия отчета на СКД

```1c
    ПользовательскиеНастройкиКомпоновкиДанных = Новый ПользовательскиеНастройкиКомпоновкиДанных;
    //*** ...
    НовыйОтбор = ПользовательскиеНастройкиКомпоновкиДанных.Элементы.Добавить(Тип("ОтборКомпоновкиДанных"));
    НовыйОтбор.ИдентификаторПользовательскойНастройки = "Отбор";
    ЗаполнитьЭлементОтбораКомпоновкиДанных(НовыйОтбор,Истина,ВидСравненияКомпоновкиДанных.Равно,"ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Договоры", текДоговор);

    //*** ...
    Процедура ЗаполнитьЭлементОтбораКомпоновкиДанных(ОтборНастройкиКомпоновкиДанных,Использование,ВидСрав,ИмяПоля,ЗначениеОтбора)

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

    НовыйЭлемент.Использование = Использование;
    НовыйЭлемент.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(ИмяПоля);
    НовыйЭлемент.ВидСравнения = ВидСрав;
    Если ВидСрав = ВидСравненияКомпоновкиДанных.ВСписке Тогда
    НовыйЭлемент.ПравоеЗначение = НОВЫЙ СписокЗначений;
    НовыйЭлемент.ПравоеЗначение.ЗагрузитьЗначения(ЗначениеОтбора);
    Иначе
    НовыйЭлемент.ПравоеЗначение = ЗначениеОтбора;
    КонецЕсли;

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

Всё отрабатывает нормально, но если я меняю вид сравнения на "ВСписке" и передаю Список договоров (Пробовал СписокЗначений и Массив) отбор в отчёте остаётся пустым (Выводятся все значения).

Что не так? Чего не хватает?

З.Ы. Процедура "ЗаполнитьЭлементОтбораКомпоновкиДанных" в обоих случаях возвращает нормальные данные:
- Если "Равно" то "Правое значение" = СсылкаДоговор
- Если "ВСписке" то "Правое значение" = СписокЗначений, в котором Ссылки на договора.
---
"ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Договоры" Сомневаюсь что это корректное имя поля компоновки данных.
---
Левое значение – обычно это поле данных, а не константное значение, как у вас. То есть слева у вас ссылка на предопределенное значение видов субконто "Договоры", а справа список ссылок справочника Договоры. Такое сравнение всегда вернёт Ложь. Повторюсь, где-то ошибка с определением левого значения в отборе.
---
"ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Договоры" Сомневаюсь что это корректное имя поля компоновки данных.
---
Сомневаюсь что это корректное имя поля компоновки данных.

Но при ВидСравненияКомпоновкиДанных.Равно - РАБОТАЕТ!!!
---
Договоры - это предопределенное
---
Левое значение – обычно это поле данных, а не константное значение, как у вас. То есть слева у вас ссылка на предопределенное значение видов субконто "Договоры", а справа список ссылок справочника Договоры. Такое сравнение всегда вернёт Ложь. Повторюсь, где-то ошибка с определением левого значения в отборе.
---
Почему работает при РАВНО?
---
Стандартный отчет ("на замочке" из https://www.bas-soft.eu/soft/bas-mass/bas-accounting-korp/) "Анализ субконто". Субконто: Контрагенты, Договора.
Всё работает (Контрагенты и договора) если "Равно", если ставишь "ВСписке" не работает.
---
Пторюсь, где-то ошибка с определением левого значения в отборе.

Сбило что с Равно работало...
А работало т.к. этот отбор устанавливается при выборе состава субконто для анализа, а я его просто заполнял значением...
---
а видСрав какой тип? точно ВидСравненияКомпоновкиДанных?
---
ЗаполнитьЭлементОтбораКомпоновкиДанных(НовыйОтбор,Истина,ВидСравненияКомпоновкиДанных.Равно,"ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Договоры", текДоговор);
---
ЗначениеОтбора - Массив? Не пустой ?

```1c
    НовыйЭлемент.Использование = Использование;
    НовыйЭлемент.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(ИмяПоля);
    НовыйЭлемент.ВидСравнения = ВидСрав;
    Если ВидСрав = ВидСравненияКомпоновкиДанных.ВСписке Тогда
    СписокЗначений = НОВЫЙ СписокЗначений;
    СписокЗначений.ЗагрузитьЗначения(ЗначениеОтбора);
    НовыйЭлемент.ПравоеЗначение = СписокЗначений;
    Иначе
    НовыйЭлемент.ПравоеЗначение = ЗначениеОтбора;
```
---
Не пустой
Ссылки на Договора
---
Ваш вариант тоже не срабатывает...
В обеих случаях см. рис.

Вся разница:
Если "РАВНО" - то 1 Ссылка
Если "ВСПИСКЕ" - Список Значений в котором несколько Ссылок
---
А БСПшный "ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка" тоже не работает?
---
БСПшный "ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка" тоже не работает?

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

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

Работает с любыми видами отбора, как "равно", так и "в списке".
---
Запутался с постами и забрал вознаграждение...
Добавляю снова и отдаю в (5)