Открыть произвольную форму асинхронно

1. Aleksey_Abramov 06.09.23 09:53 Сейчас в теме
Необходимо открыть произвольную форму, остановить выполнение кода, дождаться когда пользователь выдаст результат и продолжить выполнение кода. Как это сделать?
К сожалению не нашёл конструкции, типа
ОткрытьФормуАсинх()
Было бы удобно, если бы получилось сделать так:
Результат = Ждать ОткрытьФормуАсинх("ОбщиеФормы.МояФорма")
; и потом продолжить выполнять код.
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. Sashares 33 06.09.23 10:27 Сейчас в теме
(1)Никак. Используйте Описание оповещения.
5. Aleksey_Abramov 06.09.23 10:29 Сейчас в теме
(3) А как я буду использовать ОписаниеОповещения, если это например процедура ПередНачаломРаботыСистемы(Отказ)?
Если я выкину в ОписаниеОповещение - то отказ проверку не пройдёт, а код продолжит выполняться дальше.
7. Sashares 33 06.09.23 10:33 Сейчас в теме
(5) Так может сначала полностью задачу опишите?
8. Aleksey_Abramov 06.09.23 10:36 Сейчас в теме
(7) При начале работы системы надо открыть произвольную форму. В результате закрытия этой формы определить, продолжать ли работу или завершить.
9. Sashares 33 06.09.23 10:41 Сейчас в теме
(8)Ну так и открывайте форму, блокируя интерфейс.
При закрытии формы, в самой форме и определяйте, завершать работу или просто закрыть.
В чем смысл останавливать выполнение кода?
10. user1880116 06.09.23 10:42 Сейчас в теме
(8)
В результате закрытия этой формы определить, продолжать ли работу или завершить.
Завершай работу из оповещения о закрытии своей формы.

ПриНачалеРаботы должно всегда успешно завершить свою работу, а все остальное будет происходить из оповещения о закрытии. Для ветки, когда форму показывать не надо, вызываешь в нужной точке то же самое оповещение принудительно, через ВыполнитьОбработкуОповещения.
2. soft_wind 06.09.23 10:12 Сейчас в теме
есть режим открытия формы с блокировкой интерфейса, наверно это то что надо
4. karamazoff 124 06.09.23 10:28 Сейчас в теме
все с точностью до наоборот, асинхронность предполагает продолжения выполнения кода.
Можно по стариковски, сделать так ВыбранноеЗначение = ФормаВыбора.ОткрытьМодально();
6. Aleksey_Abramov 06.09.23 10:30 Сейчас в теме
(4) Так вот именно, мне надо продолжить выполнение кода, но с ожиданием. И сейчас именно так и сделано - ОткрытьМодально(). Но надо переделывать, потому что это веб интерфейс.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот