Как настроить запрет розничной продажи алкоголя в определенное время в «1С:Розница» и избежать штрафов?

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

Продажа алкогольной продукции строго регламентируется законодательством. Одним из ключевых требований является соблюдение временных рамок, в течение которых продажа алкоголя полностью запрещена. В этой статье мы подробно разберем, как правильно настроить ограничения на продажу алкоголя в программе «1С:Розница» версий 2.х и 3.0, проанализируем неочевидные технические нюансы, с которыми сталкиваются пользователи, и рассмотрим способы защиты от случайных или преднамеренных нарушений кассиров.

Почему стандартная настройка времени может не работать?

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

  1. Неправильно заданный интервал перехода через полночь. Если вы укажете в системе время действия запрета, например, с 22:00 до 09:00 одной строкой, программа не поймет это условие, так как время окончания меньше времени начала в рамках одних астрономических суток.
  2. Неактуальный сегмент номенклатуры. Ограничение накладывается не на всю базу товаров, а на определенный сегмент (например, «Алкогольная продукция»). Если новый товар был заведен в базу, но сегмент не обновился, система позволит его продать в любое время.
  3. Разрыв во времени между сканированием товара и пробитием чека. Товар может быть добавлен в чек за пару минут до начала действия запрета, а оплачен уже в запрещенное время. Стандартный алгоритм проверяет товар только при сканировании.

Рассмотрим пошагово, как правильно настроить систему, чтобы полностью исключить подобные риски.

---

Шаг 1. Включение опции запрета розничной продажи

Для начала нам необходимо активировать соответствующую функциональность в системе. Пройдем по следующему пути:

  1. Перейдем в раздел Администрирование, далее выберем пункт Маркетинг.
  2. В открывшемся окне найдем опцию «Использовать запрет розничной продажи» и установим напротив нее флаг (галочку).

Активация этой константы добавляет в справочник скидок и наценок новый тип предоставления скидки, который блокирует продажу позиций.

---

Шаг 2. Создание сегмента номенклатуры «Алкоголь»

Запрет не должен действовать на продукты питания или сопутствующие товары. Нам нужно четко определить список номенклатуры, на которую распространяется ограничение. Для этого мы создадим специальный сегмент:

  1. Перейдем в раздел Маркетинг -> Сегменты номенклатуры.
  2. Нажмем кнопку Создать. Укажем наименование, например, «Алкогольная продукция».
  3. В поле Способ формирования крайне важно выбрать правильный вариант:
    • Формировать динамически — состав сегмента вычисляется непосредственно в момент обращения. Этот способ надежен, но при больших объемах базы может замедлять работу кассы.
    • Периодически обновлять — оптимальный вариант по быстродействию. Однако он требует настройки регламентного задания. Рассмотрим подробнее, как его настроить ниже.
  4. Настроим правила отбора: добавим в отбор номенклатуру, у которой признак АлкогольнаяПродукция равен Истина, либо отфильтруем по соответствующим видам номенклатуры.

Важное предупреждение! Если вы выбрали способ «Периодически обновлять», обязательно проверьте работу регламентного задания ФормированиеСегментов. Настройте его расписание в разделе Администрирование -> Поддержка и обслуживание -> Регламентные и фоновые задания. Рекомендуется установить интервал запуска каждые 10–15 минут. Если этого не сделать, новые алкогольные позиции, созданные в базе, не будут попадать под запрет до тех пор, пока ответственный сотрудник не нажмет кнопку «Сформировать» вручную в карточке сегмента.

---

Шаг 3. Создание специальной скидки (запрета)

Теперь создадим правило, которое будет блокировать продажу товаров из нашего сегмента в неустановленное время. В терминологии «1С:Розница 2.х» эта блокировка реализуется через механизм скидок:

  1. Перейдем в Маркетинг -> Скидки (наценки).
  2. Создадим новый элемент и выберем способ предоставления: «Запретить розничную продажу».
  3. На вкладке Условия предоставления добавим новое условие с типом «За время продаж».
  4. Внимание! Правило настройки времени через полночь:

    Если алкоголь запрещено продавать с 22:00 до 09:00, нам необходимо создать две строки для каждого дня недели. Программа анализирует каждые сутки отдельно с 00:00:00 до 23:59:59. Настроим расписание следующим образом:

    • Строка 1: Понедельник с 22:00:00 по 23:59:59;
    • Строка 2: Понедельник с 00:00:00 по 09:00:00.

    Повторим эту процедуру для каждого дня недели, когда действует ограничение. Если вы укажете интервал «22:00 – 09:00» в одну строку, система просто проигнорирует это правило, и кассиры смогут продавать алкоголь ночью.

  5. На вкладке Уточнения по товарам укажем созданный нами на Шаге 2 сегмент номенклатуры «Алкогольная продукция».

---

Шаг 4. Активация запрета через «Маркетинговую акцию»

