К статье
Практический материал

Учет и Финансы · 8 мин

Как в 1С сделать округление без копеек

Способы округления сумм до целых рублей в 1С: настройка точности в конфигурации, функции Окр(), валюты, цены в документах и типичные ошибки при округлении.

Копейки в ценах и суммах документов часто мешают: контрагенты просят счета в целых рублях, розничные цены должны выглядеть «кругло», а при расчётах возникают расхождения в копейках между 1С и платёжными системами. В 1С округление без копеек можно настроить несколькими способами — от глобальных параметров валюты до точечного округления в формулах и коде.

Выбор способа зависит от задачи: нужно ли округлять только отображение, только цены номенклатуры, итоговые суммы документов или все денежные значения в базе. Неправильно выбранный метод приводит к расхождениям в отчётности, поэтому перед изменениями важно понимать, где именно в конфигурации возникает «лишняя» точность.

Откуда в 1С берутся копейки

Копейки появляются из-за того, что денежные реквизиты в типовых конфигурациях хранят два знака после запятой, а цены и курсы — до четырёх. При умножении количества на цену, применении скидки, расчёте НДС или пересчёте валютных сумм результат почти всегда получается дробным и округляется до копеек по стандартным правилам.

Важно различать три уровня, где «живут» копейки: хранение данных (точность реквизита в конфигурации), отображение (формат вывода в формах и отчётах) и расчётные формулы (округление в момент вычисления). Менять нужно именно тот уровень, на котором возникает проблема, иначе можно получить красивые цифры на экране и расхождения в проводках.

Округление через настройку валюты

Самый простой способ убрать копейки во всех документах сразу — изменить точность основной валюты учёта. В типовых конфигурациях (Управление торговлей, ERP, Комплексная автоматизация) откройте раздел «Администрирование» → «Общие настройки» → «Валюты» и для рубля установите точность 0 вместо 2.

После этого суммы в документах, отчётах и печатных формах будут отображаться и рассчитываться в целых рублях. Учтите: настройка влияет на всю систему, включая уже вводимые документы, поэтому перед изменением сделайте резервную копию и проверьте, как округление отразится на регламентированной отчётности и обменах с банком.

Округление цен в видах цен и прайсах

Если копейки нужно убрать только из цен номенклатуры, используйте настройки видов цен. В карточке вида цен (раздел «Ценообразование» или «CRM и маркетинг» в зависимости от конфигурации) есть параметры точности и порядок округления: «Округлять до» и «Правило округления» (арифметически, всегда вверх, всегда вниз).

Установите округление до 1 рубля — и при расчёте цен по формулам, наценкам и загрузке из файлов цены будут автоматически округляться до целых. Для уже рассчитанных цен выполните пересчёт через обработку «Формирование цен» или «Установка цен номенклатуры» с пересчётом по виду цен.

Дополнительно в некоторых конфигурациях доступно «психологическое округление» — например, до 9 рублей или до красивых значений. Это удобно для розницы: цена 999 вместо 1003,17 формируется автоматически без ручной правки каждой позиции.

Порядок настройки округления цен
  1. 1
    Откройте карточку нужного вида цен в разделе ценообразования
  2. 2
    Установите параметр «Округлять до» равным 1 и выберите правило округления
  3. 3
    Сохраните вид цен и запустите пересчёт цен номенклатуры
  4. 4
    Проверьте несколько позиций: цены должны быть целыми, без копеек

Округление сумм в документах

Даже при целых ценах копейки могут появиться в итогах из-за скидок в процентах и расчёта НДС. В ряде конфигураций в документах продажи есть настройка округления суммы документа — ищите флажок «Округлять сумму документа» или аналогичный параметр в настройках учётной политики и параметров учёта.

Если типового механизма нет, копейки убирают корректировкой: либо округлением скидки так, чтобы итог стал целым, либо добавлением строки корректировки. В розничных продажах (РМК) часто включают «округление чека» — разница списывается на отдельную статью доходов или расходов, чтобы итог чека был круглым.

При обменах с онлайн-кассой и платёжными агрегаторами следите, чтобы сумма в 1С после округления совпадала с фактически оплаченной. Расхождение даже в одну копейку может заблокировать закрытие чека или сверку эквайринга.

Сравнение вариантов

Точность валюты

Убирает копейки во всей системе. Подходит для новых баз; рискованно в базе с историей

Округление в виде цен

Влияет только на цены номенклатуры. Безопасно, но не решает копейки от скидок и НДС

Округление в документе

Точечное решение для итогов продаж. Требует контроля списания разницы

Программное Окр()

Гибко для доработок и обменов, но требует изменения кода и тестирования

