Мой опыт подключения сканеров штрих-кода в RDP

Оборудование - Сканер штрих-кода

Мне пришлось настраивать подключение порядка 10 сканеров штрих-кода по RDP. Использовались Cipher Lab 1000, 1266 и 1562.
Раньше никогда этого не делал, поэтому делюсь опытом.

Проброс COM-портов

Сканер подключается к компьютеру или непосредственно в реальный COM-порт или в USB, но даже в этом случае он занимает виртуальный COM-порт (VCOM).

Проброс портов делается элементарно, нужно в свойствах RDP подключения указать галочку «Использовать порты».

 

Настройка сканера ШК в 1С

Существует два способа подключения сканера штрих-кода к 1С – через работы в режиме разрыва клавиатуры и через COM-порт.

Режим разрыва клавиатуры

 

В режиме разрыва клавиатуры сканер просто набирает клавиши, которые соответствуют символам штрих-кода. Не требуется никаких драйверов, чтобы сканер заработал в 1С.

Во всех типовых конфигурациях по кнопке F7 открывается окно ввода штрих-кода. Поэтому достаточно сканеру запрограммировать префикс F7 и все, он будет поддерживаться 1С.

Если конфигурация дорабатывалась и в некоторых участках забыли прописать типовую поддержку F7, проще дописать эту поддержку. Но в качестве альтернативы можно использовать драйвер Атол старых версий, где выбрать в качестве порта «Разрыв клавиатуры».

Новые версии драйверов Атол платные, а бесплатные делают 10-секундную задержку перед обработкой штрих-кода.

Способ прост для подключения, но неудобен в работе.

 

  • Нужно следить, чтобы была включена правильная раскладка клавиатуры.
  • При использовании префикса курсор должен стоять внутри таблицы, иначе F7 не срабатывает.
  • Буквы при наборе в RDP часто теряются, и сканер считывает усеченные штрих-коды.

Поэтому лучше все же, если используется разрыв клавиатуры, не использовать драйвер Атол (это лишние потери времени и символов), а просто запрограммировать префикс F7.

В моем случае был интересный глюк – буквы на некоторых штрих-кодах преобразовывались в верхний регистр. Я долго мучался, но мне подсказали, что нужно включить режим посимвольной передачи штрих-кода, а не пакетный, который стоял по умолчанию.

 

Режим COM-порта

Работает более быстро и надежно. Событие в 1С подхватывается независимо от раскладки клавиатуры и текущего активного элемента в форме.

Настраивается просто – указывается COM-порт и все.

Но есть нюансы.

Драйвер Атол можно использовать только старых версий. Для сканера это не имеет особого смысла, поэтому лучше применять бесплатный драйвер Scanoposот 1с.

Но я столкнулся с ситуацией, когда в некоторых комбинациях компьютеров и атоловский драйвер подключал сканер только один раз, а потом COM-порт оказывался занятым, а драйвер scanoposвообще вешал терминальную сессию. Причем такая проблема возникала только на дорогих сканерах. Просто CipherLab1000 работал нормально.

Случайно нашел тему об этом и решение тут. Там один комментатор писал, что когда он заменил scanopos предложенной версией этой компоненты, то чуть не заплакал – все заработало.

Действительно, я скачал компоненту и даже в моих проблемных связках все заработало. Автор утверждает, что проблема возникает, когда сканер подключен не в реальный COM-порт, а в виртуальный (VCOM).

Конечно, немного странно использовать noname-решение, но оно работает, а сканер в COM удобнее для пользователя, чем  в разрыв клавиатуры, поэтому почему бы и нет. Может быть, через 2 года, когда эта версия станет неактуальна, 1с починит свой scanoposдля нормальной работы с VCOMпо RDP.

Но возникла другая проблема – в 1С от сканера не доходил первый символ 0 штрих-кода. Видимо, драйвер преобразовывал штрих-код в число и терял ноль.

Я достаточно много времени потратил на поиск решения, но все решилось просто – достаточно установить любой префикс и прописать этот префикс в подключении торгового оборудования. Я использовал для общности F7.

 

Настройка префикса штрих-кода

Чтобы настроить префикс F7 пришлось помучаться.

У всех сканеров код этой клавиши разный, поэтому я заглянул в таблицу шестнадцатеричных кодов:

Но ошибся и вместо шестнадцатеричного 15 (десятичного 21) запрограммировал префикс 51. Потом понял, что не то, когда сканер в разрыв клавиатуры не нажимал F7.

 

Сама процедура программирования префиксов тоже описана неявно, пришлось писать себе памятку, переводя язык инструкции на нормальный человеческий:

1.            Считать ШК «Вход в конфигурирование»