Сама по себе созданная скидка работать не начнет. Ее необходимо ввести в действие специальным документом:

  1. Перейдем в Маркетинг -> Маркетинговые акции.
  2. Создадим новый документ. Укажем период действия (например, с текущей даты и без ограничения срока окончания).
  3. В табличной части выберем магазины, в которых будет действовать это правило.
  4. В разделе правил продаж выберем созданную нами скидку «Запретить розничную продажу алкоголя».
  5. Установим статус документа «Действует» и проведем его.

---

Разбор уязвимостей стандартного механизма и методы их устранения

Проанализируем критическую ситуацию, описанную пользователями на форуме: «Товар отсканирован в 21:58, оплата по карте зависла, ЕГАИС зафиксировал продажу в 22:01. Как итог — выписан протокол о нарушении закона».

Почему это произошло? Дело в том, что в стандартной «1С:Розница 2.х» проверка на запрет продаж срабатывает исключительно в момент добавления позиции в чек (при сканировании штрихкода). В момент нажатия кнопки «Оплатить» или при отправке чека на фискальный регистратор повторная проверка времени не производится.

Это открывает лазейку для недобросовестных кассиров или покупателей: можно отсканировать пиво или водку в 21:55, «отложить» чек, а затем спокойно пробить его в 23:00.

Способ решения 1. Использование расширений конфигурации

Для устранения этой уязвимости программисты 1С разрабатывают и внедряют небольшие расширения конфигурации. Задача расширения — перехватить процедуру перед проведением или пробитием чека ККМ и выполнить дополнительную проверку текущего системного времени. Если в чеке присутствует номенклатура из алкогольного сегмента, а текущее время компьютера уже превысило допустимый порог (например, 22:00), система должна прервать транзакцию и выдать предупреждение. Для такой задачи подойдёт доработка стандартного запрета продажи алкоголя с поддержкой отложенных чеков в 1С:Розница.

Пример программной проверки, которую можно внедрить в модуль чека ККМ:


// Примерный фрагмент кода для проверки перед пробитием чека
ТекущееВремяКассы = ТекущаяДата();
ЧасПроверки = Час(ТекущееВремяКассы);

Если (ЧасПроверки >= 22 Или ЧасПроверки < 9) Тогда
    Для Каждого СтрокаТЧ Из Объект.Товары Цикл
        Если СтрокаТЧ.Номенклатура.АлкогольнаяПродукция Тогда
            ВызватьИсключение "Продажа алкоголя запрещена! Текущее время: " + Формат(ТекущееВремяКассы, "ДФ=ЧЧ:мм:сс");
        КонецЕсли;
    КонецЦикла;
КонецЕсли;

Способ решения 2. Техническая блокировка УТМ (Универсального транспортного модуля)

Если у вас нет возможности дорабатывать конфигурацию 1С, системные администраторы часто используют изящное системное решение — блокировку самого транспортного модуля ЕГАИС по расписанию.

Для этого на кассовом компьютере с помощью стандартного «Планировщика задач Windows» настраивается запуск двух простых скриптов:

  1. В 22:00 (или 21:59) запускается скрипт остановки службы УТМ:

    Для этого создается файл с расширением .bat следующего содержания:

    net stop transport

    При остановленной службе ЕГАИС программа физически не сможет отправить чек на проверку в государственную систему, и касса выдаст ошибку проведения чека с алкоголем.

  2. В 08:00 (или 09:00) запускается скрипт включения службы УТМ: net start transport

Этот метод гарантирует 100% защиту от любых попыток кассиров обойти программу, так как блокировка происходит на уровне системных служб операционной системы.

---

Как этот функционал реализован в современных версиях «1С:Розница 3.0» и «1С:УНФ 3.0»

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

Теперь в «1С:Розница 3.0» настройка выполняется напрямую через параметры рабочего места кассира (РМК):

  1. Перейдем в раздел Настройки -> Поддержка оборудования -> Настройки РМК.
  2. В открывшейся форме найдем специализированный подраздел «Запреты продаж».
  3. Здесь мы можем создать правило запрета напрямую. При создании правила система позволяет указать:
    • Конкретную организацию предприятия;
    • Категорию номенклатуры (или вид маркируемой продукции ИС, например, «крепкий алкоголь», «пиво»);
    • Дни недели и точное расписание.
  4. Обратите внимание! Правило разделения времени из-за перехода через полночь сохраняет свою актуальность и в редакции 3.0. Нам по-прежнему необходимо заносить интервалы двумя строками на стыке суток (с 22:00:00 до 23:59:59 и с 00:00:00 до 08:59:59).

Современный интерфейс стал гораздо дружелюбнее, и теперь владельцу торговой точки не нужно создавать фиктивные скидки и запускать маркетинговые акции, чтобы выполнить базовые требования законодательства. Для комплексной организации кассовой зоны подойдёт руководство по настройке торгового места на базе РМК в 1С:Розница 3.0 и 1С:УНФ 3.0.

Резюме и рекомендации

Подведем итоги нашей совместной настройки. Чтобы спать спокойно и не бояться проверок контролирующих органов, придерживайтесь следующих правил:

← На главную