Как ограничить максимальную сумму чека в 1С:Розница и РМК?

Программист 1С v8.3 (Управляемые формы) 1С:Розница Управленческий учет Торговля и дистрибуция
← На главную

При работе кассиров в Рабочем месте кассира (РМК) нередко возникают ситуации, когда из-за опечатки или ошибки ввода сканером пробивается чек на слишком большую сумму. Например, штрихкод случайно попадает в поле «Количество» или кассир ошибается при ручном вводе. Кроме того, лимит суммы чека актуален при расчетах наличными деньгами (ограничение законодательства 100 000 рублей по одному договору между юридическими лицами и ИП).

Рассмотрим, как реализовать ограничение максимальной суммы чека в 1С:Розница 2.2 и актуальных версиях программы программными и штатными средствами.

Программное решение: Ограничение суммы через расширение конфигурации

Чтобы не снимать типовую конфигурацию с поддержки (что особенно важно для обеспечения простоты обновлений), лучшим решением является использование механизмов расширения конфигурации (CFE). Мы перехватываем событие записи документа ЧекККМ и проверяем итоговую сумму операции перед ее выполнением.

Разберем по шагам алгоритм создания доработки:

  1. Создадим новое расширение конфигурации в режиме Конфигуратор.
  2. Добавим в расширение документ ЧекККМ и его модуль объекта.
  3. В модуле объекта документа ЧекККМ создадим аннотируемую процедуру-обработчик для события ПередЗаписью с аннотацией &Перед.
  4. Напишем проверку: если итоговая сумма чека превышает заданный порог, установим флаг Отказ = Истина и выведем сообщение для кассира.

Проанализируем пример кода для модуля объекта документа ЧекККМ в расширении:


&Перед("ПередЗаписью")
Процедура Расш1_ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
	
	// Устанавливаем максимальный порог суммы чека в рублях
	МаксимальнаяСуммаЧека = 10000;
	
	// Проверяем итоговую сумму документа
	Если ЭтотОбъект.СуммаДокумента > МаксимальнаяСуммаЧека Тогда
		Отказ = Истина;
		Общего НазначенияКлиентСервер.СообщитьПользователю(
			СтрШаблон("Превышен лимит суммы чека! Максимально допустимая сумма: %1 руб.", МаксимальнаяСуммаЧека)
		);
	КонецЕсли;
	
КонецПроцедуры

Важный нюанс при эквайринге: Если в торговой точке используются эквайринговые терминалы с автоматической отправкой суммы, проверку суммы нужно выполнять еще до вызова команды эквайрингового терминала. Если выполнять проверку только в момент проведения документа, денежные средства с карты покупателя могут списаться до того, как 1С заблокирует запись чека.

Важно помнить: расширения конфигурации доступны в версиях PROF и CORP. В Базовых версиях 1С применения расширений с кодом логики ограничено платформой.

Организационные и штатные методы контроля в 1С:Розница 2.2

Часто проблема слишком больших сумм чеков кроется не в необходимости запретить продажу дорогих товаров, а в человеческом факторе. Для предотвращения ошибок кассира в 1С:Розница 2.2 рекомендуется настроить дополнительные права пользователя:

  1. Запрет ручного ввода цены: Отключите кассирам право на изменение цен номенклатуры в РМК. Если товар стоит 100 рублей, кассир не сможет вручную указать цену 100 000 рублей.
  2. Ограничение скидок: Установите максимальный процент ручной скидки, чтобы избежать некорректного формирования стоимости.
  3. Контроль остатков: Запретите пробивать товары, которых нет в наличии на складе (продажа «в минус»). Это предотвратит случайно введенные огромные количества по штрихкоду.
  4. Подтверждение администратора: Для нестандартных операций (отмена чека, ручная скидка, продажа превышающих лимиты товаров) настройте запрос авторизации старшего кассира или заведующего магазином.

Штатный контроль лимитов в 1С:РМК и 1С:Розница 3.0

В современных редакциях (1С:Розница 3.0, 1С:УНФ 3.0 и автономном модуле 1С:РМК) разработчики 1С добавили штатный механизм «Контроль продаж».

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

← На главную