|
При программном закрытии формы не срабатывает оповещение. | ☑ | ||
---|---|---|---|---|
0
avkend
13.07.23
✎
12:42
|
УТ 11. Штатно открывается форма уточнения в типовой:
ОткрытьФорму( "ОбщаяФорма.ФормаУточненияДанныхИС", ПараметрыОткрытияФормы.ДанныеДляУточненияСведенийПользователя, ФормаВладелец,,,, ОповещениеПоЗавершениюУточненияДанных, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); При определенных условиях мне нужно закрыть эту форму при открытии. Пишу в расширении: &НаКлиенте Процедура Расш1_ПриОткрытииПосле(Отказ) ЗавершитьРедактирование(Команды.Готово); КонецПроцедуры Отрабатывает процедура завершить редактирование, отрабатывает процедура ПриЗакрытии(), но после закрытия исполнение кода не идет в процедуру, указанную в параметре "ОповещениеПоЗавершениюУточненияДанных" при открытии формы. Если в форме нажать кнопку "Готово", то есть при интерактивном закрытии, все проходит нормально и в обработчик оповещение отладка попадает. Как закрыть форму с отработкой оповещения? |
|||
1
arsik
гуру
13.07.23
✎
12:50
|
Попробуй через ОповеститьОВыборе()
|
|||
2
arsik
гуру
13.07.23
✎
12:51
|
+(1) Он сам закроет форму в соответствии со значением свойства ЗакрыватьПриВыборе
|
|||
3
avkend
13.07.23
✎
13:13
|
(1) Сделал ОповеститьОВыборе() он после закрытия перешел в форму владельца в обработку ОбработкаВыбора(ВыбранноеЗначение, ИсточникВыбора)
, а должен в УточненияДанныхЗавершение(РезультатВыбора, ДополнительныеПараметры). |
|||
4
Галахад
гуру
13.07.23
✎
13:24
|
Может не сразу закрывать надо? Обработчиком ожидания, например.
|
|||
5
arsik
гуру
13.07.23
✎
13:32
|
(3) А покажи, как открываешь.
|
|||
6
arsik
гуру
13.07.23
✎
13:37
|
У меня вот так, и все прекрасно работает.
|
|||
7
polosov
13.07.23
✎
13:46
|
(6) У тебя закрытие в расширении?
А то может это очередной прикол расширений. |
|||
8
arsik
гуру
13.07.23
✎
13:47
|
(7) Этот весь код и открываемая форма в расширении.
|
|||
9
avkend
13.07.23
✎
13:49
|
(5) Открывается типовым кодом:
ОткрытьФорму( "ОбщаяФорма.ФормаУточненияДанныхИС", ПараметрыОткрытияФормы.ДанныеДляУточненияСведенийПользователя, ФормаВладелец,,,, ОповещениеПоЗавершениюУточненияДанных, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); |
|||
10
avkend
13.07.23
✎
13:50
|
А может прикол в том, что открывается не в расширении, а код закрытия в расширении?
|
|||
11
avkend
13.07.23
✎
14:08
|
Попробовал без расширения в процедуре приоткрытии прописал ЗавершитьРедактирование(Команды.Готово); не помогло. Так же не идет в обработку оповещения.
|
|||
12
avkend
13.07.23
✎
14:26
|
Вот так заработало:
&НаКлиенте Процедура Расш1_ПриОткрытииПосле(Отказ) ПодключитьОбработчикОжидания("ПроцедураЗакрытия", 0.1, Истина); КонецПроцедуры &НаКлиенте Процедура ПроцедураЗакрытия() ЗавершитьРедактирование(Команды.Готово); КонецПроцедуры |
|||
13
avkend
13.07.23
✎
14:27
|
(4) Спасибо.
|
|||
14
Мимохожий Однако
13.07.23
✎
14:32
|
(0) "При определенных условиях мне нужно закрыть эту форму при открытии"
Какие условия и в каком месте проверяются? Может быть, при определенных условиях вообще не открывать форму? ) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |