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