Каждый PHP-разработчик, работающий с экосистемой Bitrix Framework, должен глубоко понимать работу её ключевых компонентов. В этой статье мы проведем подробный аудит темы «При удалении заказа из базы OnOrderDeleted», проанализируем лучшие практики и покажем, как правильно использовать удалении заказа в реальных задачах.
При удалении заказа из базы OnOrderDeleted
> Scope: sale
>
> Кто может подписаться: любой пользователь
Событие OnOrderDeleted вызывается при непосредственном удалении заказа из базы.
События не будут отправляться в приложение, пока установка не завершена. Проверьте установку приложения
Что получает обработчик
Данные передаются в виде POST-запроса
[
'event' => 'ONORDERDELETED',
'event_handler_id' => 1,
'data' => [
'FIELDS' => [
'ID' => 300,
],
],
'ts' => 1714649632,
'auth' => [
'access_token' => 's6p6eclrvim6da22ft9ch94ekreb52lv',
'expires_in' => 3600,
'scope' => 'sale',
'domain' => 'some-domain.bitrix24.com',
'server_endpoint' => 'https://oauth.bitrix24.tech/rest/',
'status' => 'F',
'client_endpoint' => 'https://some-domain.bitrix24.com/rest/',
'member_id' => 'a223c6b3710f85df22e9377d6c4f7553',
'refresh_token' => '4s386p3q0tr8dy89xvmt96234v3dljg8',
'application_token' => '51856fefc120afa4b628cc82d3935cce',
],
]Входящие параметры и конфигурация метода
Названиетип | Описание |
|---|---|
eventstring | Символьный код события |
event_handler_idinteger | Идентификатор обработчика события |
dataobject | Объект с данными события |
tsinteger | timestamp отправки события из очереди событий |
authobject | Объект с параметрами авторизации и данными о портале, на котором произошло событие |
Параметр data
Названиетип | Описание |
|---|---|
FIELDSobject | Объект со свойством ID, содержащим идентификатор заказа |
Параметр FIELDS
Названиетип | Описание |
|---|---|
ID*sale_order.id | Идентификатор заказа. Для получения всех полей заказа по идентификатору используется метод sale.order.get |
Параметр auth
💡 Экспертное мнение и рекомендации
Практические рекомендации:
- При написании кастомных компонентов для «При удалении заказа из базы OnOrderDeleted» всегда разделяйте бизнес-логику и представление (шаблон).
- Используйте отладку SQL-запросов через конструкцию
$wpdb->last_queryили стандартный трекер Битрикса, чтобы контролировать нагрузку.
Похожая задача в бизнесе?
Помогу автоматизировать процессы и внедрить ИИ
Меня зовут Андрей Горошко. Я Full-stack разработчик и эксперт по 1С-Битрикс. Настраиваю CRM Битрикс24, разрабатываю защищенные API и создаю умных ИИ-агентов для автоматизации рутины.
или на почту: gorandvas@yandex.ru