Как исправить ошибки пробития маркированной продукции в 1С:Розница

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

Проблема, при которой QR-код маркировки сканируется, номенклатура подбирается в чек, но пиктограмма марки не становится зеленой, является одной из самых распространенных при работе в 1С:Розница (редакции 2.3 и 3.0). Часто это сопровождается странными сообщениями системы: «Для товара должно быть указано кодов маркировки -1, а указано -4». Рассмотрим подробно причины возникновения таких ситуаций и разберем пошаговые алгоритмы их решения.

Причина 1: Некорректные данные в справочнике штрихкодов упаковок

Проанализируем механизм работы системы: при первом сканировании кода DataMatrix программа записывает данные о нем в справочник Штрихкоды упаковок и товаров. Если в момент записи произошел сбой (например, из-за настроек сканера или сетевой задержки в РИБ), реквизиты марки могут заполниться неверно. В частности, количество может установиться отличным от единицы, что блокирует дальнейшую продажу. Чтобы избежать подобных проблем на этапе подготовки, рекомендуется выполнить сопоставление марок табачной продукции с номенклатурой заранее.

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

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

После удаления «косячной» записи при следующем сканировании в РМК система заново распознает код и создаст корректную запись, что позволит пробить товар.

Причина 2: Проблема лидирующих нулей в GTIN

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

Например, для позиции сигарет штрихкод может быть записан в нескольких вариантах: 46405063, 046405063, 00046405063. Когда сканер считывает марку, 1С пытается сопоставить GTIN (который обычно дополнен нулями до 14 знаков) с этими записями. Если находится несколько подходящих вариантов, алгоритм подбора «зависает», и марка не привязывается к строке чека.

Рассмотрим порядок исправления:

  1. Откроем карточку номенклатуры и перейдем в список штрихкодов.
  2. Проверим наличие дублей одного и того же кода с разным количеством лидирующих нулей.
  3. Оставим только одну корректную запись (обычно 13-значный EAN-13).
  4. Удалим лишние записи и попробуем повторить продажу.

Причина 3: Программная ошибка ContextCall (КонтекстВызова)

В современных релизах 1С:Розница (например, 2.3.18.23) пользователи часто сталкиваются с критической ошибкой: Значение не является значением объектного типа (КонтекстВызова). Это происходит в модуле Обработка.РабочееМестоКассира.Форма.ФормаРМК.

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

Посмотрим на пример кода, который вызывает сбой:


ИначеЕсли ВременныйКонтекстПроверкиМарки.КонтекстВызова = "ПроверитьКодыМаркировкиПриПродолженииЧека" Тогда
    // Здесь происходит падение, если КонтекстВызова не определен
КонецЕсли;

Решение данной проблемы заключается в следующем:

  1. Установка патчей: Фирма 1С оперативно выпускает исправления для таких ошибок. Проверьте наличие патчей (например, EF_00_00625238 и аналогичных) в разделе «Обслуживание» — «Обновление программы».
  2. Режим работы сканера: Если сканер работает в режиме клавиатуры, это может провоцировать подобные сбои. Рекомендуем перевести сканер в режим Native API (COM-порт). Это обеспечит передачу данных в систему единым событием, что значительно стабильнее для алгоритмов РМК.

Причина 4: Специфика ФФД 1.2 и настройки проверки

Если ваше предприятие работает на ФФД 1.2, касса обязана самостоятельно проверять код маркировки в системе «Честный знак» перед пробитием чека. Для стабильной связи важно исключить человеческий фактор, внедрив автоматическое обновление токенов Честного Знака. Если в настройках РМК включена опция «Проверка марки средствами ККТ», но ответа от сервера ИСМ нет, пиктограмма не станет зеленой. Также владельцы магазинов часто сталкиваются со специфической проблемой, требующей исправления ошибки «Принадлежит другой организации» при продаже молочной продукции.

Рассмотрим, как настроить систему для минимизации таких случаев:

  1. Зайдем в Администрирование — Интеграция с ИС МП.
  2. Проверим настройки проверки кодов маркировки. Если связь с сервером часто обрывается, можно временно установить настройку «Проверять только по локальной базе», однако это допустимо не во всех случаях согласно законодательству.
  3. Проверим срок действия фискального накопителя и наличие неотправленных документов в ОФД. Если ФН переполнен уведомлениями о реализации маркированного товара, касса может блокировать новые проверки.

Причина 5: Несоответствие МРЦ для табачной продукции

Для табака существует понятие Максимальной розничной цены (МРЦ), которая зашита в сам код DataMatrix. Если цена в вашей карточке номенклатуры отличается от той, что указана в марке, 1С может блокировать подбор. В крайних случаях, если код поврежден, кассиры используют решение для продажи маркированного товара без марки в РМК.

Выясним, как это исправить:

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

Итоговый алгоритм действий при возникновении ошибки

Если вы столкнулись с проблемой «незеленеющей» марки, рекомендуем действовать по следующему плану:

  1. Очистка кэша: Удалите строку из чека и попробуйте отсканировать ее заново.
  2. Проверка через форму «Марки»: На нижней панели РМК нажмите кнопку МАРКИ и попробуйте отсканировать код непосредственно в открывшуюся форму подбора табачной продукции.
  3. Удаление записей: Если конкретная пачка «зависла», удалите информацию о ней из справочника Штрихкоды упаковок и товаров. Для массовой сверки остатков удобно использовать запрос списка кодов маркировки по заданным фильтрам.
  4. Обновление: Убедитесь, что установлены все последние патчи для вашего релиза 1С:Розница.

Используя данные методы, мы сможем восстановить работоспособность РМК и обеспечить бесперебойную продажу маркированных товаров.

← На главную