Имя: Пароль:
1C
1С v8
УФ.8.3. Окно нового документа открывается на заднем фоне. Как победить?
0 WED
 
09.12.15
18:40
Управляемые формы.
Платформа 8.3.6.2152.

Из формы отчета открываю форму выбора Документ1, обработчик - процедура в отчете.

В обработчике открываю форму Документ2 передав ему в параметрах ссылку на Документ1 (типа ввод на основании).

Форма Документ2 открывается за формой отчета!

Точнее создается на переднем плане и тут же уходит на задний.
Я так понимаю, это происходит из-за продолжения работы кода в процедуре обработчика в отчете после открытия формы документа.

Как победить это?
1 WED
 
09.12.15
18:40
*обработчик выбора - процедура в отчете
2 letni88
 
09.12.15
18:43
РежимОткрытияОкнаФормы.БлокироватьОкноВладельца если нужно заполнить открытую форму
3 DTX 4th
 
09.12.15
18:46
Стандартная обработка = Ложь?
4 WED
 
09.12.15
18:47
(2) так-то да, но это не правильно блокировать форму отчета при создании документа
5 WED
 
09.12.15
18:48
(3) Стандартная обработка где? :)

На форме отчета кнопка с командой.
В команде открывается форма списка выбора Документ1

нет там СтандартнаяОбработка в принципе...
6 Nuobu
 
09.12.15
18:48
(4) ПриОткрытии()//В отчтете
ПодключитьОбработчикОжидания("ааа", 0.2, Истина);
КонецПриОткрытии;

ааа()
ОткрытьФормуДока();
Конецааа;
7 WED
 
09.12.15
18:55
(6)
Пробовал типа такого - в процедуре - обработчике выбора в форме отчета заполнял значение реквизита формы, а в подключенном при открытии формы отчета обработчике ожидания ловил это значение и открывал форму Документ2 если реквизит заполнен.
Из 10 раз форма открываемого документа оказывалась раза 2-3 за формой отчета... Видимо опять-таки из-за выполнения кода  обработчика ожидания в форме отчета.. Не успевал он отключится видимо...

Так что тоже не выход. Слишком не стабильно.

Видимо придется блокировать форму отчета... только тогда форма документа на переднем плане открывается...
8 letni88
 
09.12.15
18:56
а если окна получить попробовать, найти нужное и активировать
9 Nuobu
 
09.12.15
18:56
(7) А в том же коде "Активировать()" пробовал?
10 Nuobu
 
09.12.15
18:57
(8) Опередил))
11 WED
 
09.12.15
18:58
щас попробую
12 letni88
 
09.12.15
19:02
(10) )))
13 WED
 
09.12.15
19:11
Получилось.

В форма отчета в коде обработчика выбора подключаю обработчик ожидания.

В обработчике ожидания открываю форму документ2.
Форма остается поверх формы отчета.

Извращение, конечно, но работает.

Выходит, что обработчик описанный в ОписаниеОповещения в процедуре формы активизирует эту форму, заставляя её "всплыть"...
14 WED
 
09.12.15
19:12
Спасибо за подсказку!
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой