Михаил Базаров Разработка на 1С-Битрикс Михаил Базаров

События вызываемые при сохранении заказа

Внимание! Все сообщения на форуме проходят модерацию. Ваше сообщение появится после проверки.
События вызываемые при сохранении заказа

Иногда необходимо выполнить определенные действия с заказом при его изменении. Для этого можно использовать события
OnSaleOrderBeforeSaved и OnSaleOrderSaved.
Пример использования события OnSaleOrderSaved для изменения статуса заказа.
В данном примере мы будем проверять статус заказа после его сохранения. Если статус заказа равен "C"
(например, "Обработан"), мы переводим его в статус "F" (например, "Завершен").

Код
use Bitrix\Main;

Main\EventManager::getInstance()->addEventHandler(
    'sale',
    'OnSaleOrderSaved', // Наше событие
    'updateOrderStatus'
);

function updateOrderStatus(Main\Event $event)
{
    $order = $event->getParameter("ENTITY");
    $currentStatus = $order->getField("STATUS_ID");

    // Проверяем, если текущий статус заказа "C"
    if ($currentStatus === 'C') { 
        // Переводим заказ в статус "F"
        $order->setField("STATUS_ID", "F");
       // $order->save(); // Сохраняем изменения в заказе
    }
}
Форма ответов
 
Текст сообщения*
Перетащите файлы
Ничего не найдено
Загрузить файлы
 

Блог-note Заметки по 1С-Битрикс