Обработка Заполнение табличной части (внешняя), 8.1.15.14

Новая тема
Хочу воспользоваться стандартным механизмом подбора, но не открывая форму обработки. Проблема в том, что если вызов сделать сразу из ПередОткрытием и установить Отказ в Истина, то это приводит к падению 1С. Если сделать в ПриОткрытии, то форма открывается, а Закрыть() ругается на то, что форма не открыта.
Люди, кто знает, как можно это обойти? Или хотябы подскажите вариант не показывать форму или закрыть сразу после открытия.
"для документа ПТиУ
приОткрытии()
в самом конце

//вызываем стандартный подбор
ДействиеПодбор(Товары);
// закрываем форму по уникальному ключу 3 параметр!
ФормаПодбора = Обработки.ПодборНоменклатуры.ПолучитьФорму("ОсновнаяФорма", ЭтаФорма,  ЭтаФорма);
ФормаПодбора.Закрыть();
"
"А зачем "ФормаПодбора.Закрыть();" если не было "ФормаПодбора.Открыть();"?"
"Я пока выкрутился. Не очень красиво, но работает :) :
В процедуру ПриОткрытии вставил ПодключитьОбработчикОжидания ("ЗакрытьФорму", 0.1, Истина); Ну и в процедуре ЗакрытьФорму ЭтаФорма.Закрыть().
Форма появляется на "мгновение", но ничего лучше в голову не пришло."
"
она вызывается из
ДействиеПодбор(Товары);

общий модуль работы с диалогами
процедура

РаботаСДиалогами.ОткрытьПодборНоменклатуры(ЭтаФорма, СтруктураПараметровПодбора, Метаданные());

// Открываем форму подбора.
ФормаПодбора = Обработки.ПодборНоменклатуры.ПолучитьФорму("ОсновнаяФорма", ФормаДокумента, ФормаДокумента);
ФормаПодбора.ОбработкаОбъект.СтруктураИсходныхПараметров = СтруктураПараметров;
ФормаПодбора.Открыть();
"
В обработку заполнения табличной части передается Объект, а не форма. А подбору нужна форма, в которой прописан обработчик подбора. Поэтому приходиться создавать форму в Этой самой обработке, но одного создания оказалось мало - форма обязательно должна быть открыта иначе 1С падает.
А зачем нужно вообще все это "извращение"?
Лениво писать свой выбор, а менять модуль формы документа не хочу.
В УПП есть ПроцедурыУправленияПерсоналом.ОткрытьФормуОтбораСпискаРаботников. Реально работает ФормированиеСпискаРаботников. Задется куча условий и отборов (организация, уваленные, подразделение...), а ФормированиеСпискаРаботников данные возвращает через ОповеститьОВыборе.
Читают тему
(гостей: 1)

Быстрый переход