Можно ли в динамическом списке программно установить отбор по нескольким полям (с использованием логических условий И, ИЛИ и т.д.)

  Отбор = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
  Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Наименование");
  Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
  Отбор.Использование = Истина;
Отбор.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
    ЭлементОтбора.ПравоеЗначение = "000000001";
---
mkostya,
Это не для динамических списков вроде.

По вопросу:
Можно. Нужно создать группу условий вначале

```1c
    ГруппаОтбор = Список.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
    ГруппаОтбор.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИЛИ;

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

    Отбор = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    Отбор.Родитель = ГруппаОтбор;
    Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Наименование");
    Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
    Отбор.Использование = Истина;
    Отбор.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
    ЭлементОтбора.ПравоеЗначение = "000000002";
```

Или что то типо того, писал по памяти.
---
Основная таблица для Список Справочник.Корпуса
Основная таблица для СписокПомещений Справочник.Помещения

В форме списка справочника корпуса
&НаКлиенте
Процедура СписокПриАктивизацииСтроки(Элемент)
      Если Элементы.Список.ТекущаяСтрока <> Неопределено Тогда
            УстановитьОтборУСпискаНаРавенство(СписокПомещений.Отбор,Новый ПолеКомпоновкиДанных("Владелец"),Элементы.Список.ТекущаяСтрока);
//или ОбщегоНазначенияКлиентСервер.УстановитьОтборУСпискаНаРавенство(СписокПомещений.Отбор,Новый ПолеКомпоновкиДанных("Владелец"),Элементы.Список.ТекущаяСтрока);
      КонецЕсли;
КонецПроцедуры

// Устанавливает отбор у отбора системы компоновки данных.
//
// Пример использования:
// ОбщегоНазначенияКлиентСервер.УстановитьОтборУСпискаНаРавенство(
// Список.Отбор,
// Новый ПолеКомпоновкиДанных("ИмяСвойства"),
// ЗначениеОтбора);
//
&НаКлиенте
Процедура УстановитьОтборУСпискаНаРавенство(ОтборСКД,
                                            знач ЛевоеЗначение,
                                            знач ПравоеЗначение) Экспорт

      ЭлементыОтбора = ОтборСКД.Элементы;
      ЭлементОтбораДанных = Неопределено;

      Для Каждого ЭлементОтбора Из ЭлементыОтбора Цикл
            Если ЭлементОтбора.ЛевоеЗначение = ЛевоеЗначение Тогда
                  Если ЭлементОтбораДанных = Неопределено Тогда
                        ЭлементОтбораДанных = ЭлементОтбора;
                  Иначе
                        ЭлементОтбора.Использование = Ложь;
                  КонецЕсли;
            КонецЕсли;
      КонецЦикла;

      Если ЭлементОтбораДанных = Неопределено Тогда
            ЭлементОтбораДанных = ЭлементыОтбора.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
            ЭлементОтбораДанных.ЛевоеЗначение = ЛевоеЗначение;
      КонецЕсли;

      ЭлементОтбораДанных.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
      ЭлементОтбораДанных.ПравоеЗначение = ПравоеЗначение;
      ЭлементОтбораДанных.Использование = Истина;

КонецПроцедуры
---
mkostya,
Это не для динамических списков вроде.

По вопросу:
Можно. Нужно создать группу условий вначале

```1c
    ГруппаОтбор = Список.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
    ГруппаОтбор.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИЛИ;

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

    Отбор = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    Отбор.Родитель = ГруппаОтбор;
    Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Наименование");
    Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
    Отбор.Использование = Истина;
    Отбор.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
    ЭлементОтбора.ПравоеЗначение = "000000002";
```

Или что то типо того, писал по памяти.
---
спс помогло