Перебор и изменение товаров 1с-Битрикс


Пример получения списка товаров из базы данных, с дальнейшим изменением их свойств, а также изменение количества данного товара на складе через API 1С-Битрикс (php) – доступно из любого скрипта с подключенным PROLOG, проверялось на Управление сайтом 20.0.1650. (версия модуля интернет-магазин 20.0.687)

<?php
CModule::IncludeModule('iblock'); 

// выборка товаров 
$arSelect = Array('ID', 'NAME',  'PROPERTY_TEST'); 
$arFilter = Array(
    'IBLOCK_ID' => 1, // ID инфоблока, указать необходимый
    'IBLOCK_SECTION_ID' => 1, // ID раздела , указать необходимый
    'ACTIVE' => 'Y', // активный
    'CATALOG_AVAILABLE' => 'Y' // доступен к покупке
); 
$res = CIBlockElement::GetList(Array(), $arFilter, false, Array(), $arSelect); 

// цикл по выбранным товарам
while ($ob = $res->GetNextElement()) { 
    $arElement = $ob->GetFields(); 
    //print '<pre>'; print_r($arElement); print '</pre>'; 

    // первый вариант изменения свойств 
    CIBlockElement::SetPropertyValuesEx($arElement['ID'], false, array('TEST' => ‘1’)); 

    // второй вариант изменения товара  
    $el = new CIBlockElement;
    $el->Update($arElement ['ID'], array('WF_STATUS_ID' => 1, 'ACTIVE' => 'N'), true); 

    // изменение количества товара на складе  
    $arFields = Array( 
      "PRODUCT_ID" =>  $arElement ['ID'], 
      "STORE_ID" => 3, 
       "AMOUNT" => 0, 
    ); 
    CCatalogStoreProduct::Update(1, $arFields); 
}