Иногда необходимо товары в битриксе, выгруженные из 1С, привязывать к нескольким категориям, но есть проблема в том, что в 1С нельзя привязывать товар к нескольким категориям, а если привязывать в битриксе товар к нескольким категориям то при отгрузке эти изменения сотрутся.
Для того что бы это исправить нужно вставить такой код в файл init.php
AddEventHandler("iblock", "OnBeforeIBlockElementUpdate","SaveMySection"); function SaveMySection(&$arFields) { if (@$_REQUEST['mode']=='import')//импорт из 1с? { $db_old_groups = CIBlockElement::GetElementGroups($arFields['ID'], true); while($ar_group = $db_old_groups->Fetch()) { if(!in_array($ar_group['ID'],$arFields['IBLOCK_SECTION'])) $arFields['IBLOCK_SECTION'][]=$ar_group['ID']; } } }
Удачного использования
Опубликовано: 26 июня 2012
|
|