🧙 Магия Асинх
Лайфхак с использованием асинх
🤔 Иногда хочется задать вопрос уже после записи (например, элемента справочника). Т.е. уже в тот момент, когда прошли все проверки заполнения и мы точно знаем, что “всё ок”. Например, открыть какую-то дополнительную форму или добавить комментарий истории данных.
🤷♂️ Чтобы задать вопрос, необходимо делать это, например, в событии “ПослеЗаписи”. Это может быть вопрос или через обработчик оповещения, или через новый Асинх метод. Но в обоих случаях, если пользователь нажмёт “Записать и закрыть”, то вопроса он не увидит. Это связано с баго-фичей платформы, о которой была викторина. Закрывающаяся форма моментально закрывает всё, что она “породила”.
💡 Но если вам всё же нужно задавать вопрос и в таком случае, то есть интересный костыль, связанный с особенностью Асинх в 1С.
🩼 Нужно в самом начале асинх процедуры с вопросом вставить такую строчку Ждать 1
На этом всё, расходимся)
👌 Смысл в том, что, как только срабатывает оператор Ждать, то управление возвращается в вызывающий код. Событие ПослеЗаписи завершается и закрывает форму, а потом платформа снова возвращается в наш Асинх метод и далее уже задаёт вопрос. Теперь этот вопрос с формой и не связан и мы можем на него спокойно ответить.
😁 P.S.: Все костыли на этом канале приведены в общеобразовательных целях и не рекомендуются к использованию никому =)