← Все интеграции
Битрикс24 CRM
Валидация полей CRM
Серверная и клиентская проверка полей сделок, компаний и лидов.
Реализация строгой валидации обязательных и зависимых полей: блокировка сохранения при ошибках, подсказки пользователю, проверка ИНН/телефона/email и бизнес-правил.
Пример кода
Реализация
<?php
use Bitrix\Main\EventManager;
EventManager::getInstance()->addEventHandler(
'crm',
'OnBeforeCrmCompanyUpdate',
static function (array &$fields) {
if (isset($fields['UF_INN']) && $fields['UF_INN'] !== '') {
$inn = preg_replace('/\D+/', '', (string)$fields['UF_INN']);
if (!in_array(strlen($inn), [10, 12], true)) {
$GLOBALS['APPLICATION']->ThrowException('ИНН должен содержать 10 или 12 цифр.');
return false;
}
$fields['UF_INN'] = $inn;
}
if (empty($fields['PHONE']) && empty($fields['EMAIL'])) {
$GLOBALS['APPLICATION']->ThrowException('Укажите телефон или email компании.');
return false;
}
return true;
}
);