При автоматизации розничной торговли часто возникает ситуация, когда сервер с базой 1С находится в центральном офисе, а торговое оборудование (весы с печатью этикеток) расположено в удаленном магазине. Если сотрудники работают в 1С через удаленный рабочий стол (RDP), возникает техническая сложность: 1С, запущенная на сервере, «не видит» весы, находящиеся в локальной сети магазина. В отличие от USB-сканеров, сетевые весы Ethernet нельзя просто «пробросить» через настройки RDP-клиента.
В данной статье мы проанализируем ситуацию на примере весов ШТРИХ-ПРИНТ ФI и конфигурации Далион: Управление магазином, разберем причины возникновения проблем и рассмотрим три основных способа интеграции оборудования.
Когда вы подключаетесь к удаленному серверу по RDP, вы создаете изолированную сессию. Стандартные средства Microsoft RDP позволяют перенаправлять только локальные ресурсы: принтеры, диски, COM-порты и смарт-карты. Весы с интерфейсом Ethernet работают по протоколу TCP/IP (обычно через порт 1111). Для сервера 1С IP-адрес весов 192.168.1.50, находящийся в локальной сети магазина, является недоступным, так как сервер находится в другой подсети. Рассмотрим, как решить эту задачу.
Этот метод заключается в том, чтобы сделать весы доступными по внешнему IP-адресу магазина. Рассмотрим по шагам, как это реализовать:
192.168.1.100.1111.Важный нюанс по безопасности: Чтобы весы не были доступны злоумышленникам из интернета ("голым задом", как выразились на форуме), в настройках Firewall на роутере магазина крайне рекомендуется разрешить входящие соединения на порт весов только с белого IP-адреса сервера 1С.
Это наиболее профессиональный и стабильный метод. Вместо настройки «клиентского» VPN на сервере, мы настроим постоянный туннель между двумя роутерами (например, на оборудовании MikroTik, Keenetic или OpenWRT). Проанализируем преимущества этого подхода:
10.0.0.5 видит весы 192.168.1.100 напрямую).При такой настройке в 1С (Далион) мы просто указываем локальный IP-адрес весов, и драйвер работает с ними так, будто они находятся в одной комнате с сервером. Не забудьте увеличить параметр Timeout в настройках драйвера до 2000–3000 мс, так как VPN-канал может вносить небольшие задержки.
Если прямое сетевое соединение нестабильно или его невозможно настроить, можно использовать механизм отложенной загрузки. Для этого используется утилита «Штрих-М: Автозагрузчик».
Разберем логику работы этого метода:
В конфигурации Далион: Управление магазином для реализации этой схемы может потребоваться доработка или использование стандартной обработки обслуживания с типом обмена «Файл».
Независимо от выбранного способа, для работы оборудования на стороне сервера 1С должны быть корректно зарегистрированы компоненты драйвера. Рассмотрим, как это сделать вручную через командную строку, если автоматическая установка не сработала:
regsvr32 "C:\Program Files (x86)\SHTRIH-M\Drivers4.15\SmScale.dll"
После регистрации библиотеки в 1С необходимо добавить оборудование в справочнике «Торговое оборудование». Для весов ШТРИХ-ПРИНТ ФI в Далион обычно используется обработка ShtrikhPrint_v2.epf.
Проанализируем основные параметры, которые необходимо проверить при возникновении ошибки «Нет связи»:
1111 (стандарт для Штрих-М).300 мс слишком мало, установите минимум 1000 мс.Таким образом, выбор метода зависит от сложности вашей сети: для одного устройства достаточно проброса портов с ограничением по IP, а для масштабируемой сети лучше один раз настроить Site-to-Site VPN.