Почему в 1С:Розница 3.0 путаются цены МРЦ при продаже сигарет и как это исправить?

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

При работе с маркированным товаром, особенно с табачной продукцией, точность учета имеет критическое значение. Любое расхождение между ценой продажи и МРЦ (Максимальной Розничной Ценой), зашитой в коде маркировки (DataMatrix), приводит к ошибкам в системе «Честный Знак» (кстати, для стабильной работы обмена данными не забывайте про автоматическое обновление токенов Честного Знака). Одной из неочевидных проблем, с которой мы можем столкнуться при переходе на редакцию 1С:Розница 3.0 (или 1С:УНФ), является ситуация, когда при продаже двух пачек одинаковых сигарет, но из разных партий (с разной МРЦ), программа меняет их цены местами в фискальном чеке.

Давайте подробно разберем эту ситуацию, выясним причины такого поведения программы и рассмотрим пошаговые методы устранения ошибки.

Симптомы проблемы

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

  1. Кассир работает в РМК (Рабочее место кассира).
  2. Покупатель приносит две пачки сигарет одного наименования (одна карточка номенклатуры), но из разных поступлений. Например, старая партия с МРЦ 159 рублей и новая партия с МРЦ 169 рублей.
  3. Кассир сканирует первую пачку (код DataMatrix). На экране отображается товар с ценой 159 руб.
  4. Кассир сканирует вторую пачку. На экране добавляется строка (или увеличивается количество) с ценой 169 руб.
  5. Общая сумма чека верная: 159 + 169 = 328 рублей.
  6. При печати чека и отправке данных в ОФД происходит подмена: пачка, которая должна стоить 159 руб., пробивается по цене 169 руб., и наоборот (подобные расхождения иногда помогает выявить анализ цен продажи и цен номенклатуры).

В результате сумма чека сходится, покупатель не имеет претензий, но в личном кабинете «Честного Знака» начинают копиться ошибки: «Цена реализации отличается от МРЦ». Это происходит потому, что конкретный код маркировки (уникальный идентификатор пачки) ушел в ОФД с привязкой к цене соседней пачки. Если таких ошибок накопилось много, может потребоваться запрос остатков из системы «Честный знак» для выравнивания учета.

Анализ причин возникновения ошибки

Чтобы понять, как исправить ошибку, разберем механику процесса. Конфигурация 1С:Розница 3.0 построена на базе 1С:УНФ и имеет отличающиеся от редакции 2.3 механизмы работы с торговым оборудованием и формирования чека.

Главная причина кроется в механизме свертки (группировки) строк в чеке. Когда мы добавляем товары в табличную часть, система для удобства визуального восприятия может пытаться сгруппировать одинаковые номенклатурные позиции. Однако для маркированного товара каждая единица уникальна благодаря коду маркировки.

При формировании пакета данных для фискального регистратора (ККТ) программа передает массив товарных позиций. Если в настройках включена свертка строк, может произойти рассинхронизация списков: список кодов маркировки и список цен могут быть отсортированы по-разному или привязаны некорректно в момент разбивки сгруппированной строки обратно на единичные позиции перед печатью.

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

Решение 1: Отключение свертки строк в РМК (Основной метод)

Самый надежный способ устранить путаницу — это принудительно запретить программе объединять строки в чеке. Это заставит 1С обрабатывать каждую пачку сигарет как отдельную, независимую сущность с жесткой связкой «Код маркировки — Цена».

Рассмотрим, как это сделать в настройках программы:

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

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

Решение 2: Настройка драйвера ККТ

Иногда проблема кроется не только в 1С, но и в «интеллекте» самого кассового аппарата. В рассматриваемом случае используется ККТ ШТРИХ-М (для устаревших моделей которых может быть актуален драйвер миШтрих-М с эмуляцией ФФД 1.2), у которого в драйвере есть собственные настройки группировки — для решения этой задачи подойдёт драйвер ККТ Штрих-М с эмуляцией ФФД 1.2.

Давайте проверим настройки драйвера:

  1. Перейдем в раздел Администрирование -> Подключаемое оборудование.
  2. Выберем нашу ККТ и нажмем кнопку Параметры (или «Настроить»).
  3. В открывшемся окне драйвера нам нужно найти раздел, отвечающий за Таблицы или специфические параметры формирования чека.
  4. Ищем опции с названиями вроде «Объединение позиций», «Сжатие чека» или «Группировка товаров».
  5. Если такие опции включены — отключим их. Касса должна печатать ровно то, что ей присылает 1С, строка в строку, без самодеятельности.
  6. Сохраним настройки (обычно кнопка «Записать в ККТ» или «ОК»).

Это действие исключит ситуацию, когда 1С отправляет данные корректно (разными строками), а касса сама решает объединить их в одну строку с количеством "2", теряя привязку разных цен к разным маркам.

Решение 3: Правильный алгоритм сканирования

Важно проконтролировать, как именно кассиры добавляют товар в чек. В теме обсуждения упоминается, что цены берутся из DM-кода (DataMatrix). Это правильный подход, но давайте уточним детали.

Если кассир сначала сканирует линейный штрихкод (EAN-13), программа подбирает товар и устанавливает цену из прайс-листа (вида цен). Затем, при попытке сканирования марки для этой позиции, может возникнуть конфликт, если МРЦ в марке отличается от цены в прайсе. Чтобы избежать ручных проблем на этом этапе, можно заранее выполнить сканирование и сопоставление марок табачной продукции с позицией номенклатуры — для этого подойдёт рабочее место проверки и сопоставления кодов маркировки. В момент продажи нескольких пачек этот механизм «уточнения цены» может сработать некорректно.

Рекомендация: Настройте сканеры и обучите персонал сканировать только DataMatrix код (квадратный код на дне пачки). При этом:

  1. Программа автоматически определяет номенклатуру.
  2. Программа сразу извлекает МРЦ из кода маркировки.
  3. Цена устанавливается жестко для данной строки и не требует пересчета.

Это снижает вероятность программной ошибки при расчете итоговых сумм строк.

Решение 4: Временный обходной путь (Разделение чеков)

Если по каким-то причинам (например, отсутствие прав на настройку или ожидание специалиста) вы не можете применить вышеописанные решения немедленно, существует проверенный "рабочий" метод, который позволяет избежать штрафов от Честного Знака.

Суть метода проста: Одна партия (одна цена) — Один чек.

Рассмотрим алгоритм действий кассира в проблемной ситуации:

  1. Покупатель дает две пачки: одну за 159 руб., вторую за 169 руб.
  2. Кассир пробивает чек только на пачку за 159 руб. Закрывает чек.
  3. Кассир открывает новый чек и пробивает пачку за 169 руб.

В этом случае путанице просто негде возникнуть, так как в буфере драйвера ККТ находится только один маркированный товар. Да, это замедляет обслуживание и увеличивает расход чековой ленты, но гарантирует корректную передачу данных в ОФД до момента исправления настроек программы.

Дополнительная диагностика: Обновление компонент

Если отключение свертки строк и настройка драйвера не помогли, стоит обратить внимание на версию платформы и библиотек интеграции.

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

Резюме

Проблема перепутанных цен МРЦ в 1С:Розница 3.0 является технической особенностью обработки табличной части чека при взаимодействии с драйвером ККТ. Она не связана с ошибкой кассира или неисправностью сканера.

Для гарантированного решения проблемы выполните следующие действия:

  1. Запретите свертку строк в настройках РМК.
  2. Отключите объединение позиций в настройках драйвера кассы (Таблицы оборудования).
  3. Следите за тем, чтобы сканировался именно DataMatrix код.

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

← На главную