← На главную
Всем привет! Сегодня мы с вами погрузимся в одну из актуальных и, к сожалению, достаточно частых проблем, с которой сталкиваются розничные магазины, работающие с маркированными товарами: длительную печать чеков. Представьте ситуацию: очередь в магазине, покупатель с одним стаканчиком йогурта, а касса "зависает" на 10-15 секунд при пробитии чека. Знакомая картина, не правда ли? Эта задержка не только раздражает клиентов, но и снижает общую эффективность работы торговой точки.
Основная причина таких пауз кроется во взаимодействии фискального регистратора (ФР) и учетной системы (часто это 1С:Управление торговлей) с государственной информационной системой маркировки товаров "Честный ЗНАК" (ЧЗ). При продаже маркированного товара, такого как молочная продукция или вода, система отправляет запросы для проверки статуса кода маркировки. Мы рассмотрим, почему это происходит и что можно сделать для сокращения пауз.
Понимание механизма задержки: Запросы в "Честный ЗНАК"
Когда мы пробиваем чек с маркированным товаром, происходит следующее:
- Кассир сканирует код маркировки товара.
- Информация о коде поступает в 1С и/или напрямую в фискальный регистратор.
- Фискальный регистратор (или 1С через API) отправляет запрос в "Честный ЗНАК" для проверки статуса кода. Этот запрос может быть на проверку действительности кода, его текущего состояния (не выведен ли он уже из оборота, не заблокирован ли).
- Система ожидает ответа от "Честного ЗНАКа".
- Только после получения ответа (или истечения таймаута) чек пробивается, а данные о выбытии товара отправляются в ОФД и ЧЗ.
Именно ожидание ответа от серверов "Честного ЗНАКа" зачастую и становится причиной длительных пауз. На стабильность и скорость этого взаимодействия могут влиять как внутренние настройки ФР и 1С, так и внешние факторы, такие как стабильность интернет-соединения и загруженность серверов ЧЗ.
Пользователь столкнулся с этой проблемой, используя УТ 11.5.12.147, платформу 8.3.23.1912 и ФР Атол FPrint22ПТК. Пиковые задержки в 10-15 секунд приводят к значительному замедлению обслуживания, особенно при продаже единичных товаров.
Диагностика и оптимизация работы с маркировкой
Для решения проблемы длительной печати чеков мы должны рассмотреть несколько направлений: настройки самого фискального регистратора, настройки в 1С, проверку сетевого окружения и понимание механизмов взаимодействия с "Честным ЗНАКом".
1. Проверка и настройка таймаутов в фискальном регистраторе
Первым делом мы обратим внимание на настройки фискального регистратора. В сообщениях темы упомянуто, что в ФР установлены таймауты по 1 секунде на запрос и ожидание без повторов. Это может быть как причиной проблемы, так и попыткой ее решения.
Мы выясним:
- Какие таймауты установлены для запросов к ИСМ (Информационная Система Маркировки). Если таймаут слишком короткий (например, 1 секунда), ФР может не успеть получить ответ от ЧЗ и, возможно, пробить чек с пометкой о том, что проверка не завершена или выполнена в автономном режиме (например, М+, как было обнаружено на чеках).
- Настроены ли повторные попытки запроса в ЧЗ. Отсутствие повторов может ускорять процесс в случае быстрого ответа, но при задержках на стороне ЧЗ это приводит к пробитию чека без подтверждения, что несёт определённые риски.
Наши действия:
-
Консультация с производителем ФР: Обратитесь к документации вашего АТОЛ FPrint22ПТК или к официальной поддержке АТОЛ, чтобы узнать рекомендуемые значения таймаутов для работы с маркировкой и ФФД 1.2.
-
Изменение таймаутов: Экспериментируйте с небольшим увеличением таймаутов. Например, установите таймаут ожидания ответа не 1, а 3-5 секунд. Но помните, что слишком долгий таймаут только усугубит проблему ожидания.
2. Настройка разрешительного режима
С 1 апреля 2024 года для некоторых групп товаров (сигареты, разливное пиво, а позже и другие категории) введён разрешительный режим продажи. Это означает, что продажа маркированного товара запрещена, если его код по данным ЧЗ уже выбыл из оборота, заблокирован или отсутствует в системе. Хотя для молочной продукции и воды разрешительный режим не является обязательным, понимание его работы и правильная настройка критически важны для общей производительности системы.
В ходе обсуждения выяснилось, что разрешительный режим в УТ не настраивался.
Мы разберем, как работает разрешительный режим (и механизм проверки) в программах 1С:
- Кассир сканирует код маркировки на кассе.
- Код маркировки с помощью метода API ГИС МТ
codes/check (похожий принцип использует запрос остатков из системы "Честный знак") отправляется на проверку в "Честный ЗНАК".
- При успешной проверке чек пробивается на ККТ. В данные чека заполняется специальный идентификатор и дата запроса.
- Если код маркировки не проходит проверку (например, он уже выбыл из оборота), чек не пробивается, и система выдает сообщение об ошибке.
- В случае, когда за установленный таймаут (например, 1.5 секунды) не приходит ответ на запрос от ГИС МТ, чек может быть пробит на ККТ. В дальнейшем (например, при наличии автономного режима проверки офлайн – ЕНИСЕЙ) данные будут отправлены позже.
Наши действия:
-
Активация разрешительного режима в 1С: Убедитесь, что ваш фискальный регистратор поддерживает ФФД 1.2, и активируйте разрешительный режим в настройках 1С, если это применимо к вашей категории товаров или если вы хотите использовать централизованный механизм проверки.
-
Проверка настроек API: В настройках работы с кодами маркировки в 1С проверьте, какие адреса и порты ИСМ указаны. Важно, чтобы они были актуальными и корректными. Также обратите внимание на параметр ОКП (Отдельный Канал Передачи), который, как было отмечено в сообщениях, заполняется в зависимости от производителя ФН и его срока действия. Некорректные или пустые настройки ОКП могут влиять на работу с ЧЗ.
3. Оптимизация работы 1С: Использование очереди чеков и проверка при сканировании
На стороне 1С также есть механизмы, позволяющие сократить время ожидания на кассе.
А. Использование механизма "Очередь чеков"
В 1С существует возможность отправлять данные в ОФД и "Честный ЗНАК" не в момент пробития каждого чека, а асинхронно, собирая их в так называемую Очередь чеков. Это позволяет кассе работать в относительно "офлайн" режиме для внешних систем, значительно ускоряя процесс обслуживания покупателя.
Как это работает:
- При пробитии чека данные о нем (включая коды маркировки) попадают в специальный регистр сведений "Очередь чеков" в 1С.
- Чек пробивается ФР, и покупатель быстро получает свою покупку.
- Затем, по расписанию (например, раз в несколько минут или при закрытии смены), регламентное задание в 1С отправляет накопленные данные из очереди в ОФД и "Честный ЗНАК".
Наши действия:
-
Настройка очереди чеков: Изучите документацию по вашей версии УТ (11.5) на предмет настройки "Очереди чеков". Обычно это делается в настройках подключаемого оборудования или в разделе "НСИ и администрирование" > "Продажи" > "Настройки подключаемого оборудования".
-
Мониторинг: Важно настроить мониторинг отправки данных из очереди, чтобы убедиться, что все чеки успешно передаются и нет зависших данных.
Б. Проверка кодов при сканировании, а не при печати
Вместо того чтобы ждать запроса в ЧЗ непосредственно перед печатью чека, можно перенести эту проверку на момент сканирования товара. Это распределит нагрузку по времени:
Как это работает:
- Кассир сканирует маркированный товар.
- Сразу же после сканирования 1С (или ФР, если настроено) отправляет асинхронный запрос на проверку кода в ЧЗ.
- Покупатель продолжает набирать товары, а кассир их сканировать. Запрос в ЧЗ происходит "фоново".
- К моменту завершения набора товаров и готовности к оплате, ответ от ЧЗ уже, скорее всего, будет получен.
Наши действия:
-
Реализация: Этот механизм может требовать доработки конфигурации 1С, так как типовая логика часто проверяет коды непосредственно перед печатью. Мы можем рассмотреть возможность изменения поведения обработки обслуживания ККТ или использовать специализированные обработки для сканирования маркированных товаров, которые будут инициировать проверку заранее.
В сообщении 2 упоминалась проверка кодов выбытия через кнопку в ЧекККМ в 10.3 и аналогичная возможность в УТ 11, что может быть использовано для разделения проверки и непосредственного пробития чека. Это позволяет сохранить результаты проверки, не завязываясь на торможение кассы.
4. Обновление прошивки ФР и драйверов
Устаревшие прошивки фискальных регистраторов или драйверы могут содержать ошибки или неоптимизированные алгоритмы взаимодействия с "Честным ЗНАКом". Производители постоянно выпускают обновления, которые улучшают стабильность и производительность.
Наши действия:
-
Проверка актуальности прошивки: Узнайте текущую версию прошивки вашего АТОЛ FPrint22ПТК и сравните ее с последней доступной на официальном сайте АТОЛ.
-
Обновление драйверов: Убедитесь, что на кассовом компьютере установлены последние версии драйверов для ФР.
-
Совместимость с ФФД 1.2: Крайне важно, чтобы прошивка ФР и драйверы полностью поддерживали ФФД 1.2, поскольку это требование для работы с маркированными товарами.
5. Проверка сетевого окружения и подключения к "Честному ЗНАКу"
Хотя "быстрые пинги до ya.ru" (в среднем 13/19 мс) свидетельствуют о хорошем общем интернет-соединении, это не гарантирует аналогичную скорость и стабильность связи непосредственно с серверами "Честного ЗНАКа". Маршрутизация до серверов ЧЗ может быть иной, и на этом пути могут возникать узкие места.
Наши действия:
-
Пинг до серверов ЧЗ: Мы должны попробовать пропинговать непосредственно сервера "Честного ЗНАКа". Адреса можно найти в официальной документации ЧЗ или у вашего ОФД. Если пинги до них значительно выше или есть потери пакетов, это указывает на проблему на стороне провайдера или маршрутизации.
-
Мониторинг сетевого трафика: Используйте сетевые утилиты для мониторинга трафика с кассового компьютера во время пробития чека. Это поможет выявить, когда именно происходит задержка и с каким внешним IP-адресом она связана.
-
Проверка локальной сети: Убедитесь, что внутри локальной сети магазина нет проблем (перегруженность Wi-Fi, неисправные коммутаторы, старые кабели), которые могут замедлять передачу данных.
6. Особенности базы данных и дисковой подсистемы
Хотя проблема в основном связана с внешним взаимодействием, производительность СУБД и дисковой подсистемы также играет роль, особенно при большом объеме данных или сложной логике 1С.
Пользователь указал, что используются SSD-диски и базы находятся в SQL. Это хорошие предпосылки для высокой производительности.
Наши действия:
-
Мониторинг SQL-сервера: Мы проанализируем нагрузку на SQL-сервер во время пиковых операций (пробитие чеков). Замедление может быть вызвано неоптимизированными запросами 1С, нехваткой оперативной памяти или CPU на сервере, где расположен SQL.
-
Отладка в 1С: Если мы дружим с конфигуратором, то можем использовать отладчик, чтобы точно определить, в каком куске кода 1С происходит "зависание" при пробитии чека. Это поможет локализовать проблему — находится ли она в типовом коде 1С, в коде обработки обслуживания ФР, или это чисто внешнее ожидание ответа.
7. Риски пробития чека без полной проверки и автономный режим
Мы должны осознавать риски, связанные с ускорением пробития чеков за счет сокращения или пропуска проверок в ЧЗ. Если чек пробивается до получения подтверждения, есть риск продать товар с некорректным кодом:
- Код уже выбыл из оборота.
- Код поддельный (для работы с поврежденными марками часто используют дубликатор кодов маркировки DataMatrix).
- Код относится к другому товару или просроченному товару.
Продажа такого товара может повлечь за собой штрафы для организации.
Автономный режим (ЕНИСЕЙ): "Честный ЗНАК" разрабатывает автономный режим проверки офлайн (ЕНИСЕЙ), который позволит кассам работать даже при временном отсутствии связи с интернетом, но с обязательной последующей передачей данных. Это перспективное решение, которое может значительно уменьшить задержки в моменте пробития чека, однако потребует выстраивания процессов по контролю и передаче данных.
Наши действия:
-
Оценка рисков: Взвесьте потенциальные штрафы против недовольства покупателей. Для молочных продуктов, где оборачиваемость высока и риск продажи запрещенного кода ниже, чем для сигарет или алкоголя, компромисс может быть приемлемым.
8. Альтернативные кассовые решения
В некоторых случаях, если оптимизация текущей системы не дает желаемого результата, организации рассматривают переход на специализированные фронт-офисные кассовые программы, такие как Frontol. Эти системы могут иметь более оптимизированные механизмы взаимодействия с ФР и "Честным ЗНАКом", а затем обмениваться данными с 1С в режиме бэк-офиса. Это требует дополнительных затрат на лицензии и интеграцию, но может стать решением для сетей с высокой проходимостью.
Мы проанализируем:
- Целесообразность перехода на внешнее кассовое ПО, исходя из масштабов бизнеса, количества касс и критичности скорости обслуживания.
- Возможность использования гибридных решений, где 1С выполняет учетные функции, а кассовые операции обрабатываются специализированным ПО.
Заключение
Проблема длительной печати чеков с маркированными товарами — комплексная и требует системного подхода. Мы рассмотрели множество факторов: от настроек фискального регистратора и 1С до сетевого окружения и рисков. Важно последовательно проходить по всем пунктам диагностики, начиная с проверки таймаутов ФР, настройки разрешительного режима в 1С и использования "Очереди чеков". Тщательный анализ и пошаговая оптимизация позволят вам значительно сократить время обслуживания покупателей и повысить эффективность работы вашей розничной сети.