Округление итоговой суммы чека до целого рубля — частое требование бизнеса, однако в Управлении торговлей 11 этот процесс может вызывать вопросы, особенно при использовании различных видов скидок. Рассмотрим, почему могут возникать ошибки округления и как добиться стабильной работы системы.
В УТ 11 округление реализовано не как отдельная настройка «в одно нажатие», а как специализированный вид Скидка (наценка). Система воспринимает округление как расчетное действие, выполняемое в определенной очередности. Если в документе присутствуют ручные скидки, автоматические акции или бонусные программы, порядок их применения становится критическим фактором.
Важно: Типовой алгоритм может игнорировать ручные скидки, если они внесены после того, как сработал механизм округления. Поэтому первое, что нужно сделать при возникновении «копеечных» расхождений — проверить приоритетность скидок в справочнике Скидки (наценки).
Округление.Магазину или Складу в карточке условий предоставления.Часто пользователи сталкиваются с тем, что округление требует нажатия кнопки Рассчитать скидки в РМК. Это связано с тем, что РМК ожидает финализации документа. Чтобы автоматизировать этот процесс, проанализируем настройки профиля группы доступа и параметры рабочего места кассира. Если после обновления конфигурации настройки сбросились, проверьте флаг автоматического пересчета при закрытии чека.
Если типового функционала недостаточно (например, система некорректно работает с многострочными чеками или сложными ручными скидками), единственным надежным выходом будет использование расширений конфигурации. Это позволит программно перехватить событие записи документа и принудительно выполнить процедуру округления.
Рассмотрим пример логики, которую можно реализовать в расширении для принудительного округления:
// Пример логики для расширения
Процедура ПриЗаписиДокументаОкругление(ДокументОбъект)
СуммаДокумента = ДокументОбъект.СуммаДокумента;
СуммаОкругленная = Окр(СуммаДокумента, 0, РежимОкругления.Окр15С20);
Разница = СуммаОкругленная - СуммаДокумента;
// Добавление корректировочной суммы в документ
Если Разница <> 0 Тогда
// Код для вставки корректировочной строки в табличную часть
КонецЕсли;
КонецПроцедуры
1С часто кэширует расчеты скидок в рамках одного сеанса кассира.сумму по строке, в то время как правило округления настроено на сумму документа целиком. Всегда сверяйте итоговую сумму в подвале документа.Скидки (наценки), так как логика их применения может быть изменена разработчиками 1С.Применяя данные рекомендации, вы сможете обеспечить корректный расчет итоговых сумм в ваших чеках. Если проблема сохраняется, рекомендуем сосредоточиться на реализации логики через расширение, так как это дает полный контроль над тем, как и когда именно выполняется математическое округление документа.