Как настроить ККТ АТОЛ через драйвер 10.х в терминальном сеансе RDP в 1С

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

При переходе на современные драйверы АТОЛ (версии 10.х) многие системные администраторы и специалисты 1С сталкиваются с проблемой: старый добрый метод проброса COM-портов через RDP начинает работать нестабильно, медленно или вовсе перестает определяться системой. В данной статье мы подробно разберем, как уйти от ненадежной эмуляции COM-портов и настроить стабильную работу кассового аппарата через сетевой интерфейс драйвера, даже если вы работаете в старых конфигурациях, таких как Управление торговлей 10.3 или Розница 1.0 — в этом случае поможет драйвер ККТ для старых конфигураций 1С на обычных формах.

Почему проброс COM-портов больше не эффективен?

В драйверах 10-го поколения (ДТО 10) архитектура взаимодействия с оборудованием претерпела значительные изменения. Традиционный проброс через RDP вносит большие задержки в передачу пакетов, что приводит к таймаутам (ошибка "Нет связи"). Кроме того, служба EthernetOverTransport (EoT), отвечающая за передачу данных в ОФД, часто конфликтует с проброшенным портом, блокируя его. Рассмотрим современный способ решения этой задачи.

Способ 1: Использование «Сервера удаленного подключения ККТ» (TCP/IP)

Этот метод является наиболее приоритетным. Суть его заключается в том, что на локальном компьютере, к которому физически подключена касса по USB, запускается специальная служба-ретранслятор. 1С на сервере RDP обращается к этой службе по протоколу TCP/IP, игнорируя нестабильные COM-порты — для этого есть утилита сетевой печати чеков через RDP.

Шаг 1. Настройка клиентской машины (где стоит касса):

  1. Установим драйвер АТОЛ версии 10.8.0 или выше.
  2. В списке установленных программ найдем и запустим утилиту «Сервер удаленного подключения ККТ» (KKT Remote Server).
  3. По умолчанию служба использует порт 19524. Убедимся, что этот порт открыт в брандмауэре Windows.
  4. В Тесте драйвера проверим, что касса успешно определяется по локальному COM-порту.

Шаг 2. Настройка серверной части (RDP):

  1. На сервере также должен быть установлен драйвер АТОЛ аналогичной версии.
  2. В 1С откроем настройки торгового оборудования. В параметрах подключения нам необходимо сменить «Способ подключения» с COM-порта на «Удаленное подключение» или «TCP/IP» — в этом поможет универсальная обработка подключения ККТ АТОЛ.
  3. В поле «Адрес ПК» или «IP-адрес» укажем сетевой адрес локальной машины пользователя. Если компьютеры находятся в одной локальной сети, указываем локальный IP. Если работа идет через интернет — белый IP или адрес VPN-шлюза.

Что делать, если в 1С не появляется поле «Адрес ПК»?

Проанализируем ситуацию, часто встречающуюся в УТ 10.3: вы установили драйвер 10.8, но в окне настроек 1С по-прежнему доступны только COM-порты. Это происходит потому, что встроенная в 1С компонента (макет) устарела и не «знает» о новых возможностях драйвера. Выясним, как это исправить через Конфигуратор.

Рассмотрим алгоритм обновления компоненты:

  1. Зайдем в Конфигуратор, найдем справочник ДрайверыОборудования (в новых версиях) или обработку обслуживания кассы.
  2. Нам необходимо заменить макет драйвера. Из официального дистрибутива АТОЛ (папка 1C) возьмем актуальный архив с компонентой (например, Atol_KKT_10.zip).
  3. Загрузим этот архив в соответствующий макет или справочник 1С.
  4. После обновления крайне важно очистить кэш 1С на сервере, так как старые формы настроек часто «прилипают» к сеансу пользователя.

Проверим результат: после перезахода в программу в настройках торгового оборудования должна появиться строка «Адрес ПК». Именно туда мы и вписываем IP-адрес клиента.

Способ 2: Реверсивный туннель или VSPE (для сложных случаев)

Если конфигурация 1С настолько сильно переписана, что обновить компоненту драйвера невозможно, воспользуемся эмуляцией через Virtual Serial Ports Emulator (VSPE) — для обхода ограничений есть универсальный драйвер подключения онлайн-касс по TCP/IP. Разберем этот вариант по шагам:

  1. На клиентской машине создаем в VSPE устройство типа TcpServer на базе COM-порта кассы (например, COM3, порт 5555).
  2. На сервере RDP с помощью VSPE создаем устройство типа TcpClient, которое подключается к IP клиента и создает виртуальный COM-порт (например, COM10).
  3. В 1С просто выбираем COM10. Программа будет думать, что работает с локальным портом, хотя данные будут передаваться по TCP.

Важный нюанс: установите значение Timeout в настройках драйвера в 1С не менее 3000-5000 мс. Это нивелирует сетевые задержки.

Настройка совместного доступа и ОФД

Часто возникает проблема: 1С блокирует кассу, и данные не уходят в ОФД, либо второй пользователь не может пробить чек. Проанализируем настройки драйвера для решения этой проблемы:

В параметрах оборудования в 1С обязательно найдем и установим флаг «Отключать ККТ после каждой операции» (или «Автоматически отключаться»).

Посмотрим на пример логики работы:


// При пробитии чека драйвер инициализирует соединение
Результат = Драйвер.УстановитьПараметры();
Драйвер.Подключить();

// После завершения печати соединение должно быть разорвано
Драйвер.Освободить();
Драйвер.Отключить();

Это позволит службе AtolDeviceService на локальном ПК в паузах между чеками перехватывать порт и отправлять накопленные данные в ОФД через канал EoT.

Тонкая настройка параметров связи

Для стабильной работы через RDP рекомендуется выставить следующие параметры в Тесте драйвера (раздел «Свойства»):

Резюме

Для реализации быстрой печати чеков в терминальном режиме мы должны отказаться от проброса портов средствами RDP. Основной путь — использование TCP-сервера драйвера АТОЛ. Если в 1С отсутствуют нужные поля ввода, решение всегда кроется в обновлении компоненты драйвера в метаданных конфигурации или очистке кэша. В крайнем случае используйте Wi-Fi модуль для ККТ, что превратит кассу в полноценное сетевое устройство, доступное по IP без участия клиентского ПК.

← На главную