Необходимо при обновлении элемента устанавливать розничную цену товара добавив наценку к закупочной цене.
В init.php добавил код:
Данный код не работает, не пойму почему.
Хотя CPrice::SetBasePrice возвращяет true.
Если вместо $arFields["ID"] задать, допустим, id другого элемента, то цена устанавливается. А цену изменяемого элемента изменить не удается.
В init.php добавил код:
Код |
---|
AddEventHandler("iblock", "OnAfterIBlockElementUpdate", Array("MyClass", "OnAfterIBlockElementUpdateHandler")); class MyClass { function OnAfterIBlockElementUpdateHandler(&$arFields) { if($arFields["RESULT"]){ CModule::IncludeModule("catalog"); $product = CCatalogProduct::GetByID($arFields["ID"]); $base_price = $product["PURCHASING_PRICE"]+($product["PURCHASING_PRICE"]*3)/100; $b = CPrice::SetBasePrice($arFields["ID"],$base_price,$product["PURCHASING_CURRENCY"]); } } } |
Хотя CPrice::SetBasePrice возвращяет true.
Если вместо $arFields["ID"] задать, допустим, id другого элемента, то цена устанавливается. А цену изменяемого элемента изменить не удается.