При организации работы кассиров в терминальном режиме (RDP) в конфигурациях «1С:Предприятие» (например, «Управление торговлей 10.3») часто возникает типовая проблема: тест драйвера на локальном компьютере успешно находит кассу АТОЛ 30Ф, однако при проверке подключения из 1С на сервере система выдает ошибки «[-1] Нет связи» или «[-3] Порт недоступен».
Разберем детально физику работы кассы АТОЛ 30Ф, проанализируем причины возникновения данных ошибок и рассмотрим правильные сценарии настройки оборудования в терминальной среде.
Для понимания сути проблемы выясним аппаратные особенности ККТ АТОЛ 30Ф:
COM7 и COM8):
Поскольку физического сетевого интерфейса у кассы нет, прямое указание IP-адреса самой кассы в 1С невозможно. Доступны два рабочих сценария: проброс COM-порта через RDP или использование TCP-службы драйвера АТОЛ.
Рассмотрим, почему возникают ошибки связи при тестировании оборудования:
В этом сценарии локальный компьютер кассира выступает в роли TCP-шлюза (прокси) между кассой и терминальным сервером 1С. Разберем настройку по шагам:
Подключим кассу по USB и откроем «Диспетчер устройств». Определим, какой порт отвечает за команды. Запустим локальный «Тест драйвера ККТ», проверим связь на каждом из двух портов со скоростью 115200. Порт, на котором касса вернула информацию о модели, является командным (например, COM7). Обязательно снимем флаг «Устройство включено» и закроем тест драйвера.
В ДТО 9/10 служба драйвера умеет прослушивать входящие подключения по сети. Запустим службу драйвера ККТ на клиентском компьютере и укажем прослушивание порта (по умолчанию для ДТО 9 — 6220, для ДТО 10 — 5555).
На локальном ПК кассира откроем входящий порт 6220 (или 5555) для протокола TCP. Убедимся, что локальный компьютер кассира имеет постоянный статический IP-адрес (или доступен по доменному имени) в локальной сети/VPN.
Перейдем в 1С:Предприятие на RDP-сервере, откроем справочник «Торговое оборудование» и перейдем в параметры ККТ:
TCP/IP (или «Сеть/Ethernet» в зависимости от обработки).6220 (или порт, указанный в службе).3000 мс.Нажмем «Тест устройства» — связь должна успешно установиться.
Если используется схема с маппингом портов клиентской машины в терминальную сессию, выполним следующие действия:
В параметрах ярлыка подключения к удаленному столу (mstsc.exe) перейдем на вкладку «Локальные ресурсы», нажмем кнопку «Подробнее...» и установим галочку напротив пункта «Порты».
Подключимся к сеансу RDP и запустим командную строку (cmd). Выполним команду:
change port /query
В выводе консоли должны отобразиться сопоставленные порты, например: COM7 = \Device\RdpDrPort\;COM7:2\TS001. Если командная строка не отображает порты, проброс заблокирован групповыми политиками сервера или службами виртуализации.
В параметрах торгового оборудования в 1С выберем тип подключения COM-порт, укажем соответствующий номер (например, COM7) и скорость 115200. Напомним, что на клиенте тестовые утилиты и сторонние программы должны быть закрыты, чтобы не блокировать порт.
Проанализируем вопрос соответствия версий библиотек (fptrwin32_fz54_...dll):
9.12.0, а в системе установлен пакет 9.11.2, вызовы фискальных функций завершатся ошибкой инициализации библиотеки. Рекомендуется использовать идентичные версии ДТО как на клиенте, так и на сервере.
regsvr32 "C:\Program Files (x86)\ATOL\Drivers8\bin\fptrwin32_fz54_9_12_0_6194.dll"
Линейка драйверов ДТО 8 и ДТО 9 является устаревшей и не поддерживает современные форматы фискальных данных (ФФД 1.2, маркировка товаров «Честный Знак»).
Для стабильной терминальной работы рекомендуется перейти на ДТО 10 с использованием встроенного компонента «АТОЛ: Web-сервер ККТ»: