Событие вызывается после массовой обработки найденных элементов из МойСклад. Событие нужно именно тогда, когда необходимо использовать одновременно оба элемента из МойСклад и из БУС, в ином случае можно использовать стандартные события обновления \ создания элементов.
Пример вызова события (файл init.php)
\Bitrix\Main\EventManager::getInstance()->addEventHandler(
'rbs.moyskladstocks',
'OnAfterUpdateItems',
'OnAfterUpdateItemsHandler'
);
function OnAfterUpdateItemsHandler(\Bitrix\Main\Event $event)
{
$eventParams = $event->getParameters();
$entity= $eventParams['entity']; //сущность в МойСклад, которая обрабатывается (четыер варианта значения: product / variant / bundle / service)
$items = $eventParams['items']; //массив обрабатываемых объектов (ниже пример их обработки)
foreach ($items as $xmlId => $currentItem) {
// $xmlId -- внешний код элемента, для модификаций это значение будет без решетки # во внешнем коде
$itemBx = $currentItem['BX']; //сущность в битриксе, доступ к полям идет через ассоциативный массив
$item = $currentItem['MS']; //сущность в МС, доступ к полям идет через свойства объекта
}
// \Rbs\MoyskladStocks\Logger::debugMsg($arItems, 'updateItemsLog.log'); //запись в логи, логи хранятся в папке /bitrix/rbs.moyskladstocks/logs/
}