Как подключить ККМ к 1С на удаленном рабочем столе (RDP)?

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

При организации работы в 1С через удаленный рабочий стол (RDP) часто возникает задача подключения торгового оборудования — в частности, фискальных регистраторов и контрольно-кассовой техники (ККТ). Касса физически находится на рабочем месте кассира, а база данных 1С и терминальный сервер расположены удаленно. Проанализируем основные способы подключения оборудования, причины возможных сбоев и нюансы настройки.

Причины проблем при работе ККТ через RDP

Прежде чем переходить к вариантам подключения, разберем ключевые сложности, с которыми можно столкнуться при стандартном пробросе оборудования через терминальную сессию:

  1. Разрыв и переподключение RDP-сессии. При кратковременном сбое интернет-соединения сеанс пересоздает виртуальные каналы. В результате проброшенный виртуальный COM-порт может отключиться или изменить свой порядковый номер на сервере.
  2. Режим энергосбережения USB-портов. Операционная система локального ПК может переводить USB-переходник или контроллер в спящий режим при простое, что вызывает ошибки отклика оборудования в 1С.
  3. Задержки сети и таймауты (Ping). При высоком пинге или потере пакетов внешняя компонента 1С не успевает получить ответ от устройства, выдавая ошибку вида «Устройство не ответило».
  4. Разрядность драйверов. Разрядность внешних компонент 1С для работы с ККТ на сервере должна строго соответствовать разрядности клиентского приложения 1С (x86 или x64).

Способ 1. Стандартный проброс COM-портов средствами RDP и команды net use

Рассмотрим традиционный вариант подключения ККТ, когда фискальный регистратор подключен к локальному компьютеру через COM-порт или USB с эмуляцией COM-порта. В свойствах RDP-клиента (mstsc) предварительно включает перенаправление последовательных портов.

Чтобы зафиксировать привязку локального порта к терминальной сессии, на сервере применяется системная команда net use. Посмотрим на пример команды для проброса порта:

net use com1 \\tsclient\com1

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

Способ 2. Прямое сетевое подключение ККТ (Ethernet / Wi-Fi)

Проанализируем более надежный вариант, когда касса оснащена сетевым интерфейсом Ethernet. В этом случае кассе присваивается статический IP-адрес в локальной сети кассового узла. При наличии VPN-туннеля между удаленным сервером и сетью магазина (либо при пробросе порта на роутере) программа 1С на терминальном сервере взаимодействует с кассой напрямую по IP-адресу.

При таком подходе проброс портов средствами RDP не используется, а печать чеков не зависит от состояния терминального сеанса. Главным условием успешной работы является стабильный интернет-канал с минимальными задержками.

Способ 3. Использование кассового сервера (Сервер ККМ)

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

  1. На локальный ПК кассира, к которому физически подключена ККТ, устанавливается служба кассового сервера (например, Сервер ККМ).
  2. Служба работает на локальном компьютере и ожидает входящие сетевые команды по TCP/HTTP-протоколу.
  3. В 1С на терминальном сервере настраивается драйвер виртуальной ККМ, где указываются IP-адрес локального компьютера кассира и порт службы.
  4. Печать чека происходит путем отправки команды из 1С на кассовый сервер, который локально взаимодействует с кассой без задержек.

Важные технические настройки для стабильной работы

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

  1. Отключение энергосбережения USB. В Диспетчере устройств на локальном ПК кассира для всех USB-концентраторов и корневых устройств следует снять флаг «Разрешить отключение этого устройства для экономии энергии».
  2. Проверка разрядности платформы 1С. Если на терминальном сервере запущен 64-разрядный клиент 1С, внешняя компонента драйвера ККТ также должна быть 64-битной.
  3. Альтернатива RDP — Тонкий клиент 1С. Если работа через RDP вызывает постоянные задержки оборудования, оптимальным решением является публикация базы 1С на веб-сервере (IIS или Apache). На ПК кассира запускается Тонкий клиент 1С, а ККТ подключается напрямую к локальному компьютеру. Связь с базой осуществляется по протоколу HTTP/HTTPS, что полностью снимает проблему проброса портов.
← На главную