Установка отбора по родителю в форме списка справочника

1. webester 26 13.03.23 09:44 Сейчас в теме
Всем привет! Хочу при открытии формы списка справочника наложить отбор по родителю.
Использую такой код:
ПараметрыОтбора = Новый Структура("Родитель", ПолучитьРодителяНаСервере(ИдентификаторОтбора));
ПараметрыНаФорму = Новый Структура("Отбор", ПараметрыОтбора);
ОткрытьФорму("Справочник.ИдентификаторыОбъектовМетаданных.ФормаВыбора", ПараметрыНаФорму);

Первая проблема - я вижу элементы только при режиме отображения "список" в ином случае список пустой. Но это полбеды, это можно простить. Но если я делаю поиск, элементы тоже пропадают, хотя они у этого родителя есть. Подскажите пожалуйста, в чем может быть причина такого странного поведения?
По теме из базы знаний
Найденные решения
2. dimensity 13.03.23 10:11 Сейчас в теме
Здравствуйте. Попробуйте так

НастройкиКомпоновкиДанных = Новый НастройкиКомпоновкиДанных;
 
ЭлементОтбора = НастройкиКомпоновкиДанных.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Родитель");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = ПолучитьРодителяНаСервере(ИдентификаторОтбора);
    
ПараметрыФормы = Новый Структура("ФиксированныеНастройки", НастройкиКомпоновкиДанных);
ОткрытьФорму("Справочник.ИдентификаторыОбъектовМетаданных.ФормаВыбора", ПараметрыФормы);
Показать
4. webester 26 14.03.23 06:00 Сейчас в теме
Сломанный поиск, это не проблема которая возникает с установкой отбора. Просто в справочнике не работает поиск. Или он у нас сломался или он в принципе здесь не работающий. Любой из вышеописанных методов работает одинаково. И возможно одинаково подходит.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. dimensity 13.03.23 10:11 Сейчас в теме
Здравствуйте. Попробуйте так

НастройкиКомпоновкиДанных = Новый НастройкиКомпоновкиДанных;
 
ЭлементОтбора = НастройкиКомпоновкиДанных.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Родитель");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = ПолучитьРодителяНаСервере(ИдентификаторОтбора);
    
ПараметрыФормы = Новый Структура("ФиксированныеНастройки", НастройкиКомпоновкиДанных);
ОткрытьФорму("Справочник.ИдентификаторыОбъектовМетаданных.ФормаВыбора", ПараметрыФормы);
Показать
3. webester 26 13.03.23 11:09 Сейчас в теме
(2)Результат идентичный. В БСП кстати, есть обертка для такого случая: ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка
4. webester 26 14.03.23 06:00 Сейчас в теме
Сломанный поиск, это не проблема которая возникает с установкой отбора. Просто в справочнике не работает поиск. Или он у нас сломался или он в принципе здесь не работающий. Любой из вышеописанных методов работает одинаково. И возможно одинаково подходит.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот