Документация для разработчиков

События, связанные с изменением заказов

Примечание: перечисленные ниже события устарели с версии 15.5.0, но в продукте сохранена обратная совместимость. Поэтому их можно использовать, если в настройках модуля Интернет-магазин отмечена опция Включить обработку устаревших событий. Либо вы можете использовать события нового ядра.


Событие Описание и параметры МетодС версииДо версии
OnBeforeOrderAdd Вызывается перед добавлением заказа, может быть использовано для отмены или модификации данных.
Параметры
&arFields Массив полей заказа
Add4.0.6 15.5.0
OnOrderAdd Вызывается после добавления заказа.
Параметры
ID Идентификатор добавленного заказа
arFields Массив полей заказа
Add4.0.6 15.5.0
OnOrderSave Вызывается после обработки свойств заказа. Отличается от OnOrderAdd тем, что сохраняются не только поля заказа, но и свойства заказа.
Параметры
orderId Идентификатор добавленного заказа.
arFields Массив полей заказа.
arOrder Массив свойства заказа.
isNew
DoSaveOrder14.5.1415.5.0
OnBeforeOrderUpdate Вызывается перед изменением заказа, может быть использовано для отмены или модификации данных.
Параметры
ID Идентификатор заказа
arFields Массив полей заказа
Update4.0.6 15.5.0
OnOrderUpdate Вызывается после изменения заказа.
Параметры
ID Идентификатор заказа
arFields Массив полей заказа
Update 4.0.615.5.0
OnBeforeOrderDelete Вызывается перед удалением заказа, может быть использовано для отмены.
Параметры
ID Идентификатор заказа
Delete 4.0.615.5.0
OnOrderDelete вызывается после удаления заказа
Параметры
ID Идентификатор заказа
Success Индикатор успешности. Выводит true, если удаление произошло успешно. И false, если удаление заказа не произошло (например, не удалось удалить корзину заказа, или подписку по заказу).
Delete 4.0.615.5.0
OnSaleCalculateOrder Вызывается после калькуляции заказа. В событии передается &arOrder, те можно вносить правки в массив заказа в обработчике события.
Параметры
arOrder Массив параметров заказа
CSaleOrder::DoCalculateOrder11.5.0 15.5.0
OnSaleCalculateOrderDiscount Вызывается после расчёта скидки на заказ.
Параметры
arOrder Массив параметров заказа
CSaleOrder::DoCalculateOrder 11.5.015.5.0
OnSaleCalculateOrderDelivery Вызывается после расчёта доставки.
Параметры
arOrder Массив параметров заказа
CSaleOrder::DoCalculateOrder11.5.0 15.5.0
OnSaleCalculateOrderDeliveryTax Вызывается после расчёта налога на доставку.
Параметры
arOrder Массив параметров заказа
CSaleOrder::DoCalculateOrder11.5.0 15.5.0
OnSaleCalculateOrderPaySystem Вызывается после определения платёжной системы.
Параметры
arOrder Массив параметров заказа
CSaleOrder::DoCalculateOrder11.5.0 15.5.0
OnSaleCalculateOrderPersonType Вызывается после определения типа плательщика.
Параметры
arOrder Массив параметров заказа
CSaleOrder::DoCalculateOrder11.5.0 15.5.0
OnSaleCalculateOrderProps Вызывается после формирования свойств плательщика.
Параметры
arOrder Массив параметров заказа
CSaleOrder::DoCalculateOrder11.5.0 15.5.0
OnSaleCalculateOrderShoppingCart Вызывается после формирования массива заказа из корзины.
Параметры
arOrder Массив параметров заказа
CSaleOrder::DoCalculateOrder11.5.0 15.5.0
OnSaleCalculateOrderShoppingCartTax Вызывается после определения налогов.
Параметры
arOrder Массив параметров заказа
CSaleOrder::DoCalculateOrder11.5.0 15.5.0


Пользовательские комментарии

Пользовательские комментарии не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.

Добавлять комментарии могут только зарегистрированные пользователи. Сообщения для просмотра появляются после модерации.
1
Антон Жидков
Для отмены создания заказа в обработчике OnBeforeOrderAdd необходимо вернуть false. Пример:


Код
AddEventHandler("sale", "OnBeforeOrderAdd", "OnBeforeOrderAddHandler");

function OnBeforeOrderAddHandler(&$arFields) {
    // ... process fields

    return false;
}
***********
Комментарий разработчика: Да, но событие устарело с 15.5.0.
© «Битрикс», 2001-2017, «1C-Битрикс», 2017