не хватает памяти при выгрузке товаров с сайта в 1С (экспорт из битрикса в 1с)

копируем компонент экспорта каталога catalog.export.1c в свое пространство имен.

Находим в компоненте

elseif($_GET["mode"] == "query" )
{

И дописываем:

if ($_SESSION["BX_CML2_EXPORT"]["current"]>100) $_SESSION["BX_CML2_EXPORT"]["step"]=4;

Делаем свой скрипт обмена 1c_exchange2.php, в котором подключаю свой компонент вместо стандартного.

elseif($type=="get_catalog" )
{
$APPLICATION->IncludeComponent("bedrosova:catalog.export.1c", "", Array(
"IBLOCK_ID" => COption::GetOptionString("catalog", "1CE_IBLOCK_ID", "" ),
"INTERVAL" => COption::GetOptionString("catalog", "1CE_INTERVAL", "-" ),
"ELEMENTS_PER_STEP" => COption::GetOptionString("catalog", "1CE_ELEMENTS_PER_STEP", 100),
"GROUP_PERMISSIONS" => explode(",", COption::GetOptionString("catalog", "1CE_GROUP_PERMISSIONS", "1" )),
"USE_ZIP" => COption::GetOptionString("catalog", "1CE_USE_ZIP", "Y" ),
)
);
}

Наш скрипт 1c_exchange2.php будет отдавать 1С-ке только 100+N товаров. N – количество товаров, выгружаемых за 1 шаг. Вписываю в помощнике импорта адрес своего скрипта и запускаю импорт.

После того, как товары загружены — начинается загрузка картинок. На этом этапе может вывалиться ошибка «Реквизит для группы не найден» — она может возникнуть, если есть группа с таким же уникальным айдишником, как товар (на стороне сайта придется дополнительно перепроверять сквозную уникальность XML_ID групп и товаров).