Автоматизация смены статуса заказа при его отмене

Всегда было, что если заказ отменял покупатель, то статус заказа выставлялся соответствующий, но теперь нет!

После очередного обновления Bitrix статус «Отменен» перестал выставляться, а просто появлялся флаг отмены.

Но при синхронизации работы с  RetailCRM это не удобно, т.к. там флага отмены нет, а есть статус.

Тогда можно навесить обработку события:

AddEventHandler("sale", "OnSaleCancelOrder", "IfUserCancelOrder");
function IfUserCancelOrder($ID,$CANCELED) {
    if (CModule::IncludeModule("sale")){
        $arOrder = CSaleOrder::GetByID($ID);
        if (($arOrder["USER_ID"] == $arOrder["EMP_CANCELED_ID"])&&$CANCELED=="Y")CSaleOrder::StatusOrder($ID, "CA");//если заказ отменен самим пользователем
    }
}

Также тут учтено, что статус «CA» (Отменен) ставится только при отмене заказа самим покупателем, но не при установке статуса с флагом отмены из RetailCRM.

Комментарии:

Добавить комментарий

Войти с помощью: 

Ваш e-mail не будет опубликован. Обязательные поля помечены *