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

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-2019, «1С-Битрикс», 2019
Наверх