Дано: реквизит на форме типа "Список значений", куда надо записать несколько выбранных пользователем документов.
Если действовать стандартно, в процедуре ВыбранныеДокументыНачалоВыбора прописать
ЭлементыФормы.ВыбранныеДокументы.Значение = Новый СписокЗначений;
ЭлементыФормы.ВыбранныеДокументы.Значение.ТипЗначения = Новый ОписаниеТипов(МассивТипов);
то все работает: открывается стандартная, насколько понимаю, форма подбора в список значений.
Но вот вопрос, как сделать фильтр подбираемых документов, скажем, по Организации? Если кто знает, как это сделать в рамках стандартной обработки, сообщите.
Я же попробовал так:
ЭлементыФормы.ВыбранныеДокументы.Значение = Новый СписокЗначений;
ЭлементыФормы.ВыбранныеДокументы.Значение.ТипЗначения = Новый ОписаниеТипов(МассивТипов);
СтандартнаяОбработка = Ложь;
Форма = Документы[Имя].ПолучитьФормуВыбора ("ФормаВыбора", Элемент);
Если ЗначениеЗаполнено(Организация) Тогда
Форма.Отбор.Организация.Установить(Организация, Истина);
Форма.Отбор.Организация.Использование = Истина;
КонецЕсли;
Форма.МножественныйВыбор = Истина;
Форма.РежимВыбора = Истина;
Форма.Открыть();
Дальше пытаюсь что-то ловить в ВыбранныеДокументыОбработкаВыбора
Но что-то работает не так: форма выбора закрывается после каждого выбора документа, несмотря на МножественныйВыбор=Истина. Что тут не так? Может, для документов такое не работает?
Второй способ работает, если в форме выбора документов зажимать Shift, натыкать документов и потом нажать кнопку Выбрать. Но это не слишком удобно, мягко говоря. Как сделать так, чтобы работало аналогично подбору номенклатуры в документы?
Черт, не заметил свойство
Форма.ЗакрыватьПриВыборе = Ложь;
Все, теперь все работает как надо :)
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой