[CODE]\Bitrix\Main\EventManager::getInstance()->addEventHandler("sale", "OnSaleStatusOrder", "send_order_data");
function send_order_data($event) {
$order = \Bitrix\Sale\Order::load($event);
$shipmentCollection = $order->getShipmentCollection();
foreach ($shipmentCollection as $shipment)
{
if($shipment->isSystem())
continue;
$trackingNumber = $shipment->getField('TRACKING_NUMBER');
}
$arFields["TRACK"] = $trackingNumber;
AddMessage2Log("print_r($trackingNumber)");
}[/CODE]
только вам надо проверять точно ли это тот статус, потому что в текущем варианте трек-номер получит для любого статуса, а AddMessage2Log запишет в лог, который задан в bitrix/php_interface/dbconn.php[CODE]define("LOG_FILENAME", $_SERVER["DOCUMENT_ROOT"]."/название лога.txt");[/CODE]
function send_order_data($event) {
$order = \Bitrix\Sale\Order::load($event);
$shipmentCollection = $order->getShipmentCollection();
foreach ($shipmentCollection as $shipment)
{
if($shipment->isSystem())
continue;
$trackingNumber = $shipment->getField('TRACKING_NUMBER');
}
$arFields["TRACK"] = $trackingNumber;
AddMessage2Log("print_r($trackingNumber)");
}[/CODE]
только вам надо проверять точно ли это тот статус, потому что в текущем варианте трек-номер получит для любого статуса, а AddMessage2Log запишет в лог, который задан в bitrix/php_interface/dbconn.php[CODE]define("LOG_FILENAME", $_SERVER["DOCUMENT_ROOT"]."/название лога.txt");[/CODE]