При работе в интерфейсе РМК (Рабочее место кассира), особенно после обновления конфигураций 1С:Розница (с версии 2.2 на 2.3) или 1С:Управление торговлей, пользователи часто сталкиваются с критической ошибкой при попытке добавить маркированный алкоголь в чек. Система выдает сообщение: «Невозможно добавить алкогольную продукцию по причине: Статус: Нет статуса». Проанализируем причины этого сбоя и разберем по шагам все способы решения проблемы.
С точки зрения программного кода, эта ошибка означает, что система при сканировании акцизной марки пытается найти информацию о ней в регистре сведений АкцизныеМаркиЕГАИС, но получает пустой результат (NULL). Программа «не видит» запись о марке не потому, что ее нет в базе, а потому, что поиск осуществляется с неверными фильтрами (например, по другой организации или складу) или нарушена связь между маркой и номенклатурой.
Рассмотрим подробнее основные сценарии исправления ситуации.
Чаще всего ошибка возникает в базах, где ведется учет по нескольким организациям (например, ООО для крепкого алкоголя и ИП для пива). Проанализируем настройки распределения:
ЧекККМ в момент сканирования. Если марка числится на ООО «Алкоголь», а РМК по умолчанию пытается создать чек на ИП Иванов, система выдаст «Нет статуса».Кассу ККМ и Рабочее место в настройках подключаемого оборудования. Иногда помогает создание нового рабочего места кассира.Если ошибка носит массовый характер для определенных позиций, необходимо проверить карточку товара. Разберем порядок действий:
В справочнике Номенклатура откроем проблемную позицию. Проверим реквизит Вид номенклатуры. Важно, чтобы в настройках вида был установлен тип Алкогольная (спиртосодержащая) продукция.
Если настройки верны, но ошибка сохраняется, воспользуемся следующим приемом:
Вид номенклатуры. На вопрос системы «Заполнить значения по умолчанию?» ответим Да.Это «сердце» маркировки в новых версиях 1С. Если связь между маркой и товаром в этом справочнике разорвана или задвоена, РМК не сможет определить статус. Рассмотрим, как это исправить:
Номенклатура. Если оно пустое, связь необходимо восстановить. Также рекомендуется провести полную инвентаризацию акцизных марок, чтобы сопоставить данные с системой Честный ЗНАК — для этого подойдёт обработка для инвентаризации акцизных марок в ЕГАИС.Тип упаковки. Для крепкого алкоголя часто помогает смена значения с Монотоварная упаковка на Маркированный товар.Проанализируем настройки интеграции. Иногда «слетает» привязка торгового объекта к организации ЕГАИС:
Соответствует была выбрана Собственная организация (а не контрагент), и был корректно заполнен Торговый объект (магазин/склад). Для контроля точности данных полезно выполнить сверку остатков в ЕГАИС — поможет автоматизация обмена с ЕГАИС и учета марок.Как ни странно, в некоторых релизах 1С:Розница 2.3.8 и выше наблюдается конфликт подсистем маркировки. Если ничего не помогает, попробуем следующий алгоритм:
Если проблема касается всего нескольких бутылок, можно попробовать «встряхнуть» записи в регистре:
Откроем Регистр сведений — Акцизные марки ЕГАИС. Найдем нужную марку и вручную поменяем статус с В наличии на Отсутствует, запишем, а затем вернем обратно статус В наличии. Это заставляет систему пересчитать индексы и связи для данной позиции. В случаях, когда марки отсутствуют в базе, может помочь помощник создания марок ЕГАИС из остатков на 3-м регистре.
Если ошибка появилась внезапно после обновления платформы или аварийного завершения работы, выполним стандартные процедуры восстановления:
chdbfl.exe (для файловых баз) для исправления физических повреждений таблиц.Выясним режим работы сканера штрихкодов. Если сканер подключен в режиме эмуляции клавиатуры (USB-HID), при передаче длинных последовательностей акцизных марок могут теряться символы. Рекомендуется перевести сканер в режим USB-RS232 (эмуляция COM-порта). При необходимости восстановить поврежденную этикетку или проверить КИЗ перед печатью, можно использовать дубликатор кодов маркировки DataMatrix, который автоматически проверяет статус в Честном Знаке.
Пример программной проверки статуса марки (для разработчиков):
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| АкцизныеМаркиЕГАИС.Статус
|ИЗ
| РегистрСведений.АкцизныеМаркиЕГАИС КАК АкцизныеМаркиЕГАИС
|ГДЕ
| АкцизныеМаркиЕГАИС.АкцизнаяМарка = &АкцизнаяМарка";
Запрос.УстановитьПараметр("АкцизнаяМарка", СсылкаНаМарку);
Результат = Запрос.Выполнить();
Если Результат.Пустой() Тогда
Сообщить("Запись в регистре не найдена — причина ошибки 'Нет статуса'");
КонецЕсли;
Следование этим инструкциям позволит поэтапно исключить все возможные причины возникновения ошибки и восстановить нормальную работу торговой точки.