Программное округление функцией Окр()

Во встроенном языке 1С округление до целых рублей выполняется функцией Окр(). Первый параметр — число, второй — разрядность: Окр(Сумма, 0) вернёт целое число рублей. Можно добавить третий параметр — режим округления: РежимОкругления.Окр15как10 (банковское округление) или Окр15как20 (обычное арифметическое).

Пример типичного применения — округление итога документа в модуле объекта:

ИтогСНДС = Окр(СуммаБезНДС * 1.2, 0, РежимОкругления.Окр15как20);

Для запросов используется конструкция ВЫРАЗИТЬ(Сумма КАК ЧИСЛО(15, 0)) — она приводит значение к целым рублям прямо в выборке, что удобно для отчётов и печатных форм без изменения данных в базе.

bsl
// Округление до целых рублей
ЦелаяСумма = Окр(ИсходнаяСумма, 0);
// В запросе: ВЫРАЗИТЬ(Сумма КАК ЧИСЛО(15, 0))

Округление только отображения через формат

Если данные должны храниться с копейками (например, для регламентированного учёта), а показывать нужно целые рубли, используйте форматную строку. В свойствах поля формы или в коде: Формат(Сумма, "ЧДЦ=0") — число выведется без дробной части, при этом в базе останется исходное значение.

Этот способ безопасен для отчётов и печатных форм, но помните: пользователь видит округлённое значение, а итоги могут «не сходиться» при сложении видимых цифр. Для внутренних управленческих отчётов это обычно допустимо, для расчётов с контрагентами — нет.

Контрольные точки

Как проверить результат

Суммы в новых документах
Норма

Все суммы целые, итог совпадает с суммой строк

Тревожный признак

Итог отличается от суммы строк на копейки

Печатная форма счёта
Норма

Цены и итоги без дробной части

Тревожный признак

Копейки видны в отдельных колонках

Отчёт по продажам
Норма

Итоги сходятся с документами

Тревожный признак

Расхождения между отчётом и документами

Типичные ошибки и ограничения

Главная ошибка — округлять каждую строку документа отдельно, а потом удивляться, что итог не сходится с суммой строк. Правильнее округлять либо цены до расчёта строк, либо только итог документа с явным списанием разницы.

Вторая частая проблема — смешение режимов округления в разных местах: в одном отчёте арифметическое, в другом вверх. Итоги по одной базе начинают различаться. Зафиксируйте единое правило округления в учётной политике или регламенте и придерживайтесь его во всех доработках.

Наконец, помните про регламентированную отчётность: налоговые декларации и платёжки имеют собственные правила округления, установленные законодательно. Не переопределяйте их произвольно — используйте типовые механизмы конфигурации.

Типичные ошибки
01
Округление каждой строки документа — итог перестаёт сходиться с суммой строк
02
Изменение точности валюты в рабочей базе без копии — расхождения в старых данных
03
Разные правила округления в разных отчётах — нестыковка показателей
04
Округление только отображения при расчётах с контрагентами — претензии по копейкам

Частые вопросы

Можно ли убрать копейки только в печатной форме счёта?

Да. В макете печатной формы задайте форматную строку с ЧДЦ=0 для суммовых полей или округлите значения функцией Окр() при заполнении параметров макета. Данные в документе при этом не изменятся.

Что делать с копейками в уже проведённых документах?

Старые документы автоматически не пересчитаются. Либо оставьте их как есть (исторические данные), либо выполните перепроведение после настройки округления на тестовой копии и оцените разницу в отчётах.

Как округлять всегда в большую сторону?

Используйте конструкцию вида Цел(Сумма) + ?(Сумма > Цел(Сумма), 1, 0) или в видах цен выберите правило округления «всегда в пользу предприятия», если оно доступно в вашей конфигурации.

Повлияет ли округление на выгрузку в банк и кассу?

Да, если суммы в 1С и в платёжных документах различаются, сверка эквайринга и закрытие кассовой смены могут выдавать расхождения. Настраивайте округление так, чтобы итог документа совпадал с фактической суммой оплаты.

Как убрать копейки в отчёте на СКД без изменения данных?

В настройках СКД для числового поля задайте формат с нулевой точностью (ЧДЦ=0) на закладке «Наборы данных» или в пользовательских настройках оформления поля. Значения в базе останутся с копейками.

Итог

Что важно запомнить

Округление без копеек в 1С делается на четырёх уровнях: точность валюты, округление в видах цен, округление итогов документов и программная функция Окр(). Для отображения без изменения данных используйте формат ЧДЦ=0. Любые изменения в рабочей базе сначала проверяйте на копии.