0
pozitiFFF
09.01.18
✎
18:11
|
Добрый день.
Имеется следующая ситуация: открывается форма выбора справочника. При этом передается отбор по Ссылке, а также Оповещение. Примерно так:
Оповещение = Новый ОписаниеОповещения("ОбработатьВыборФилиала", ЭтотОбъект);
ПараметрыФормы = Новый Структура("Отбор", Новый Структура("Ссылка", ДоступныеФилиалы));
ОткрытьФорму("Справочник.Филиалы.ФормаВыбора", ПараметрыФормы,,,,, Оповещение);
Но данный справочник очень "тяжелый", отбор по ссылке (а там практически все элементы) очень долго открывает форму выбора.
Если Использовать конструкцию
ФормаВыбора = ПолучитьФорму(..);
И затем обратиться к ФормаВыбора.Список.Отбор.Элементы, то можно добавить необходимые отборы (не по ссылке, а по двум полям в группе Или, которые оставят те же элементы что отбор по ссылке в первом случае), то форма открывается быстро.
Но в ПолучитьФорму нельзя указать Оповещение.
Получается проблема, в первом случае (ОткрытьФорму) "тяжелый" отбор из-за того, что можно передать только отбор на равенство или Список, передаем отбор по ссылке, форма оооочень медленно открывается.
В ОткрытьФорму можно обратиться к форме и установить отборы программно, в результате откроется форма быстро, не нельзя использовать оповещение.
Оповещение использовать необходимо обязательно, указывать владельца в ОткрытьФорму и обработать событие ОбработкаВыбора не подходит. Вносить изменения в модуль формы выбора справочника нельзя.
Как выйти из этой ситуации?
|
|