Как решить проблему с проверкой марок ЕГАИС при работе двух организаций на одном РМК в 1С:Розница 2.3?

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

При автоматизации розничной торговли алкоголем часто применяется схема, когда на одном рабочем месте кассира (РМК) ведется торговля от имени двух организаций. Типичный пример: индивидуальный предприниматель (ИП) продает слабоалкогольную продукцию (пиво), а общество с ограниченной ответственностью (ООО) реализует крепкий алкоголь. Обе организации используют свои ключи ЕГАИС, которые физически могут находиться на разных компьютерах в локальной сети.

В конфигурации 1С:Розница 2.3 пользователи часто сталкиваются с неприятной ошибкой: при сканировании акцизной марки крепкого алкоголя система выдает ошибку о несоответствии статуса марки («Нет статуса» или «Невозможно добавить товар»), хотя в регистре сведений Акцизные марки ЕГАИС данная марка присутствует и имеет легальный статус «В наличии». Если временно отключить «пивную» организацию из настроек, товар начинает пробиваться корректно. Ниже мы детально разберем причины этой проблемы и рассмотрим практические способы ее решения.

Выясняем причину проблемы

Проанализируем программную логику работы нового интерфейса РМК в типовой конфигурации. При сканировании штрихкода акцизной марки программа должна выполнить онлайн-проверку ее статуса. Для этого системе требуется отправить запрос к УТМ, указав конкретную организацию ЕГАИС.

В момент сканирования срабатывает код проверки марок, который обращается к общему модулю ШтрихкодированиеЕгаис (в частности, к процедуре ПроверитьМаркуПоСтатусу). Поведение системы в этот момент содержит критическую ошибку распределения:

Пошаговая диагностика проблемы

Для того чтобы убедиться, что ваша база ведет себя именно так, выполним простой тест:

  1. Перейдем в настройки текущего рабочего места кассира (РМК).
  2. Временно изменим основную организацию (или ККМ по умолчанию) на ту, которая отвечает за торговлю крепким алкоголем (в нашем примере — ООО).
  3. Попробуем снова отсканировать марку крепкого алкоголя.

Если после смены настроек марка успешно добавилась в чек — диагноз подтвержден. Программа игнорирует таблицу распределения продаж при первичной онлайн-проверке марки. Обратите внимание, что оставлять настройки в таком виде нельзя: теперь весь немаркированный товар и пиво система попытается пробить по алкогольной организации ООО.


Способ 1. Программное исправление через расширение (Рекомендуемый способ)

Некоторые администраторы решают проблему радикально — комментированием вызова процедуры ПроверитьМаркуПоСтатусу в общем модуле ШтрихкодированиеЕгаис. Мы настоятельно не рекомендуем так поступать, поскольку это полностью отключает контроль статусов марок на кассе, что может привести к продаже дублей или продукции, не стоящей на балансе, и повлечь крупные штрафы со стороны регулирующих органов.

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

Рассмотрим пример программного кода, который можно внедрить в расширение для правильного получения организации по распределению продаж:


Функция ПолучитьОрганизациюПоРаспределению(ВыбраннаяНоменклатура) Экспорт
    
    ОрганизацияПоРаспределению = Справочники.Организации.ПустаяСсылка();
    
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1
        |	Распределение.Организация КАК Организация
        |ИЗ
        |	РегистрСведений.РаспределениеПродажУслуг КАК Распределение
        |ГДЕ
        |	Распределение.Номенклатура = &Номенклатура";
        
    Запрос.УстановитьПараметр("Номенклатура", ВыбраннаяНоменклатура);
    РезультатЗапроса = Запрос.Выполнить();
    
    Если Не РезультатЗапроса.Пустой() Тогда
        Выборка = РезультатЗапроса.Выбрать();
        Выборка.Следующий();
        ОрганизацияПоРаспределению = Выборка.Организация;
    КонецЕсли;
    
    Возврат ОрганизацияПоРаспределению;
    
КонецФункции

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


Способ 2. Использование классического (старого) интерфейса РМК

Если у вас нет штатного программиста для оперативной разработки расширения, проанализируем альтернативные варианты. Описанная ошибка в определении организации ЕГАИС по умолчанию наиболее часто воспроизводится именно в новом управляемом интерфейсе РМК, который активно продвигается в последних версиях Розницы 2.3.

Выполним переход на классический интерфейс РМК:

  1. Откроем настройки раздела Продажи.
  2. Перейдем в пункт Настройки РМК.
  3. Отключим использование нового интерфейса кассира, вернувшись к классической форме РМК.
  4. Перезапустим сеанс работы кассира и проверим сканирование акцизных марок.

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


Способ 3. Официальные патчи и обновления

Фирма 1С знает о наличии коллизий при работе с несколькими УТМ и организациями ЕГАИС на одном рабочем месте. Периодически выпускаются специализированные исправления (патчи). Например, частично данную проблему пытались решить в патче EF_00_00324655, однако, как показывает практика, на некоторых релизах ветки 2.3.20.х он оказывается неэффективным.

При возникновении подобной ситуации рекомендуем действовать по следующему алгоритму:

  1. Проверьте наличие и установите все актуальные патчи для вашего релиза конфигурации через встроенный сервис Администрирование -> Обслуживание -> Обновление программы -> Установка обновлений и патчей.
  2. Если обновление до последнего релиза и установка патчей не принесли результата, подготовьте официальное обращение на линию технической поддержки 1С.
  3. В обращении обязательно укажите:
    • Релиз платформы и конфигурации 1С:Розница.
    • Схему работы (одна база, одно РМК, две организации с распределением продаж, ключи на разных ПК).
    • Пошаговое описание проблемы: при сканировании марки берется дефолтная организация вместо распределенной, что приводит к ошибке статуса.
← На главную