Александр, ну ты сам не стой на месте, экспериментируй)
Значит там нужно что-то вернуть.
Попробуй так
Код |
---|
return new Main\EventResult( Main\EventResult::SUCCESS, null, 'sale'); |
Ну или можт я с условием накосячил)
тогда так
Код |
---|
use Bitrix\Main\Event;
use Bitrix\Main\EventManager;
use Bitrix\Sale\Order;
$eventManager = EventManager::getInstance();
$eventManager->addEventHandler( 'sale', 'OnSaleOrderCanceled', static function (Event $event) {
/** @var Order $order */
$order = $event->getParameter( 'ENTITY' );
$order->setField('STATUS_ID', 'C');
return new Main\EventResult( Main\EventResult::SUCCESS, null, 'sale');
} ); |
Так же можно пробывать событие onSaleBeforeCancelOrder.
Я бы поднял трейс выполнения до события и разобрался в исходниках что почём (с битриксом один из самых действенных методов если доки так себе)