Округление цен до целого, в большую или меньшую сторону.

Рейтинг: 8.4432  
Внедрено
Предложил Пользователь 224140 20.01.2014 21:47:17

Округление цен до целого, в большую или меньшую сторону.

В модуле КУРС ВАЛЮТ хотелось бы видеть функционал округления цен

Пример:
Выбор одного из правил округления

1) округление до целого - если цена по заданному курсу равна 24.6 то округлять до целого = 25
или
2) округление в большую сторону - если цена равна 24.3 то при округлении  в большую сторону = 25
или
3) округление в меньшую сторону - если цена равна 24.7 то при округлении  в меньшую сторону = 24

Объясню зачем: Сырье для производства мы заказываем за границей и расчет производим в долларах, готовые изделия мы продаем в гривне. Соответственно при изменении курса доллара меняется себестоимость товара. Для того что бы избежать ручного переписывания цен на товар в качестве базовой цены указывается стоимость единицы в долларах и с помощью курса валют выводится гривневая цена. При изменении курса валют цена в гривне может принимать дробные значения что очень не удобно.

Необходимый функционал при формировании цен в магазине, т.к. дробные числа не удобны в работе и расчетах.

Возможно этот функционал надо реализовывать не в модуле КУРС ВАЛЮТ, но он должен присутствовать при выводе цен на сайт в выбранной валюте.

Если кто то знает как это можно реализовать или есть реализация в функционале БИТРИКС буду очень признателен за совет. Т.к. в поиске ничего на эту тему не нашел.
Рейтинг: 0  
Ответил Жуков Евгений 19.08.2016 17:53:07
Связка sale 16.5.1, catalog 16.5.4, iblock 16.5.3

Рейтинг: 0  
Пользователь 109591 18.11.2014 19:33:35
Поддерживаю!!! Предлагаю также, сделать возможность влиять на округление при расчете скидок.
Очень часто заказчики придираются к копейкам, а просто их отрезать в шаблоне вывода, меня коробит от этого, расчет то в копейках, и повлиять на это нельзя.
Рейтинг: 0  
Пользователь 25773 19.11.2014 13:58:05
Предлагаю также, сделать возможность влиять на округление при расчете скидок.
Максим, обратите внимание на модуль Округление скидок. Там кроме обычного округления есть еще психологическое округление, например, чтобы все цены заканчивались на ..9 или ..95.
Рейтинг: 0  
Пользователь 65885 10.12.2015 15:03:34
В идеале хотелось бы увидеть настраиваемое округление цен (скидок) для каждой валюты, с точностью ДО т.е. при цене на товар после скидки в 1% выводить не 1`000`003.10 руб. а иметь возможность настраивать округление до 1`000`000 или 1`000`100

Пока пользуюсь событиями добавления товара в корзину и программным выводом цен

AddEventHandler("sale",   "OnBeforeBasketUpdate",   "recalcBasket");
AddEventHandler("sale",   "OnBeforeBasketAdd",   "recalcBasketAdd"); 
function   recalcBasket($ID,   &$arFiels)   {
      $arFiels["PRICE"]   =   intval($arFiels["PRICE"]);
      $arFiels["DISCOUNT_PRICE"]   =   $arFiels["BASE_PRICE"]   -   $arFiels["PRICE"];
}

function   recalcBasketAdd(&$arFiels)   {
      $arFiels["PRICE"]   =   intval($arFiels["PRICE"]);
      $arFiels["DISCOUNT_PRICE"]   =   $arFiels["BASE_PRICE"]   -   $arFiels["PRICE"];
}