Как отменить деактивацию разделов отсутствующих в выгрузке 1С?

На сайте созданы отдельные разделы для привязки товаров. Этих разделов нет в 1С и не будет. При запуске полной выгрузки, после обмена разделы деактивируются.

В настройках сайта включена опция - Что делать с группами, отсутствующими в файле импорта: ничего.

Пробовал отключить в обработчике (init.php) так же обмен всеравно отключает раздел.

AddEventHandler("iblock", "OnBeforeIBlockSectionUpdate","DoNotDeactivate");
function DoNotDeactivate(&$arFields)
{
   if ($_REQUEST['mode']=='import')
 {
      $arFields['ACTIVE'] == "Y";
   }
}


#Отмена отключение по свойству тип UF

AddEventHandler("iblock", "OnBeforeIBlockSectionUpdate","DoNotDeactivate");
AddEventHandler("iblock", "OnAfterIBlockSectionUpdate ","DoNotDeactivate");
function DoNotDeactivate(&$arFields)
{
   
   if ($arFields['UF_TAGS'] == 1) {
      unset($arFields['ACTIVE']);
   }
}

Ответы (2 шт):

Автор решения: Сергей Савченко

в $arFields будет айди раздела сделайте проверку на нево, потому что там другой мод

AddEventHandler("iblock", "OnBeforeIBlockSectionUpdate","DoNotDeactivate");
function DoNotDeactivate(&$arFields)
{
   if ($arFields['ID']==123)
   {
      $arFields['ACTIVE'] == "Y";
   }
}
→ Ссылка
Автор решения: Илья Алисов

Можно отключить управление активностью при условии, что это обмен с 1с вот так:

AddEventHandler("iblock", "OnBeforeIBlockSectionUpdate", "skipSectionActivity_If1C");

// не управляем активностью раздела при обмене товарами с 1С
function skipSectionActivity_If1C(&$arParams){
    
    if( $_SERVER["SCRIPT_NAME"] == '/bitrix/admin/1c_exchange.php')
    unset($arParams["ACTIVE"]);

}
→ Ссылка