Отбор в управляемой форме выбора
☑
0
denk
14.04.14
✎
06:44
Понимаю, что баян. Сам неоднократно устанавливал отбор при начале выбора, но в этот раз какой-то непонятный затык возникает.
СтандартнаяОбработка = Ложь;
СписокВыбора = ПолучитьСписокВыбораДляПолучателя();
ПараметрыФормы = Новый Структура;
Если ЗначениеЗаполнено(Объект.ПодразделениеПолучатель) тогда
ПараметрыФормы.Вставить("ТекущаяСтрока",Объект.ПодразделениеПолучатель);
КонецЕсли;
ФормаВыбора = ПолучитьФорму("Справочник.ХозяйственныеОбъекты.ФормаВыбора",ПараметрыФормы, Элемент);
ФормаВыбора.Элементы.Список.Отображение = ОтображениеТаблицы.Список;
ЭлементОтбора = ФормаВыбора.Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Ссылка");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
ЭлементОтбора.ПравоеЗначение = СписокВыбора;
ЭлементОтбора.Использование = Истина;
ФормаВыбора.Открыть();
В результате выполнения этого кода открывется форма без отбора. Заходим в Настроить форму, там в отборе есть соответствующая строка. Просто нажимаем ОК и отбор устанавливается. Почему не срабатывает при открытии?
1
ИС-2
naïve
14.04.14
✎
07:24
отбор надо ставить в ПараметрыФормы
ПараметрыФормыКонтрагенты = Новый Структура;
ПараметрыФормыКонтрагенты.Вставить("Отбор", Новый Структура("Покупатель", Истина));
ВыбранноеЗначение = ОткрытьФормуМодально("Справочник.Контрагенты.ФормаВыбора",ПараметрыФормыКонтрагенты);
2
denk
14.04.14
✎
07:32
(1) Спасибо за подсказку. Раньше думал, что так будет работать, если вид сравнения Равно. Но для ВСписке тоже, оказывается, работает. УФ рулят.
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn