Интеграция устаревших терминалов сбора данных (ТСД) под управлением операционной системы Windows CE (например, классических моделей Motorola/Symbol MC3090, MC3190, MC9090) с современными конфигурациями 1С на управляемых формах часто вызывает у разработчиков и системных администраторов множество вопросов. Напрямую запустить современный мобильный клиент 1С на таких устройствах невозможно, так как Microsoft прекратила поддержку Windows CE, а новые мобильные приложения 1С разрабатываются исключительно под Android и iOS.
Тем не менее, списывать рабочие и надежные терминалы в утиль не обязательно. В этой статье мы подробно разберем, как успешно интегрировать ТСД на Windows CE с современными конфигурациями «1С:Комплексная автоматизация 2» и «1С:ERP Управление предприятием 2» с помощью терминального доступа (RDP) и специализированного программного обеспечения.
В конфигурациях 1С:ERP и КА 2.х реализован встроенный механизм под названием Мобильное рабочее место работника склада (МРМ). Изначально (в версиях 2.4) оно проектировалось именно под работу через RDP-клиент. Рассмотрим по шагам архитектуру и принцип работы данного решения.
Схема терминальной работы выглядит следующим образом:
Разберем основные преимущества данного подхода: это решение не требует покупки дополнительного программного обеспечения для ТСД (используется стандартный встроенный функционал 1С), а все доработки логики проводятся непосредственно в базе 1С на сервере. Однако для успешной реализации этого метода нам придется решить несколько технических сложностей.
Попытка «из коробки» подключить старый ТСД на Windows CE 5.0 или 6.0 к современному серверу (Windows Server 2016/2019/2022) обычно заканчивается ошибкой авторизации (например, "Internal Error"). Выясним причину этой проблемы.
Дело в том, что старый RDP-клиент Windows CE не поддерживает современные протоколы безопасности, такие как NLA (Network Level Authentication / проверка подлинности на уровне сети) и протоколы шифрования TLS 1.2 и выше. Чтобы обойти это ограничение, выполним следующие действия:
Если встроенное рабочее место МРМ кажется вам перегруженным или не подходит под ваши уникальные бизнес-процессы склада, мы можем спроектировать собственные формы 1С. Разберем, как правильно реализовать интерфейс и программную логику для терминальных сессий.
При проектировании управляемых форм для экранов ТСД необходимо соблюдать жесткие правила:
Enter, Tab, функциональными клавишами F1-F12).Ниже приведем пример кода на встроенном языке 1С, который обрабатывает ввод штрихкода в текстовое поле формы и выполняет поиск номенклатуры при нажатии клавиши Enter:
&НаКлиенте
Процедура ШтрихкодПриИзменении(Элемент)
Если Не ЗначениеЗаполнено(Объект.Штрихкод) Тогда
Возврат;
КонецЕсли;
// Выполняем поиск номенклатуры на сервере
НайденныйТовар = НайтиТоварПоШтрихкодуНаСервере(Объект.Штрихкод);
Если НайденныйТовар = Неопределено Тогда
ПоказатьПредупреждение(, "Товар со штрихкодом " + Объект.Штрихкод + " не найден!");
Объект.Штрихкод = "";
ТекущийЭлемент = Элементы.Штрихкод;
Возврат;
КонецЕсли;
// Добавляем товар в табличную часть документа
ДобавитьТоварВДокумент(НайденныйТовар);
// Очищаем поле ввода для следующего сканирования
Объект.Штрихкод = "";
ТекущийЭлемент = Элементы.Штрихкод;
КонецПроцедуры
При работе через RDP сканер ТСД функционирует в режиме эмуляции клавиатуры (так называемый режим Keyboard Wedge). За эту логику на самом терминале отвечает специализированная встроенная утилита, чаще всего — DataWedge. Проанализируем, как правильно ее сконфигурировать:
Keystroke output и включим его (Enabled).Basic data formatting включим отправку суффикса возврата каретки: установим флаг Send Enter key или пропишем суффикс \n (код клавиши 13). Это необходимо для того, чтобы после считывания штрихкода ТСД автоматически имитировал нажатие клавиши Enter, инициируя событие ПриИзменении в нашей форме 1С.Обратите внимание на важный минус эмуляции клавиатуры: сканирование будет работать корректно только в том случае, если в текущий момент времени фокус ввода на экране терминала находится строго в поле ввода штрихкода. Если кладовщик случайно нажмет пальцем на другую область экрана, считанный штрихкод не попадет в обработчик 1С.
Если стабильность вашего складского Wi-Fi оставляет желать лучшего, постоянные обрывы RDP-сессий будут тормозить работу склада. В таких сценариях рассмотрим использование специализированного промежуточного ПО, например, продуктов компании Клеверенс (Mobile SMARTS: Склад 15) или программного пакета DataMobile.
Эти системы предлагают гибридный или полностью автономный режим работы:
Хотя запуск ТСД на Windows CE через RDP — это отличное, рабочее и бюджетное временное решение, мы должны понимать, что долгосрочно эта технология является тупиковой. Проанализируем ключевые причины:
Подводя итог, можно утверждать: если перед вами стоит задача быстро запустить автоматизацию склада "здесь и сейчас" с минимальным бюджетом при наличии парка ТСД на Windows CE — смело разворачивайте терминальный доступ RDP и используйте штатное мобильное рабочее место 1С или самописные формы. Это проверенная временем, работоспособная схема, которая позволит вашему бизнесу работать эффективно в течение переходного периода.