По просьбе выкладываю скрипт:
[CODE]if(CModule::IncludeModule("iblock"))
{
echo "Скрипт запущен...<br>";
// Выведем коды 10 товаров с самым большим количеством на складе
// из тех, количество которых при заказе должно уменьшаться
$ind = 0;
$db_res = CCatalogProduct::GetList(
array("ID" => "ASC"),
array("IBLOCK_TYPE" => "SHOP"),
false,
false
);
$ind=0;
while (($ar_res = $db_res->Fetch()) && ($ind < 15000))
{
$arFields_quant = Array (
"ID" => $ar_res["ID"],
"QUANTITY" => "1000",
"WEIGHT" => "2"
);
$arFields = Array(
"PRODUCT_ID" =>$ar_res["ID"],
"CATALOG_GROUP_ID" => 4,
"EXTRA_ID" => 2,
"CURRENCY" => "RUR",
);
$res = CPrice::GetList(
array(),
array(
"PRODUCT_ID" => $ar_res["ID"],
"CATALOG_GROUP_ID" => "4"
)
);
if ($arr = $res->Fetch())
{
CPrice::Update($arr['ID'], $arFields);
print "Изменили параметры для товара ".$ar_res["ID"]." ".$arr['ID']."<br>";
}
else
{
CPrice::Add($arFields);
print "Добавили новые параметры для товара ".$ar_res["ID"]." ".$ar_res['ID']."<br>";
}
$ind++;
}
}
//--------------------[/CODE]
Ключевые моменты:
[CODE]"CATALOG_GROUP_ID" => 4[/CODE]
здесь мы задаем тип цены, для которого устанавливаем наценку
[CODE]"EXTRA_ID" => 2[/CODE]
а это - собственно ID наценки.
Устанавливаем нужный фильтр по элементам, проходим скриптом товары. Далее, можно средствами Битрикс перегенерировать наценки.
[CODE]if(CModule::IncludeModule("iblock"))
{
echo "Скрипт запущен...<br>";
// Выведем коды 10 товаров с самым большим количеством на складе
// из тех, количество которых при заказе должно уменьшаться
$ind = 0;
$db_res = CCatalogProduct::GetList(
array("ID" => "ASC"),
array("IBLOCK_TYPE" => "SHOP"),
false,
false
);
$ind=0;
while (($ar_res = $db_res->Fetch()) && ($ind < 15000))
{
$arFields_quant = Array (
"ID" => $ar_res["ID"],
"QUANTITY" => "1000",
"WEIGHT" => "2"
);
$arFields = Array(
"PRODUCT_ID" =>$ar_res["ID"],
"CATALOG_GROUP_ID" => 4,
"EXTRA_ID" => 2,
"CURRENCY" => "RUR",
);
$res = CPrice::GetList(
array(),
array(
"PRODUCT_ID" => $ar_res["ID"],
"CATALOG_GROUP_ID" => "4"
)
);
if ($arr = $res->Fetch())
{
CPrice::Update($arr['ID'], $arFields);
print "Изменили параметры для товара ".$ar_res["ID"]." ".$arr['ID']."<br>";
}
else
{
CPrice::Add($arFields);
print "Добавили новые параметры для товара ".$ar_res["ID"]." ".$ar_res['ID']."<br>";
}
$ind++;
}
}
//--------------------[/CODE]
Ключевые моменты:
[CODE]"CATALOG_GROUP_ID" => 4[/CODE]
здесь мы задаем тип цены, для которого устанавливаем наценку
[CODE]"EXTRA_ID" => 2[/CODE]
а это - собственно ID наценки.
Устанавливаем нужный фильтр по элементам, проходим скриптом товары. Далее, можно средствами Битрикс перегенерировать наценки.