Как настроить сетевую печать на фискальном регистраторе АТОЛ с нескольких компьютеров в 1С?

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

При попытке настроить сетевую работу фискального регистратора (ФР) АТОЛ в конфигурациях 1С:Розница 2.2 или 1С:Управление торговлей 11 пользователи часто сталкиваются с проблемой: тест драйвера из утилиты АТОЛ проходит успешно по протоколу TCP/IP, но при попытке настройки из интерфейса 1С доступен только выбор COM или UDP/IP. При этом тест связи по UDP/IP завершается ошибкой «Нет связи».

В этой статье мы подробно проанализируем причины возникновения данной проблемы, разберем программные способы ее исправления, а также рассмотрим архитектурно правильные варианты организации сетевой печати чеков с нескольких рабочих мест.

Причины проблемы при сетевом подключении

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

  1. Отсутствие выбора TCP/IP в форме 1С: В некоторых версиях Библиотеки подключаемого оборудования (БПО) в настройках драйвера 1С визуально выведены только варианты подключения через COM-порт или UDP/IP. При этом сетевой интерфейс оборудования АТОЛ работает по протоколу TCP/IP.
  2. Захват и монополизация сетевого сокета: Сетевая плата фискального регистратора и драйвер оборудования рассчитаны на единственное активное TCP-соединение. Если первый компьютер инициализирует подключение к ККТ в 1С, сетевой порт устройства блокируется. При попытке второго ПК отправить чек драйвер возвращает ошибку о недоступности порта.
  3. Ограничения сертификации 1С:Совместимо: По умолчанию тестирование интеграции оборудования в 1С проводится для локального подключения через USB или RS-232, поэтому поддержка сетевых режимов в старых обработках обслуживания была реализована не в полном объеме.

Способ 1. Корректировка числовых параметров драйвера в 1С

Проанализируем программную сторону настройки драйвера АТОЛ. В драйверах торгового оборудования типы подключения и модели устройств передаются в виде числовых идентификаторов. По умолчанию для типа соединения UDP/IP используется код 110, тогда как для протокола TCP/IP необходимо передавать код 99.

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

Рассмотрим пример установки параметров подключения и модели устройства:


// Установка типа подключения TCP/IP
// Вместо кода 110 (UDP/IP) задаем код 99 (TCP/IP)
ОбъектДрайвера.ConnectionType = 99; 
ОбъектДрайвера.IPAddress = "192.168.1.100";
ОбъектДрайвера.IPPort = 5555;

// Убедитесь, что код модели соответствует вашему устройству по документации АТОЛ
// Например, для АТОЛ 55Ф используется код 62
ОбъектДрайвера.Model = 62; 

Передав правильный номер типа подключения 99 и соответствующий номер модели, драйвер сможет успешно установить связь с фискальным регистратором по протоколу TCP/IP.

Способ 2. Использование штатного «Сервера ККТ» из БПО

Для предотвращения блокировки сетевого сокета при одновременной работе нескольких пользователей рекомендуется использовать централизованную схему через Сервер ККТ.

Разберем порядок настройки этой схемы по шагам:

  1. Фискальный регистратор физически подключается (по USB или COM) к одному из компьютеров в сети или к отдельному серверу.
  2. На центральном ПК в 1С настраивается и публикуется HTTP-служба «Сервер ККТ» (входит в состав БПО).
  3. На всех остальных рабочих местах кассиров в 1С выбирается тип оборудования «Удаленный драйвер» и указывается адрес опубликованного Сервера ККТ.
  4. При пробитии чека 1С отправляет HTTP-запрос на Сервер ККТ, который выстраивает входящие чеки в очередность и последовательно печатает их на одном фискальном регистраторе без конфликтов доступа.

Способ 3. Использование Web-сервера ДТО 10

В современных драйверах торгового оборудования АТОЛ (ДТО 10.х) реализована фоновая служба ATOL Fiscal Printer Web-Server. Данный вариант позволяет организовать сетевую печать без необходимости дергать монопольный порт кассы напрямую из каждого сеанса 1С.

Рассмотрев данную схему, отметим ключевые шаги:

  1. На ПК, к которому подключена ККТ, запускается служба Web-сервера АТОЛ (по умолчанию работает на порту 16732).
  2. 1С отправляет задания на печать чеков с помощью JSON-запросов по протоколу HTTP на данный локальный веб-сервер.
  3. Служба сама обрабатывает очередь входящих команд и взаимодействует с ККТ через единственный локальный порт.

Способ 4. Работа в терминальном режиме (RDP)

Если пользователи работают в единой базе 1С через удаленный рабочий стол (RDP), физическое устройство подключается напрямую к серверу терминалов. В этом случае проброс портов на клиентские машины не требуется, а сеансы пользователей обращаются к кассе локально по очереди.

Важные требования 54-ФЗ и особенности работы

При организации работы нескольких пользователей с одной ККТ проанализируем законодательные и организационные ограничения:

1. Единый режим кассовой смены: Кассовая смена открывается и закрывается непосредственно на самом фискальном регистраторе. При совместном использовании устройства смена будет общей для всех рабочих мест. Помните, что длина смены не должна превышать 24 часа, иначе касса заблокирует печать чеков для всех пользователей.

2. Реквизиты кассира в чеке: По требованиям 54-ФЗ в кассовом чеке должны быть указаны ФИО и ИНН конкретного сотрудника, пробивающего чек. При настройке сетевой печати убедитесь, что конфигурация 1С динамически передает параметры текущего авторизованного пользователя в драйвер при каждой отправке чека.

← На главную