РЕШЕНИЕ:
В для события OnOrderDelete указано, что в качестве параметров передаются идентификатор удаленного заказа и индикатор успешности операции. Документации по новому событию OnSaleOrderDeleted нет, при этом все происходит похожим образом - вот только вместо ID заказа передается объект Bitrix\Sale\Order
Результат выполнения вышеуказанного кода: object
А вот сам объект:
...ну и так далее.
Как все-таки получить ID удаленного заказа при обработке события OnSaleOrderDeleted?
P.S. В настройках модуля "Интернет-магазин" установлена опция "Включить обработку устаревших событий", однако при установке обработчика для устаревшего события OnOrderDelete он не срабатывает. А ведь до появления этих "новых" событий все работало как надо.
В для события OnOrderDelete указано, что в качестве параметров передаются идентификатор удаленного заказа и индикатор успешности операции. Документации по новому событию OnSaleOrderDeleted нет, при этом все происходит похожим образом - вот только вместо ID заказа передается объект Bitrix\Sale\Order
| Код |
|---|
AddEventHandler("sale", "OnSaleOrderDeleted", array("CTest", "processData"));
class CTest {
function processData($orderID, $isSuccess) {
if ($isSuccess) {
echo gettype($orderID);
}
}
}
|
А вот сам объект:
| Код |
|---|
Bitrix\Sale\Order::__set_state(array( 'isNew' => false, 'discount' => Bitrix\Sale\Discount::__set_state(array( 'order' => NULL, 'newOrder' => false, 'convertedOrder' => false, 'useMode' => 2, 'orderData' => array ( 'ID' => 368, 'USER_ID' => '1', 'SITE_ID' => 's1', 'ORDER_PRICE' => 0, 'ORDER_WEIGHT' => 0, 'CURRENCY' => 'RUB', 'BASKET_ITEMS' => array ( 339 => array ( |
Как все-таки получить ID удаленного заказа при обработке события OnSaleOrderDeleted?
P.S. В настройках модуля "Интернет-магазин" установлена опция "Включить обработку устаревших событий", однако при установке обработчика для устаревшего события OnOrderDelete он не срабатывает. А ведь до появления этих "новых" событий все работало как надо.