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

CancelOrder

Метод устарел. Рекомендуется использовать методы класса \Bitrix\Sale\Order.

int
CSaleOrder::CancelOrder(
  int ID,
  string val,
  string description = ""
);

Метод меняет значение флага "заказ отменён" (поле CANCELED) на значение параметра Val для заказа с кодом ID. Кроме флага отмены заказа, устанавливаются также поля даты изменения значения флага (DATE_CANCELED) и кода пользователя, изменившего значение флага (EMP_CANCELED_ID). Поле с описанием причины отмены заказа (REASON_CANCELED) заполняется значением параметра Descr.

Если заказ был оплачен, то при отмене снимается флаг оплаты с возвращением денег на счет покупателя. Если заказ был частично оплачен, то при отмене внесённая сумма возвращается на внутренний счет покупателя.

Перед отменой заказа вызываются обработчики события OnSaleBeforeCancelOrder модуля магазина, в которых можно отменить отмену заказа, вернув значение false. После отмены вызываются обработчики события OnSaleCancelOrder модуля магазина.

В случае отмены заказа генерируется почтовое событие типа SALE_ORDER_CANCEL. Нестатический метод.

Параметры вызова

ПараметрОписание
ID Код заказа.
val Новое значение флага отмены заказа (Y/N).
description Описание причины отмены заказа.

Возвращаемые значения

Возвращается код заказа или false в случае ошибки.

Пример использования

<?
CSaleOrder::CancelOrder(25, "Y", "Потому что передумал");
?>


© «Битрикс», 2001-2020, «1С-Битрикс», 2020
Наверх