@KASich

Как посмотреть массив данных о товаре, передаваемых при импорте из 1С?

Для того, чтобы отменить изменения элемента или переопределить некоторые поля, мы можем использовать событие OnBeforeIBlockElementUpdate.
Иногда это требуется делать во время выгрузки товаров из 1С. Для этого мы отслеживаем событие в init.php.
AddEventHandler("iblock", "OnBeforeIBlockElementUpdate", "DoNotUpdate");
function DoNotUpdate(&$arFields)
{
    ...
}


Но для того, чтобы переопределить поля, надо знать как они называются. Сидеть и догадываться не очень хороший вариант. Хочется узнать какие данные передаются.
Как вывести и посмотреть этот самый массив $arFields?

Конкретно в моем случае я хочу изменить количество товара на нескольких складах.
  • Вопрос задан
  • 221 просмотр
Решения вопроса 2
udjin123
@udjin123
PHP, Golang, React
1. Это далеко не первый вопрос, все дело в неправильном подходе, вот тут например отвечал уже.
2. Событие OnBeforeIBlockElementUpdate для этого не подходит, для остатков складов используйте событие OnStoreProductUpdate и OnStoreProductAdd. Все события изменения/добавления цен, основного остатка, остатков складов и т.д. лежат в модуле Торговый каталог, список смотреть тут
Ответ написан
Комментировать
alexyarik
@alexyarik
Битрикс разработчик
Как вывести и посмотреть этот самый массив $arFields?

Старое АПИ
https://dev.1c-bitrix.ru/api_help/main/functions/d...
Новое АПИ
В своем обработчике
\Bitrix\Main\Diag\Debug::writeToFile
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы