Определяет режим округления.
Полное описание, параметры и ограничения
РежимОкругления (RoundMode)
РежимОкругления (RoundMode)
Доступен, начиная с версии 8.0.
Значения
Окр15как10 (Round15as10)
Окр15как20 (Round15as20)
Описание:
Определяет режим округления.
Доступность:
Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение (клиент), мобильное приложение (сервер), мобильный автономный сервер.
Возможен обмен с сервером.
См. также:
Глобальный контекст, метод Окр
Использование в версии:
Доступен, начиная с версии 8.0.
Методическая информация
Практические примеры
Сравнить округление единицы и итоговой суммы
На небольших числах показываем, почему округление в разном месте формулы даёт разные результаты.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
Все значения учебные и создаются в памяти; документы, регистры и рабочие данные не изменяются.
Выполняйте на сервере учебной базы. Представление десятичного разделителя в сообщениях зависит от локали.
ЗначениеЕдиницы = 0.335;
Количество = 3;
ПоЕдиницам = Окр(ЗначениеЕдиницы, 2, РежимОкругления.Окр15как20) * Количество;
ПоИтогу = Окр(ЗначениеЕдиницы * Количество, 2, РежимОкругления.Окр15как20);
Сообщить(ПоЕдиницам);
Сообщить(ПоИтогу);
Сообщить(ПоЕдиницам - ПоИтогу);
Сообщить(Окр(1.5, 0, РежимОкругления.Окр15как10));
Сообщить(Окр(1.5, 0, РежимОкругления.Окр15как20));
Сообщить(Окр(1254, -2));
Сообщить(Цел(3.9));
Сообщить(Цел(-3.9));Разбор по шагам
Первый вариант округляет 0.335 до двух знаков ещё до умножения.
Второй вариант сначала умножает и только затем округляет общий результат.
Оба раза явно выбираем режим Окр15как20; дополнительно сравниваем два режима на 1.5.
Отрицательная разрядность округляет целую часть, а Цел отбрасывает дробную часть и не является округлением до ближайшего целого.
Как проверить результат
По единицам 1.02, по итогу 1.01, разница 0.01.
Окр15как10 для 1.5 даёт 1, Окр15как20 — 2; округление 1254 до сотен даёт 1300.
Цел(3.9)=3 и Цел(-3.9)=-3.
Ожидаемый результат
Разница алгоритмов показана на конкретных числах и явных режимах округления.
На что обратить внимание
Пример не назначает правило расчёта для бухгалтерского документа: используйте согласованные правила вашей конфигурации и договора.
Округление цены, строки и итогов может быть различным; не меняйте порядок операций без проверки контрольных сумм.
Цел для отрицательного значения не равен математическому округлению вниз.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.