Работа с контрольно-кассовой техникой (ККТ) в терминальном режиме (через RDP) часто сопровождается неприятными симптомами: долгое ожидание перед выходом чека, подвисание интерфейса «1С:Розница» или «1С:Управление торговлей» на 10–20 секунд, а иногда и полная блокировка работы РМК. Особенно часто это проявляется при использовании аппаратов ШТРИХ-М-02-Ф (в том числе модернизированных из ПТК-Light) и переходе с файловой базы на SQL-версию.
Проанализируем ситуацию: локально чек печатается мгновенно, но при работе через удаленный рабочий стол начинаются задержки. Мы разберем причины этого явления и пошагово внедрим решения, которые позволят кассе работать стабильно даже в распределенных сетях.
Традиционный метод подключения ККТ через RDP заключается в эмуляции COM-порта на локальной машине через USB и последующем «пробросе» (redirection) этого порта в терминальную сессию. Рассмотрим, почему это работает медленно:
Самый эффективный способ исключить задержки — это отказаться от эмуляции COM-портов в пользу сетевого подключения. Если касса подключена к локальному компьютеру по USB, мы можем заставить Windows видеть её как сетевую карту.
Разберем по шагам настройку RNDIS:
Преимущество: Данные передаются инкапсулированными в TCP-пакеты, что значительно быстрее обрабатывается протоколом RDP и минимизирует влияние сетевых задержек.
Если настройка RNDIS невозможна, рассмотрим вариант с использованием специализированного ПО. Штрих-М: Сервер печати (или «Сервер касс») позволяет сделать любую кассу доступной по сети.
Проанализируем схему работы:
Это решение позволяет избежать «кривого» проброса портов через RDP-клиент и делает связь более устойчивой к обрывам сессии.
Часто 1С «подвисает» из-за того, что драйвер слишком долго ждет ответа от устройства или слишком часто опрашивает его. Посмотрим, какие параметры стоит изменить в Тест драйвера ККТ (версии 4.14 и выше):
Выясним, почему проблема обострилась при переходе на SQL-версию. В клиент-серверном варианте 1С иногда возникают задержки из-за попыток сервера разрешить DNS-имя клиента.
Проделаем следующие манипуляции:
C:\Windows\System32\drivers\etc\hosts. Это исключит задержки на запросы к DNS-серверу.C:\Program Files (x86)\Shtrih-M\) и исполняемые файлы 1С в исключения антивирусного монитора.У моделей ШТРИХ-М-02-Ф (особенно старых ревизий) объем памяти ограничен. Печать графического логотипа может занимать значительное время, так как драйвер при каждом обращении может пытаться инициализировать загрузку картинки.
Рассмотрим, как это упростить:
В настройках шаблона чека в 1С (раздел «Подключаемое оборудование» — «Параметры ККТ») найдем пункт «Печатать логотип» и отключим его. Это сократит объем данных, передаваемых по RDP-каналу, на несколько килобайт, что существенно для медленных соединений.
Чтобы понять, помогли ли наши действия, воспользуемся встроенными средствами драйвера. В «Тесте драйвера» есть функция «Тест производительности». Сравним показатели задержки в миллисекундах до и после перехода на TCP/IP или Сервер печати. Хорошим показателем для RDP считается время отклика (Round Trip) менее 300 мс.
Таким образом, мы выяснили, что основная проблема кроется в нестабильности проброса последовательных интерфейсов через терминальные сессии. Переход на сетевые протоколы (TCP/IP) или использование выделенного сервера печати полностью решает проблему «зависания» 1С при печати чеков.