Добрый день.
Столкнулся с проблемой при настройке стандартных веб-форм Битрикс. После заполнения формы, её результат сохраняется, однако почтовое событие не создается. На вкладке "Дополнительно" в настройках формы указан почтовый шаблон, рядом с ним отмечена галочка. Почтовый шаблон имеет тип почтового события FORM_FILLING_FORM_VACANCIES.
Насколько я понимаю, при заполнении формы в таблице
b_event должна создаваться запись FORM_FILLING_..., но этого не происходит. Если вызвать
CEvent::Send() вручную через командную строку PHP, то запись создается.
Для выявления причины проблемы я предпринял следующие действия - вызывал функцию
CFormResult::Mail(7692), где 7692- ID результата проблемной формы. При попытке вызова этой функции в лог добавляется ошибка "Ошибка! Веб-форма не найдена".
Привожу лог, в котором сначала указан массив результата формы, а ниже - лог функции CFormResult::Mail(). Удивительно то, что в массиве результата формы указан FORM_ID, а функция Mail не может найти форму.
Host: 43464.test
Date: 2021-07-26 11:54:29
Module:
array (
'ID' => '7692',
'TIMESTAMP_X' => '26.07.2021 11:54:29',
'DATE_CREATE' => '26.07.2021 11:54:29',
'STATUS_ID' => '17',
'FORM_ID' => '19',
'USER_ID' => '20549',
'USER_AUTH' => 'Y',
'STAT_GUEST_ID' => '0',
'STAT_SESSION_ID' => '0',
'SENT_TO_CRM' => 'N',
'STATUS_TITLE' => 'DEFAULT',
'STATUS_DESCRIPTION' => '',
'STATUS_DEFAULT_VALUE' => 'Y',
'STATUS_CSS' => 'statusgreen',
'STATUS_HANDLER_IN' => '',
'STATUS_HANDLER_OUT' => '',
)
include < CAllForm::ExecHandlerAfterChangeStatus < CAllFormResult::Add < include < CBitrixComponent::__includeComponent
V:\poldoma.test\bitrix\modules\form\classes\general\form_callform.php:246
V:\poldoma.test\bitrix\modules\form\classes\general\form_callformresult.php:721
V:\poldoma.test\bitrix\components\bitrix\form.result.new\component.php:202
V:\poldoma.test\bitrix\modules\main\classes\general\component.php:605
V:\poldoma.test\bitrix\modules\main\classes\general\component.php:680
----------
Host: 43464.test
Date: 2021-07-26 11:54:29
Module:
Ошибка! Веб-форма не найдена<br>
include < CAllForm::ExecHandlerAfterChangeStatus < CAllFormResult::Add < include < CBitrixComponent::__includeComponent
V:\poldoma.test\bitrix\modules\form\classes\general\form_callform.php:246
V:\poldoma.test\bitrix\modules\form\classes\general\form_callformresult.php:721
V:\poldoma.test\bitrix\components\bitrix\form.result.new\component.php:202
V:\poldoma.test\bitrix\modules\main\classes\general\component.php:605
V:\poldoma.test\bitrix\modules\main\classes\general\component.php:680
----------
Ситуация очень похожа на ту, что обсуждалась
в этой теме, однако там конкретного ответа не нашлось, кроме отсутствия галочек в настройках (которые у меня присутствуют).