Возникла проблема с загрузкой позиций из 1С, в Битрикс цены попадают не округлённые, несмотря на то, что в 1С фигурируют типы цен с правилами округления. Т.е. есть цена 252.34, в 1С она округляется до 255 и именно эта цена должна везде фигурировать для данного типа цены!
Пока проблему округления решил (спасибо ТП) , но через костыль...
[CODE=/bitrix/php_interface/init.php]
<?
AddEventHandler("catalog", "OnBeforePriceAdd", "MyRoundPrices");
AddEventHandler("catalog", "OnBeforePriceUpdate", "MyRoundPrices");
function MyRoundPrices(&$arFields)
{
if ($arFields['CATALOG_GROUP_ID'] == 8) {
$arFields['PRICE'] = ceil($arFields['PRICE']/5)*5;
}
}
?> [/CODE]
Костыль, потому что если заказчик изменит правила округления, то они не подействуют после обмена, мне нужно будет править этот код. К тому же типов цен много - геморрой не нужный в общем.
Что на это могут ответить разработчики? Мб модуль обмена не достаточно хорошо в 1С ?
Пока проблему округления решил (спасибо ТП) , но через костыль...
[CODE=/bitrix/php_interface/init.php]
<?
AddEventHandler("catalog", "OnBeforePriceAdd", "MyRoundPrices");
AddEventHandler("catalog", "OnBeforePriceUpdate", "MyRoundPrices");
function MyRoundPrices(&$arFields)
{
if ($arFields['CATALOG_GROUP_ID'] == 8) {
$arFields['PRICE'] = ceil($arFields['PRICE']/5)*5;
}
}
?> [/CODE]
Костыль, потому что если заказчик изменит правила округления, то они не подействуют после обмена, мне нужно будет править этот код. К тому же типов цен много - геморрой не нужный в общем.
Что на это могут ответить разработчики? Мб модуль обмена не достаточно хорошо в 1С ?
«just for fun» © Linus Torvalds