Готовишься к экзамену?
Полнофункциональный тренажер @bot_1cnik_bot с полноценным обучением, режимом экзамена и подробной статистикой.
Что происходит, если в модуле объекта определен обработчик события, и при этом на это событие установлена подписка?
Процедура подписки на событие вызываться не будет (событие отрабатывается в модуле объекта).
Неправильно: Если в объекте есть обработчик события, он будет выполняться первым. Подписка на это событие, как правило, не влияет на его выполнение, так как обработчик объекта отрабатывает раньше.
Процедура модуля объекта вызываться не будет (событие отрабатывается по подписке).
Неправильно: В случае наличия обработчика события в модуле объекта, именно он будет выполняться первым, а не подписка. Подписка не блокирует выполнение процедуры модуля объекта.
В начале отработает процедура, определенная по подписке, затем процедура, расположенная в модуле объекта.
Неправильно: В 1С сначала всегда выполняется обработчик, определенный в модуле объекта, и только потом - обработчик подписки на событие.
В начале отработает процедура, расположенная в модуле объекта, затем процедура, определенная по подписке.
Правильно: В 1С обработчик события, определенный в модуле объекта, отрабатывает первым, затем вызывается процедура подписки на событие, если она есть. Если в процессе выполнения обработчика модуля объекта установлено значение "Отказ" или произошло исключение, дальнейшее выполнение прерывается.
Пояснение
При обработке события в 1С всегда сначала выполняется процедура, которая прописана в модуле объекта, а уже потом срабатывает подписка на событие. Это важно, потому что в процессе выполнения обработчика события могут быть установлены параметры, такие как "Отказ", которые могут предотвратить дальнейшее выполнение других процедур. В случае возникновения исключений выполнение также прерывается.