2.            Считать ШК «Установка префикса»

3.            Считать ШК с цифрами «1», «5» для клавиши F7

4.            Считать ШК «Validate»

5.            Считать ШК «Update»

 

В моем случае я пропускал Validate, а без этого префикс не ставился.

 

Дополнительные замечания

Ездить каждый раз к пользователям сканеров не получалось. Поэтому я научил одного сотрудника на месте распечатывать нужные страницы из руководства и сканировать нужные мне последовательности команд.

Есть специальная программа ScanMaster, которая может назначать префикс и делать другие настройки для разных моделей сканеров. Но она работает только со сканерами, подключенными через COM, а не в разрыв клавиатуры.

Для проверки, работает или нет сканер, можно использовать все же драйвер Атол, программа «Драйвер устройств ввода». Нажать «Настройка свойств» - «Поиск оборудования», и далее просканировать любой штрих-код. Если сканер подключен нормально, будет отображен штрих-код.

 

См. также

Комментарии
1. v i (vis_tmp) 28 26.09.15 18:15 Сейчас в теме
2. Осипов Сергей (fixin) 3706 26.09.15 19:06 Сейчас в теме
(1) это мои рабочие заметки. ;-)
11. Марина Щербакова (Pskmetall2016) 24.05.17 14:32 Сейчас в теме
(2)
.


Осипов Сергей (fixin)
3517
26.09.15 19:06
Сейчас в теме


Добрый день!Как настроить f7 для сканера mercury CL-200?






(1) это мои рабочие заметки. ;-)
Показать
12. Осипов Сергей (fixin) 3706 26.05.17 06:12 Сейчас в теме
(11) вопрос как-то слишком общий.
смотреть надо.
3. Алексей Дмитриевцев (alexdm) 26.09.15 19:38 Сейчас в теме
Несколько месяыев назад тоже мучился с подключением сканера через RDP - была бы эта статья раньше, меньше времени бы убил. Сначала настроил в разрыв клавиатуры, причем, маленькая ремарка, не только Атол умеет работать с таким режимом, последние версии от 1С тоже научились, локально все ОК, но по RDP срабатывало через раз, манипуляции с таймаутом давали эффект, но стабильной работы добиться не удалось. Потом сделал проброс портов, перевел сканер в режим эмуляции COM-порта и все завелось на отлично.
13. Марина Щербакова (Pskmetall2016) 26.05.17 11:43 Сейчас в теме
(3)Добрый день!Пожалуйста,напишите подробнее про проброс портов?У нас сканер Сканер штрих-кода MERCURY CL-200-R USB.Работает через раз,ошибка "порт недоступен".Посоветуйте,пожалуйста,какие могут быть способы решения? Подключение к 1С через RDP.
14. Осипов Сергей (fixin) 3706 26.05.17 16:26 Сейчас в теме
(13) к сожалению, у меня нет идей. Можно перевести в режим эмуляции клавиатуры. Настроить префикс Ф7, тогда не нужно будет пробрасывать через порты, будет работать просто как клавиатура.

Можно попробовать использовать другие компоненты для сканера, а не сканопоз, или наоборот, сканопоз...
4. Дмитрий Никс (aximo) 670 26.09.15 19:41 Сейчас в теме
настроил под сотню наверное сканеров и через рдп и не через рдп и егаис и не егаис - танцев с бубнами не было никогда )))) что за описание?? что за область
GreenDragon; wolder; Tarlich; +3 Ответить
9. Виталий Перцев (try2016) 26.02.16 19:02 Сейчас в теме
(4) aximo,
Да что вы) Работаю с 2007 года с оборудованием. Если действовать по инструкции подключил и главное потом свалил от них навсегда, то согласен с вами проблем е бывает) А вот если обслуживаешь клиентов годами, то поверьте бывают))
И к вашему сведению нет сканеров ЕГАИС, есть 1D и 2D сканера - 3D пока не придумали) Разницы по подключению между 1D и 2D нет не какой они по большей части с 1С и РМК работают в режиме 1D))
23. KRIHA (KRIHA) 46 21.05.18 13:29 Сейчас в теме
Подскажите пожалуйста разобраться с ситуацией. Делаю еще одно рабочее место для сканера штрих кода (работа по rdp), все делалось по аналогии с теми рабочими местами, на которых все четко работает. Тест оборудования показывает, что данные по COM порту (4) работают (см. прложенный файл)
Но когда дело доходит до обработки внешнего события (после успешного подключения оборудования) - не работает.
Прикрепленные файлы:
5. Сергей Афонькин (killovolt) 288 28.09.15 08:20 Сейчас в теме
в 1С от сканера не доходил первый символ 0 штрих-кода


