При работе с программным продуктом 1С:Управление торговлей 10.3, особенно когда филиал расположен в другом городе и сотрудники подключаются к серверу через протокол удаленного рабочего стола (RDP), возникает специфическая, но весьма распространенная проблема. Если ваша контрольно-кассовая машина (ККМ) онлайн-типа работает через физический COM-порт, то возникает необходимость пробросить этот порт с клиентского компьютера на сервер. Если вы используете Windows Server 2008 или более ранние версии, эта задача решается достаточно просто через оснастку управления терминалом. Однако, начиная с Windows Server 2012, привычной оснастки уже нет, и мы сталкиваемся с отсутствием очевидного графического интерфейса для настройки проброса COM-портов. Мы рассмотрим различные подходы к решению этой задачи, от серверных настроек до альтернативных методов подключения ККМ.
Отсутствие привычной оснастки управления терминалом на Windows Server 2012 и более поздних версиях стало камнем преткновения для многих системных администраторов. Но это не означает, что функциональность исчезла. Она просто перенесена в другие инструменты. Рассмотрим, как мы можем разрешить проброс COM-портов на сервере.
Групповые политики — это централизованный и наиболее правильный способ управления настройками в доменной среде или на отдельном сервере. Мы можем использовать их для разрешения перенаправления COM-портов.
Win + R, введите gpedit.msc и нажмите Enter. Это откроет редактор локальной групповой политики.Конфигурация компьютераАдминистративные шаблоныКомпоненты WindowsСлужбы удаленных рабочих столовУзел сеансов удаленных рабочих столовПеренаправление устройств и ресурсовМы видим целый ряд политик, которые управляют перенаправлением различных ресурсов.
Применить, затем ОК. После этого для вступления изменений в силу может потребоваться перезагрузка сервера или, как минимум, выполнение команды gpupdate /force в командной строке с правами администратора. Перезагрузка гарантирует применение всех политик.Таким образом, мы даем серверу разрешение на прием клиентских COM-портов.
Если нам нужен более быстрый, скриптовый подход или если мы работаем в среде, где графический интерфейс ограничен, мы можем использовать PowerShell. Этот метод особенно удобен для автоматизации или в средах с большим количеством серверов.
Для разрешения проброса COM-портов с помощью PowerShell мы можем использовать командлеты для управления службами удаленных рабочих столов. Основная команда для этой цели изменяет свойства коллекции сеансов RDP.
Откройте PowerShell от имени администратора на вашем сервере и выполните следующую команду:
Set-RDSessionCollectionConfiguration -CollectionName "Имя вашей коллекции" -ClientDeviceRedirectionOptions "Clipboard,COMPort,Printer"
Разберем команду по частям:
Set-RDSessionCollectionConfiguration: Это командлет, который изменяет свойства коллекции сеансов удаленных рабочих столов.-CollectionName "Имя вашей коллекции": Здесь мы указываем имя коллекции сеансов, к которой подключаются пользователи. Вы можете узнать имя вашей коллекции в Диспетчере сервера в разделе "Службы удаленных рабочих столов" -> "Коллекции".-ClientDeviceRedirectionOptions "Clipboard,COMPort,Printer": Этот параметр указывает, какие именно клиентские устройства и ресурсы разрешено перенаправлять на сервер. Мы должны убедиться, что в списке присутствует COMPort. Также мы можем добавить другие необходимые опции, такие как Clipboard (буфер обмена) и Printer (принтеры).После выполнения этой команды изменения должны вступить в силу. Для полного применения может потребоваться переподключение пользователей к удаленным рабочим столам.
Если ваша инфраструктура удаленных рабочих столов включает Шлюз удаленных рабочих столов (Remote Desktop Gateway), то часть настроек перенаправления может быть вынесена на уровень политик авторизации подключений. Это происходит, когда пользователи подключаются к серверу не напрямую, а через этот шлюз.
Диспетчер шлюза удаленных рабочих столов.Важно отметить, что если шлюз удаленных рабочих столов не используется, этот метод, очевидно, неприменим.
После того как мы убедились, что сервер разрешает проброс COM-портов, нам необходимо проверить и настроить клиентскую сторону. Бывают случаи, когда COM-порт не появляется в списке устройств сервера даже после разрешения на серверной стороне, но при правильной настройке на клиенте и указании порта в 1С все начинает работать.
COM4).mstsc.exe) на клиентском компьютере.
ОК и подключитесь к серверу.Часто системные администраторы отмечают, что при отсутствии специфических ограничений, COM-порты пробрасываются "из коробки" после включения опции на клиенте.
COM1 или COM2, а иногда система может присвоить ему номер, совпадающий с клиентским (например, если на клиенте был COM4, на сервере он тоже может стать COM4). Экспериментируйте с доступными портами.Если стандартный проброс COM-портов через RDP продолжает вызывать проблемы или вы сталкиваетесь с неприемлемо низкой скоростью печати чеков, мы можем рассмотреть более стабильные и быстрые альтернативные варианты.
Это самый предпочтительный и современный способ подключения ККМ в распределенных системах. Многие современные онлайн-кассы поддерживают подключение не только через COM-порт, но и по сети Ethernet или Wi-Fi. Если ваш кассовый аппарат поддерживает такой тип подключения, мы настоятельно рекомендуем использовать его.
Преимущества этого метода очевидны: высокая скорость, надежность соединения, полное отсутствие проблем с пробросом COM-портов через RDP, так как взаимодействие происходит по стандартным сетевым протоколам.
Создание виртуальной частной сети (VPN) между филиалом и центральным офисом (или сервером 1С) позволяет интегрировать клиентский компьютер в локальную сеть сервера. При этом KKM, подключенная к клиентскому компьютеру, будет восприниматься сервером 1С так, как если бы она находилась в его локальной сети.
VPN обеспечивает высокий уровень безопасности и стабильности, делая передачу данных более надежной, чем через чистый RDP-проброс.
Существует специализированное программное обеспечение, которое решает проблему проброса COM-портов, "превращая" их в сетевой ресурс. Эти утилиты создают на клиентском компьютере "сервер" COM-порта, который доступен по TCP/IP, а на серверной части — "клиент", который создает виртуальный COM-порт, связанный с сетевым соединением.
VCOM1).Этот метод часто оказывается более стабильным и быстрым по сравнению со штатным пробросом RDP, поскольку он оптимизирован именно для передачи данных последовательных портов по сети. Примеры таких утилит: Serial over LAN, FabulaTech Serial Port Redirector, Eltima Serial Port Splitter.
Даже если нам удается успешно пробросить COM-порт, мы часто сталкиваемся с другой проблемой: существенные задержки при печати чеков. Это связано с особенностями RDP-протокола, который не всегда оптимально обрабатывает потоки данных последовательных портов, особенно если сеть имеет высокую задержку или низкую пропускную способность.
Производители ККМ постоянно работают над оптимизацией своих драйверов. Мы должны убедиться, что на сервере и клиентском компьютере установлены самые свежие версии драйверов для вашей ККМ.
Хотя напрямую настройки скорости COM-порта в RDP-клиенте нет, мы можем попробовать поэкспериментировать с общими настройками производительности, которые могут косвенно повлиять на скорость передачи данных.
mstsc.exe.Повторимся, что самым эффективным решением проблем со скоростью печати является переход на сетевое подключение ККМ по IP. Этот метод обходит все сложности, связанные с пробросом COM-портов, и использует гораздо более быстрый и стабильный сетевой протокол TCP/IP для передачи данных.
Если ваша ККМ поддерживает такой тип подключения, мы настоятельно рекомендуем рассмотреть его как основное решение. Скорость формирования и печати чека при сетевом подключении будет максимально возможной и не будет зависеть от производительности RDP-сессии.
Мы проанализировали различные подходы к подключению ККМ через RDP в условиях Windows Server 2012 и 1С:УТ 10.3. Проблема отсутствия привычной оснастки для проброса COM-портов решается через групповые политики, PowerShell или политики RD Gateway.
Однако, мы также выяснили, что даже при успешном пробросе COM-портов, скорость печати может стать значительной проблемой. В связи с этим, мы делаем вывод, что наиболее перспективными и надежными методами являются альтернативные:
Эти методы позволяют нам значительно повысить стабильность и скорость работы ККМ, что критически важно для торговых операций. Производители торгового оборудования и разработчики 1С все чаще ориентируются на сетевые интерфейсы, поскольку это изначально более надежная и быстрая технология для работы в распределенных системах и терминальных средах. Мы рекомендуем по возможности отдавать предпочтение именно сетевым интерфейсам для подключения ККМ.