1С:Предприятие 8.2 /
Работа с торговым оборудованием /
Общее
Требования к разработке драйверов для сканеров штрихкодов
Обновлено: 14.02.2008
Введение
Система программ 1С:Предприятие поддерживает обмен данными с различными моделями сканеров штрихкодов по согласованной технологии (рис.1).
Рис.1
Конфигурация системы программ « 1С:Предприятие 8» взаимодействует с обработками обслуживания сканеров штрихкодов.
Обработки обслуживания сканеров штрихкодов взаимодействуют с внешними компонентами для сканеров штрихкодов (драйверами для интеграции с «1С:Предприятие 8»).
Внешняя компонента (далее по тексту «драйвер») может взаимодействовать:
- непосредственно с моделью сканера штрихкодов;
- с программным обеспечением (АРМ), поставляемым вместе со сканером штрихкодов;
- с драйвером сканеров штрихкодов низкого уровня, написанным по технологии OLE for POS (OPOS).
Общие требования к драйверу:
Драйвер должен:
- быть разработан в виде внешней компоненты (описание механизма создания внешних компонент приведено в документе « Документация по технологии создания внешних компонент » на диске ИТС в разделе « Технология создания внешних компонент » Методической поддержки 1C:Предприятия 8.1.);
- обеспечить возможность реализации функционала в полном объеме для подключаемого вида оборудования
- предоставлять набор свойств и методов для настройки и управления драйвером в соответствии с опубликованными на диске ИТС в разделе « Работа с торговым оборудованием » Методической поддержки 1С:Предприятия 8.1 требованиями к виду представленного на сертификацию оборудования
- предоставлять русскоязычные и англоязычные названия свойств и методов (например, Порт- Port, Скорость - Speed, Подключить() - Open(), СобытиеОбработано() - EventProcessed() и др.);
- поддерживать множественные подключения (в соответствии с идеологией COM-технологии), а также поддерживать работу с несколькими устройствами, если позволяют бизнес-процессы, в которых используется данное оборудование;
- при возникновении ошибки в работе предоставлять подробное описание произошедшей ошибки, позволяющее пользователю понять причину возникновения ошибки и способ ее устранения;
- при возникновении внештатных ситуаций (некорректные действия пользователя , отсутствие запрашиваемого метода или функции, передача некорректных значений и др.) корректно обрабатывать их. Не должно быть аварийных завершений работы драйвера и прочих некорректных действий драйвера, которые могут привести к нарушению нормальной работы пользователя .
Описание работы с драйвером
Начало работы с драйвером
Система 1С:Предприятие (в дальнейшем "система") инициализирует соединение с драйвером и загружает его. Далее устанавливаются конфигурационные параметры, необходимые для работы. Подключение к устройству выполняется при начале операции с устройством торгового оборудования. После подключения устройства система готова к приему событий от драйвера.
После отправки события драйвер должен приостановить отправку следующего и ожидать команды сверху о возможности продолжения отправки событий. Если результат обработки события положительный, то драйвер инициирует отправку следующего события, в противном случае требуется перепосылка последнего события, того, после которого драйвер приостановился. То есть из старых событий необходимо хранить только последнюю сформированную строку для отправки (при этом в драйвере при поступлении новые данные должны буферизироваться и высылаться по мере освобождения системы). Пример последовательности такой:
• Отправка События 1;
• Получен ответ СобытиеОбработано(Истина);
• Отправка События 2;
• Получен ответ СобытиеОбработано(Истина);
• Отправка События 3;
• Получен ответ СобытиеОбработано(Ложь);
• Отправка События 3;
• Получен ответ СобытиеОбработано(Ложь);
• Отправка События 3;
• Получен ответ СобытиеОбработано(Истина);
• Отправка События 4;
• Получен ответ СобытиеОбработано(Истина);
Завершение работы
Отключение от устройства выполняется при окончании операции с устройством.
Соединение с драйвером закрывается только при завершении работы системы.
Описание свойств
Описание свойств | ||||
---|---|---|---|---|
Название (alias) | Тип | Доступность | Описание | |
Чтение | Запись | |||
Описание методов
Описание методов | |||||
---|---|---|---|---|---|
Название (alias) | Параметры | Описание | |||
Имя | Тип | Описание | |||
ПолучитьНомерВерсии (GetVersion) | - | - | - | BSTR | Возвращает номер версии драйвера |
ПолучитьОшибку(GetLastError) | ОписаниеОшибки (ErrorDescription) | BSTR [OUT] | Описание ошибки | LONG | Возвращает код и описание последней произошедшей ошибки |
Подключить (Open) | МассивЗначений (Valuesarray) | IDispatch* | Массив значений для настройки подключения | BOOL | Подключает сканер штрихкодов |
ИДУстройства (DeviceID) | BSTR [OUT] | Идентификатор устройства | |||
Отключить (Close) | ИДУстройства (DeviceID) | BSTR [IN] | Идентификатор устройства | BOOL | Отключает сканер штрихкодов |
СобытиеОбработано (EventProcessed) | ИДУстройства (DeviceID) | BSTR [IN] | Идентификатор устройства | BOOL | Оповещает драйвер о том, что событие системой было получено. Параметр " ФлагСостояния " указывает на успешность обработки. |
ФлагСостояния (StateFlag) | BOOL [IN] | Флаг обработки события | |||
ТестУстройства (DeviceTest) | МассивЗначений (Valuesarray) | IDispatch* | Массив значений для настройки подключения | BOOL | Выполняет пробное подключение и опрос устройства. При успешном выполнении подключения в описании возвращается описание устройства. При отрицательном результате возвращается описание возникшей проблемы при подключении. |
ДополнительноеОписание (additionalDescription) | BSTR | Описание результата выполнения теста |
Дополнительное описание:
"МассивЗначений" (пример значений для устройства, подключаемого на последовательном порту)
Тип данных "1С:Предприятия 8" - Массив.
Наименование параметра | Наличие в структуре | Типы данных | Описание параметра |
---|---|---|---|
Порт (Port) | Обязательное | LONG | Номер последовательного порта (1 соответствует порту COM1) |
Скорость (Speed) | Необязательно | LONG | Скорость последовательного порта, на которой подключается устройство (передается непосредственно значение 9600, 19200, 57600, 115200 и т.д.) |
Четность (Parity) | Необязательно | LONG | Задает значение, определяющее метод контроля четности при работе с периферийным устройством по COM-порту (Значения: 0 - "Нет", 1 - "Нечетность", 2 - "Четность", 3 - "Установлен", 4 - "Сброшен") |
БитыДанных (DataBits) | Необязательно | LONG | Задает значение, определяющее количество бит данных при работе с периферийным устройством по COM-порту (Значения: 7, 8) |
СтопБиты (StopBits) | Необязательно | LONG | Задает значение, определяющее количество стоповых бит при работе с периферийным устройством по COM-порту (Значения: 1, 2) |
Чувствительность (Sensitivity) | Необязательно | LONG | Задает чувствительность клавиатурного ввода при работе с периферийным устройством через клавиатурный порт |
ПрефиксШК (BarcodePrefix) | Необязательно | BSTR | Устанавливает префикс штрихкода |
СуффиксШК (BarcodeSuffix) | Обязательное | BSTR | Устанавливает суффикс штрихкода |
Внешние события от драйвера
Во
времяподключениядрайвервозвращаетпараметр "Идентификаторустройства". Данныйпараметриспользуетсявдальнейшемдрайверомдляуказанияисточникасобытия (устройства) приотправкесобытия, атакжеконфигурациямидляопределениясвязаннойссобытиемобработкиобслуживания. Идентификаторустройствадолженбытьуникальнымдлякаждогоподключения, дляэтогопредлагаетсявестисопоставление«Подключенноеустройство-Идентификаторустройства», добавляяновыестрокиприподключениикустройствуиудаляяприотключенииотнего. Т.е. драйверпривызовеметодаПодключить() долженсформироватьновыйидентификаторустройства (предлагаетсявкачествеименииспользовать GUID ввидупростотыегополученияпрограммнымпутем) ипередатьввыходномпараметре.
При наступлении событий в драйвере в систему можно посылать сообщение о возникновении внешнего события. При посылке сообщения о внешнем событии необходимо указать: источник события (Идентификатор устройства), наименование (тип) события и данные.
Описание аргументов событий
Имя события – "ЧтениеШтрихкода" ("BarcodeReading")
Данные – значение считанного штрихкода без префикса и суффикса. Для передачи данных используется тип данных "Строка" (BSTR).
Имя события – "ОшибкаВДрайвере" ("Error")
Данные – описание ошибки.
Событие наступает, если в процессе работы драйвера возникли ошибки.
Другие материалы по теме:
флагсостояния, отправка, массивзначений, работа с торговым оборудованием, идентификатор устройства, сканер, технология создания внешних компонент, штрихкод, 232, устройство, внешняя компонента, 1с:предприятия 8, истина, торговое оборудование, драйвер, ошибки, система, обработка, настройки, наименование, предприятие, работы, данные, значение
Материалы из раздела: 1С:Предприятие 8.2 / Работа с торговым оборудованием / Общее
Другие материалы по теме:
Требования к разработке драйверов для считывателей магнитных карт
Общесистемные механизмы и принципы
Требования к разработке драйверов для терминалов сбора данных
Нас находят: Описание драйвера сканера 1С, обработка обслуживания сканера 1с, обработка обслуживания сканера 1c, обработка для сканера штрихкода 1с, драйвера для сканера штрихкодов для 1с, драйвер для сканера штрихкодов, 1С требования драйвер сканера, 1 с обработка обслуживания сканеров
Мы на Facebook