@man0max

Как заменить значения полей в init.php при выгрузке из 1С в битрикс?

Доброго времени суток. Вопрос в том, что мне необходимо в свойство(id=C1_NAME) товара записывать "Полное наименование" (из 1Ски) так как "Полное наименование" затирает анонс товара и это необходимость.
в init.php прописал следующее:

AddEventHandler("iblock", "OnBeforeIBlockElementUpdate", "DropPreviewText");
AddEventHandler("iblock", "OnBeforeIBlockElementAdd", "DropPreviewText");

function DropPreviewText($arFields)
{
if (@$_REQUEST['mode']=='import')
{
if($arFields['IBLOCK_ID']==5 && strstr($_SERVER['REQUEST_URI'],'1c_exchange.php')) {
$arFields['C1_NAME'] = $arFields['PREVIEW_TEXT'];
unset($arFields['PREVIEW_TEXT'];
unset($arFields['PREVIEW_TEXT_TYPE'];
}
}
}
Но не работает.
При выгрузке информация этого свойства удачно меняется на новое(которое было выставлено в 1С) и в файлах выгрузки так же присутствует(а значит выгружает на ура и проблема не в этом), но как к свойству обратиться и поменять значение перед тем как удаляется Полное наименование и записывается товар...
  • Вопрос задан
  • 5731 просмотр
Пригласить эксперта
Ответы на вопрос 1
sabramovskikh
@sabramovskikh
При выгрузке из 1С можно только обработать данные после выгрузки с помощью
AddEventHandler('catalog', 'OnSuccessCatalogImport1C', 'customCatalogImportStep');
Вот пример
Тоже искал пробовал другие события. ТП сказала только так
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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