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

Пытаюсь открыть форму выбора складов с отбором по конкретной группе. Всё отрабатывает ок.
Но в данной группе есть ещё вложенная группа с элементами. Как мне сделать чтобы её элементы тоже попадали в форму выбора ?

```1c
    &НаКлиенте
    Процедура СкладНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)

    СтандартнаяОбработка = Ложь;

    ПараметрыВыбора = Новый Структура;

    ПараметрыВыбора.Вставить("МножественныйВыбор", ЛОЖЬ);
    ПараметрыВыбора.Вставить("ЗакрыватьПриВыборе", ИСТИНА);
    ПараметрыВыбора.Вставить("РазрешитьВыборКорня", ЛОЖЬ);
    ПараметрыВыбора.Вставить("ВыборГруппИЭлементов", ИспользованиеГруппИЭлементов.Элементы);
    ПараметрыВыбора.Вставить("ЗакрыватьПриЗакрытииВладельца", ИСТИНА);
    ПараметрыВыбора.Вставить("ТолькоПросмотр", ИСТИНА);
    Отбор = Новый Структура();
    Отбор.Вставить("Родитель", ПолучитьГруппу());
    Отбор.Вставить("ПометкаУдаления", ЛОЖЬ);
    Отбор.Вставить("ЭтоГруппа", ЛОЖЬ);
    Отбор.Вставить("ВыборГруппИЭлементов", ИспользованиеГруппИЭлементов.Элементы);
    ПараметрыВыбора.Вставить("Отбор", Отбор);
    Форм = ОткрытьФорму("Справочник.Склады.ФормаВыбора", ПараметрыВыбора, Элемент, ЛОЖЬ,,,,РежимОткрытияОкнаФормы.БлокироватьВесьИнтерфейс);
    Форм.Элементы.Список.Отображение = ОтображениеТаблицы.Список;

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

    &НаСервере
    Функция ПолучитьГруппу()

    Возврат Справочники.Склады.НайтиПоНаименованию("Склад основной");

    КонецФункции
```
---
```1c
    &НаКлиенте
    Процедура ОткрытьФормуКоманда(Команда)
    Родитель = Получитьродителя();

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

    ПараметрыВыбора = Новый Структура;
    ПараметрыВыбора.Вставить("ФиксированныеНастройки", НастройкиКомпоновки);
    ПараметрыВыбора.Вставить("РежимВыбора",Истина);
    ПараметрыВыбора.Вставить("ВыборГруппИЭлементов",ИспользованиеГруппИЭлементов.Элементы);
    ФормаВыбора = ПолучитьФорму("Справочник.Номенклатура.ФормаВыбора",ПараметрыВыбора);
    ФормаВыбора.Элементы.Список.Отображение = ОтображениеТаблицы.Список;
    ФормаВыбора.Открыть();

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

    Функция Получитьродителя()
    возврат Справочники.Номенклатура.НайтиПоНаименованию("Новый год" );;
    КонецФункции // ()
```
---
Никак. Отборы с иерархией не работают.
---
попробуйте не по Родителю отбирать а по элементам (ссылка)
по списку значений (по крайней мере в обычных формах так можно было)

выполняете запрос с условием

Где ССылка в иерархии (&ВашаГруппа)

результат Ссылки в СписокЗначеций (или массив)

вот это уберите
Отбор.Вставить("Родитель", ПолучитьГруппу());

и примерно это добавьте
Отбор.Вставить("Ссылка", ПолучитьСсылкиПоГруппе());
---
или вообще замените выбор из формы (стандартный)
на выбор из Списка (перехват события ачалоВыбора(...)
СтандартнаяОбработка = Ложь;
и дальше выбор из своего списка
---
Мол запросом отобрать нужные элементы и вывести на выбор ?
---
Можно через фиксированный настройки вот пример
---
Открываются только все группы. без элементов
---
да
ПоказатьВыборИзСписка()
---
Попробуйте так
```1c
    ФормаВыбора.Элементы.Список.Отображение = ОтображениеТаблицы.Список;
```
---
у вас в коде уже устанавливается это свойство, только после открытия формы)
---
В итоге отображается только группа указанная в массиве без элементов..

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

    ПараметрыВыбора = Новый Структура;
    ПараметрыВыбора.Вставить("ФиксированныеНастройки", НастройкиКомпоновки);
    ПараметрыВыбора.Вставить("РежимВыбора",Истина);
    ПараметрыВыбора.Вставить("МножественныйВыбор",Истина);

    Форм = ОткрытьФорму("Справочник.Склады.ФормаВыбора",ПараметрыВыбора,
    Элемент, , , , );
    Форм.Элементы.Список.Отображение = ОтображениеТаблицы.Список;
```
---
```1c
    ВидСравненияКомпоновкиДанных.ВИерархии
```
---
```1c
    &НаКлиенте
    Процедура ОткрытьФормуКоманда(Команда)
    Родитель = Получитьродителя();

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

    ПараметрыВыбора = Новый Структура;
    ПараметрыВыбора.Вставить("ФиксированныеНастройки", НастройкиКомпоновки);
    ПараметрыВыбора.Вставить("РежимВыбора",Истина);
    ПараметрыВыбора.Вставить("ВыборГруппИЭлементов",ИспользованиеГруппИЭлементов.Элементы);
    ФормаВыбора = ПолучитьФорму("Справочник.Номенклатура.ФормаВыбора",ПараметрыВыбора);
    ФормаВыбора.Элементы.Список.Отображение = ОтображениеТаблицы.Список;
    ФормаВыбора.Открыть();

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

    Функция Получитьродителя()
    возврат Справочники.Номенклатура.НайтиПоНаименованию("Новый год" );;
    КонецФункции // ()
```
---
Единственное, почему то после выбора склад не попадаю в привязанную процедуру "СкладПриИзменении", почему так?
---
Смотрите обработчики правильно назначены, в процедуру переходите если тыкнуть на лупу?
---
Да,всё ок. До этого попадало без проблем

И ещё заметил проблему, при вводе по строке отображаются все склады не смотря на наш установленный отбор. Как это обойти ?
---
тогда может сделать через параметры выбора
---
Вводе по строке через параметры выбора?
---
Shift + F5 ,точка остонова, F5