Многие пользователи сталкиваются с ситуацией, когда одна касса (ККМ) успешно обслуживает несколько рабочих мест. До определенного момента стандартная схема работы «подключил и забыл» функционирует исправно: в настройках 1С снимается флаг «Удерживать соединение с кассой», и драйвер освобождает порт сразу после печати чека. Однако с введением обязательной маркировки товаров и переходом на формат фискальных данных ФФД 1.2 эта схема начинает давать сбои. Порт ККТ оказывается постоянно занят одним из компьютеров, а второй получает ошибку «Порт занят» или «Нет связи с ККТ».
В данной статье мы подробно разберем, почему маркировка меняет логику работы с оборудованием, и проанализируем эффективные способы решения этой проблемы.
Выясним причину, по которой старые настройки перестают работать. При продаже маркированного товара касса не просто печатает текст на чековой ленте. В соответствии с требованиями ФФД 1.2, взаимодействие с фискальным накопителем (ФН-М) становится многоэтапным:
Если в настройках 1С установлена проверка «при сканировании», драйвер ККТ открывает сеанс связи с кассой в тот момент, когда кассир только подбирает товар в документ. Поскольку проверка через криптопроцессор ФН требует ожидания ответа от внешних серверов, драйвер монопольно удерживает COM-порт или USB-соединение. В результате второй компьютер не может «достучаться» до кассы, пока первый пользователь не завершит работу с документом или не закроет форму подбора марок.
Проанализируем самый простой и быстрый способ, который помог участникам обсуждения. Суть его заключается в том, чтобы максимально сократить время взаимодействия с кассой во время подбора товара. Рассмотрим алгоритм настройки:
Почему это помогает? В этом режиме 1С не обращается к кассе и её фискальному накопителю в тот момент, когда кассир сканирует товар. Проверка выполняется программными средствами 1С (через интернет-соединение компьютера), а касса задействуется только в самый последний момент — при непосредственной печати фискального чека. Таким образом, порт ККТ остается свободным большую часть времени, и риск столкновения двух рабочих мест минимизируется.
Если первый способ не помогает из-за высокой интенсивности продаж, разберем более профессиональный архитектурный подход. Современные драйверы Атол (10-й версии) содержат встроенный компонент Web-сервер.
Рассмотрим, как работает эта схема:
Atol Web Service.Главное преимущество здесь в том, что сам веб-сервер драйвера выступает «регулировщиком». Он выстраивает поступающие запросы от разных рабочих мест в очередь. Если один компьютер занят проверкой марки, веб-сервер примет запрос от второго компьютера и выполнит его сразу, как только касса освободится, не выдавая ошибку «Порт занят» пользователю.
Проанализируем ситуацию, упомянутую в теме: пользователи работают под «одним рабочим местом» в настройках подключаемого оборудования. Это критическая ошибка при работе с маркировкой. Посмотрим, как сделать правильно:
Компьютер_1 и Компьютер_2 должны ссылаться на разные записи справочника оборудования.Это позволяет системе 1С корректно разделять кэш считанных марок и управлять сессиями драйвера независимо для каждого пользователя. В противном случае возникают конфликты блокировок внутри самой платформы 1С.
Для стабильной работы в сетевом режиме также рекомендуем проверить следующие технические моменты:
Тайм-аут ответа до 3000–5000 мс.Подведем итог. Для решения проблемы «занятого порта» при использовании маркировки на одной кассе с двух ПК, в первую очередь следует перенести проверку марок на этап пробития чека. Если же поток клиентов велик, оптимальным решением станет переход на сетевой протокол работы через Web-сервер Атол или специализированное ПО типа KKMServer, которое умеет грамотно управлять очередью фискальных операций.