[QUOTE]
Саша Хильчук написал:
Битрикс уже давно рекомендует использовать \Bitrix\Catalog\Model\Price::update
А есть документация и примеры использования?[/QUOTE]
[CODE]$arFieldsPrice = Array(
"PRODUCT_ID" => $arElement["ID"],
"CATALOG_GROUP_ID" => $id,
"PRICE" => $price,
"CURRENCY" => !$currency ? "RUB" : $currency,
);
$dbPrice = \Bitrix\Catalog\Model\Price::getList([
"filter" => array(
"PRODUCT_ID" => $arElement["ID"],
"CATALOG_GROUP_ID" => $id
)]);
if ($arPrice = $dbPrice->fetch()) {
$result = \Bitrix\Catalog\Model\Price::update($arPrice["ID"], $arFieldsPrice);
if ($result->isSuccess())
{
echo "Обновили цену у товара у элемента каталога " . $arElement["ID"] . " Цена " . $price . PHP_EOL;
}
else {
echo "Ошибка обновления цены у товара у элемента каталога " . $arElement["ID"] . " Ошибка " . $result->getErrorMessages() . PHP_EOL;
}
}else{
$result = \Bitrix\Catalog\Model\Price::add($arFieldsPrice);
if ($result->isSuccess())
{
echo "Добавили цену у товара у элемента каталога " . $arElement["ID"] . " Цена " . $price . PHP_EOL;
}
else {
echo "Ошибка добавления цены у товара у элемента каталога " . $arElement["ID"] . " Ошибка " . $result->getErrorMessages() . PHP_EOL;
}
}[/CODE]