У элементов в 1С и на сайте одно и тоже название, пробую найти и обновить уже существующий элемент через событие OnBeforeIBlockElementUpdate.
Код |
---|
AddEventHandler("iblock", "OnBeforeIBlockElementUpdate","UpdateExistElement");
function UpdateExistElement(&$arFields)
{
if (@$_REQUEST['mode']=='import')
{
$obElements = CIBlockElement::GetList(
array(),
array(
'NAME' => $arFields['NAME'],
)
);
while($arElementFields = $obElements->GetNext())
{
$arFields["IBLOCK_SECTION_IDECTION"] = array($arElementFields["IBLOCK_SECTION_ID"]);
$arFields["ID"] = $arElementFields["ID"];
$arFields["CODE"] = $arElementFields["CODE"];
$arFields["XML_ID"] = $arElementFields["XML_ID"];
}
}
}
|
Но этот код почему-то не обновляет элемент который находит, а создает новый.