Добрый день.
Возможно, я с немного странным вопросом. Пишем свой модуль, и понадобился обработчик для обработки результатов нескольких форм. И как бы есть два пути развития ([URL=https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&LESSON_ID=3493]https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&LESSON_ID=3493[/URL]):
[QUOTE]
Разобрались, как оба варианта работают. Но в чем принципиальная разница, кроме как того, что в одном случае обработчик зарегистрирован в таблице b_module_to_module? Какой вариант лучше в плане производительности? Мы отлавливаем результаты нескольких форм, и я не понимаю, что эффективней. Где почитать про это можно?
Я пока склоняюсь к регистрации через БД только из-за того, что технически код не будет размазан в папке модуля + init.php, а будет только в папке модуля.
Возможно, я с немного странным вопросом. Пишем свой модуль, и понадобился обработчик для обработки результатов нескольких форм. И как бы есть два пути развития ([URL=https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&LESSON_ID=3493]https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&LESSON_ID=3493[/URL]):
[QUOTE]
registerEventHandler производит регистрацию в БД, а AddEventHandler в файле init.php. То есть использование первой функции приводит к дополнительной нагрузке на БД. Её лучше использовать в ситуациях, когда выполняемые действия должны быть зафиксированы раз и навсегда и именно в БД.
[/QUOTE]Разобрались, как оба варианта работают. Но в чем принципиальная разница, кроме как того, что в одном случае обработчик зарегистрирован в таблице b_module_to_module? Какой вариант лучше в плане производительности? Мы отлавливаем результаты нескольких форм, и я не понимаю, что эффективней. Где почитать про это можно?
Я пока склоняюсь к регистрации через БД только из-за того, что технически код не будет размазан в папке модуля + init.php, а будет только в папке модуля.