При интеграции электронных весов Штрих-М Слим с конфигурациями на платформе 1С:Предприятие (такими как 1С:Розница редакции 2.2/2.3 или 1С:УНФ) специалисты нередко сталкиваются с ошибками: оборудование успешно проходит тестирование в штатной сервисной утилите производителя, но при попытке настройки в 1С выдает сообщение «Тест не пройден», выдает ошибку несоответствия версий или вовсе отсутствует в списке доступных драйверов подключаемого оборудования. Разберем по шагам причины такого поведения и способы устранения неполадок.
Проанализируем частую ситуацию: при добавлении нового экземпляра весов в списке выбора драйверов отображаются только сторонние производители (например, CAS, АТОЛ, Масса-К), а драйвер Штрих-М отсутствует, хотя в общем списке драйверов он зарегистрирован. Причина кроется в служебном реквизите СнятСПоддержки, который в некоторых релизах конфигураций по умолчанию включен для старых внешних компонент.
Чтобы вернуть драйвер в список доступных для настройки устройств, выполним следующие действия:
ДрайверыОборудования.СнятСПоддержки и установим для него значение Ложь (снимем флаг).Для выполнения этой же операции средствами встроенного языка 1С можно воспользоваться следующим фрагментом программного кода:
Выборка = Справочники.ДрайверыОборудования.Выбрать();
Пока Выборка.Следующий() Цикл
Если Найти(Выборка.Наименование, "Штрих-М") > 0 ИЛИ Найти(Выборка.Наименование, "POS2") > 0 Тогда
ОбъектДрайвера = Выборка.ПолучитьОбъект();
Если ОбъектДрайвера.СнятСПоддержки Тогда
ОбъектДрайвера.СнятСПоддержки = Ложь;
ОбъектДрайвера.Записать();
КонецЕсли;
КонецЕсли;
КонецЦикла;
После снятия блокировки драйвер появится в мастере добавления подключаемого оборудования, и мы сможем приступить к его инсталляции и настройке.
Выясним причину, по которой 1С выдает ошибку «Тест не пройден», несмотря на корректную работу весов через штатную утилиту тестирования. Внешние компоненты и некоторые реализации драйверов протокола POS2 некорректно обрабатывают двухзначные номера последовательных портов (начиная с COM10 и выше).
Для исправления ситуации выполним переназначение порта в операционной системе Windows:
COM1 до COM4 (например, COM2). Если порт помечен как занятый, но физически не используется, назначим его принудительно.COM2) и повторим тестирование связи.При обновлении драйверов до более новых версий (например, линейки 6.5) может возникать ошибка несовместимости интерфейсов БПО («Версия драйвера в конфигурации отличается от установленного»). В таких случаях надежным решением является откат на стабильную версию драйвера весов (например, версию 6.0 или классический драйвер весового модуля POS2).
Разберем порядок переустановки:
%LOCALAPPDATA%\1C\1cv8\ExtCompT\ и %APPDATA%\1C\1cv8\ExtCompT\.Рассмотрим сопутствующие аппаратные и системные настройки, влияющие на обмен данными с весами:
DrvSM1C.dll) скомпилированы под 32-битную архитектуру. Если запуск 1С выполняется в 64-битном клиенте, внешняя компонента не сможет загрузиться. В таком случае необходимо запускать 32-разрядный клиент 1С.В современных конфигурациях также рекомендуется протестировать универсальный драйвер «1С:Электронные весы (NativeApi)», поддерживающий протокол POS2 без установки сторонних COM-библиотек.