Настройка торгового оборудования, в частности сканеров штрихкода серии Symbol (Zebra) DS4308, часто вызывает затруднения даже у опытных специалистов. Основные сложности возникают при попытке подружить сканер с интерфейсом РМК (рабочее место кассира), когда устройство либо требует постоянного нажатия горячих клавиш (например, Alt+F7), либо корректно проходит тесты в настройках, но отказывается работать непосредственно в документе продажи. В этой статье мы подробно разберем, как правильно сконфигурировать устройство для стабильной работы, основываясь на актуальной инструкции по настройке торгового места на базе РМК современных Розница 3.0.
Прежде всего, нам необходимо определиться с интерфейсом подключения. Рассмотрим два основных варианта, которые поддерживает DS4308:
Проанализируем ситуацию: если вы решили использовать режим COM-порта, обязательно установите официальный Zebra CDC Driver. Без него система может видеть устройство, но передача данных в «1С:Розница» будет нестабильной или отсутствовать вовсе.
Часто пользователи совершают ошибку, пытаясь настроить сложную последовательность префиксов типа Alt+F7 внутри самого сканера. Разберем по шагам, как сделать это правильно для современных версий «1С:Розница» (2.2 и выше) с использованием драйвера 1С:Сканеры штрихкода (NativeApi).
Выясним причину, почему метод с Alt+F7 считается устаревшим. Современные драйверы 1С умеют перехватывать внешнее событие от сканера автоматически. Дополнительно изучите пример реализации работы сканера штрихкода через БПО, чтобы лучше понимать механику обработки данных. Для этого достаточно настроить только суффикс. Рассмотрим оптимальный алгоритм настройки:
Set Factory Defaults из руководства.CR (возврат каретки, код 13). Больше никаких префиксов в самом сканере задавать не нужно.1С:Сканеры штрихкода (NativeApi).13 (CR).Посмотрим на результат: при такой конфигурации сканер просто передает штрихкод и сигнал окончания передачи. Драйвер 1С распознает это как «Внешнее событие» и корректно обрабатывает его в РМК без лишних манипуляций с клавиатурой.
Проанализируем еще одну проблему: при чтении 2D-кодов (DataMatrix для «Честного ЗНАКа») вместо данных могут появляться непонятные символы («кракозябры»). Это происходит из-за влияния раскладки клавиатуры в режиме HID. Чтобы этого избежать, мы рекомендуем включить в сканере функцию Emulate Keypad.
В этом режиме сканер передает символы через Alt-коды цифровой клавиатуры. Это делает ввод абсолютно независимым от системного языка. Также для корректной работы с маркировкой убедитесь, что сканер передает спецсимвол GS (Group Separator), который служит разделителем в кодах DataMatrix. Если возникают сложности на стороне оборудования, используйте расширение для программной передачи символа GS.
Иногда требуется считывать специфические штрихкоды, например, на книжной или периодической продукции, где к основному коду EAN13 добавляется 5-значный дополнительный код. По умолчанию в DS4308 это может быть отключено. Разберем, как включить поддержку Bookland EAN:
Для активации этого режима необходимо найти в полном руководстве (Product Reference Guide) раздел «User Preferences» и считать штрихкод, разрешающий чтение Bookland EAN. После этого сканер начнет передавать полную строку из 18 цифр.
Если в процессе настройки вы заметили, что сканер периодически перезагружается (издает звуковой сигнал инициализации), проанализируем схему подключения. Модель DS4308 оснащена мощным имидж-сенсором с технологией PRZM, который потребляет значительный ток. При подключении через USB-хабы или переднюю панель системного блока питания может не хватать. Рекомендуем подключать сканер напрямую в порты материнской платы на задней стенке ПК. При возникновении программных сбоев после переподключения оборудования выручит универсальный инструмент смены рабочего места для Розницы и УНФ.
Если данные в тесте оборудования отображаются, но в РМК ничего не происходит, программисту стоит проверить обработчик ВнешнееСобытие в модуле формы. Посмотрим на пример упрощенного кода для анализа входящих данных:
Процедура ВнешнееСобытие(Источник, Событие, Данные)
Перем Фыв; // Переменная для обработки
Если Событие = "Barcode" Тогда
// Очищаем данные от лишних пробелов
Штрихкод = СокрЛП(Данные);
// Вызываем типовую процедуру обработки штрихкода
МенеджерОборудованияКлиент.ОбработатьШтрихкод(Штрихкод, ЭтаФорма);
КонецЕсли;
КонецПроцедуры
Важно помнить, что в современных конфигурациях на управляемых формах за это отвечает механизм ПодключитьОбработчикОпощения, и ручное вмешательство в код требуется крайне редко — обычно достаточно правильной настройки суффикса в справочнике «Подключаемое оборудование».
Для успешной настройки Symbol DS4308 в «1С:Розница» мы рекомендуем:
Следуя этой структуре, вы обеспечите быструю и точную работу кассового узла, а сканер будет мгновенно считывать любые штрихкоды, включая поврежденные или мелкие коды на упаковке.