Сталкивался однажды с подобной проблемой, это надо в настройках сканера копаться. Достоверно не помню, давно было, либо отключал поддержку UPC либо включал преобразование UPC в EAN.
Spacer; alevnev; sommid; +3 Ответить
6. Андрей Карпов (karpik666) 1644 28.09.15 14:45 Сейчас в теме
Не Надо людей вводить в заблуждение, не только атолом все сыты, стандартные драйвера от 1с тоже нормально работают. По поводу кнопки f7, можно обойтись и без нее, просто подключаете сканер как торговое оборудование, а где ком порт ставите "клавиатура"
olgerd666; adhocprog; wolder; inter1980; rasta; cleaner_it; +6 Ответить
8. Виталий Перцев (try2016) 26.02.16 18:55 Сейчас в теме
(6) karpik666,
Ошибаетесь программирование префикса F7, очень удобно в том плане, что не требуются вообще драйвера для сканера. Он работает как обычная клавиатура в 1С только правда. И как вытекающие не надо виртуалить COM и мапить потом по RDP сканер со всеми вытекающими проблемами RDP.
10. Осипов Сергей (fixin) 3706 01.03.16 11:09 Сейчас в теме
(8) Кстати, да. Префикс F7 - удобное решение
7. Александр Никитин (ManyakRus) 273 26.02.16 18:43 Сейчас в теме
1) Разрыв клавиатуры намного лучше, т.к. КОМ-порты часто отваливаются и надо перенастраивать компьютер.Хорошо работает со стандартными 1С драйверами.
2) Для 1С 7.7 Разрыв клавиатуры не предусмотрено, сделал его силом :)
15. Андрей Поволокин (PovAndy) 09.01.18 12:52 Сейчас в теме
Спасибо огромное за описание!

Я тоже столкнулся с проблемой "Но я столкнулся с ситуацией, когда в некоторых комбинациях компьютеров и атоловский драйвер подключал сканер только один раз", Ваши подсказки ОЧЕНЬ помогли!!!
16. Осипов Сергей (fixin) 3706 09.01.18 19:24 Сейчас в теме
17. yushta yu (user892151) 10.01.18 17:22 Сейчас в теме
Всем доброго времени суток! Есть проблемка! Подключил сканер штрих-кодов к 1с7.7 работает, сканирует так: 1.Расх.накл. 2.подбор 3.по штрих-коду, так сканирует. А просто открыл расходную, то просто сканирует штрих-код в поле №накладной, потом переходит на дату и т.д. Как решить проблему, что-бы когда открыл документ, сканируешь штрих-код и он автоматически попал в документ. заранее спасибо!!!!
Сканер Sunlux XL-9309
18. Игорь Неважно (Kigo) 10.01.18 17:37 Сейчас в теме
(17)У вас сканер в разрыв клавиатуры, надо это указать в настройках драйвера (сервис параметры- сканер шк) сделать поиск оборудования, считать любой штрихкод, параметры должны автоматом прописаться
или перевести сканер в режим эмуляции ком порта, он это позволяет (rs-232) в мануле надо считать- войти в режим программирования, считать код интерфейса (rs-232) , закончить программирование, возможно- нужно будет скачать драйвер usb-rs232
19. yushta yu (user892151) 10.01.18 17:59 Сейчас в теме
20. Игорь Неважно (Kigo) 10.01.18 18:37 Сейчас в теме
(19)Добавлю "нужно будет скачать драйвер usb-rs232" этот драйвер никак не участвует в 1с, просто в диспетчере устройств винды появится ком порт, который надо будет выставить для сканера в 1с.
21. yushta yu (user892151) 11.01.18 10:16 Сейчас в теме
(20)Доброе утро! Перевел сканер в режим rs-232 по мануалу. в 1С сервис - торговое оборудования - настройка торгового оборудования - скрин прикрепил, тоже установил режим rs-232. Скачал usb-232 при установке пишет: driver instal failure (отказ в установке драйвера) у меня windows server 2008r2 может под него нужен другой драйвер. скрин прикрепил. заранее спс.
Прикрепленные файлы:
22. Игорь Неважно (Kigo) 11.01.18 11:54 Сейчас в теме
(21)У Вас сканер непосредственно на сервер цепляется или на клиентской машине?
Если на клиентской, то драйвер usb-232 надо устанавливать на клиентской машине, а на сервере только ком порт, если по рдп (клиентской машины), его может быть не будет видно в диспетчере оборудования на серевере- но работать будет, то есть смотрим на клиенте, встал он к примеру com8, идем на сервер в 1С - сервис параметры , сканер ШК - ставим - com8
Оставьте свое сообщение