Перейти к содержимому

Драйвер opos что это

  • автор:

About OPOS Driver for Scanner and Scale

The Zebra OPOS Driver enables bar code data communication between any scanner and an OPOS compliant POS application via either a USB (IBM Hand-held and SNAPI) or RS-232 (Wincor-Nixdorf Mode B and SSI) connection. This driver provides an interface for reading bar code data, receiving events, opening, claiming, and enabling/disabling the device in accordance with the UPOS committee’s version 1.14 specification. The OPOS specification defines a two-layer open-driver software architecture between a POS application running on a Microsoft Windows operating system and the physical POS hardware device.

  • The upper layer, known as the Common Control Object (CCO), is an ActiveX Control that the POS application uses to interact indirectly with the Zebra scanner. The CCO is unique to each POS device class (e.g., scanners, scales, printers) and is provided by the UPOS committee. To simplify development and integration, the Zebra Scanner SDK includes a Monroe CCO (a vendor-independent scanner CCO). The control object (.ocx) file is located in the corresponding scanner or scale \Bin folder.
  • The lower layer, known as the Service Object (SO), is an in-process OLE Automation Server (a DLL) and is used to interact directly with the POS device, in this case the scanner. The Service Object is unique to each specific vendor’s POS device. The Zebra Scanner SDK contains the Zebra specific SO.

The Zebra OPOS Driver also enables weight data communication between a scale equipped MP6200 scanner and an OPOS compliant POS application via either a USB (IBM Table-top and SNAPI) or RS-232 (SSI) connection. This driver provides an interface for reading weight data, receiving events, opening, claiming, and enabling/disabling the device in accordance with the UPOS committee’s version 1.14 specification.

Zebra Scanner OPOS Driver Architecture

Figure 1: Zebra Scanner OPOS Driver Architecture

For more information about OPOS, OPOS architecture, terminology, and programmer’s guides, refer to:

  • UPOS Home Page (http://www.nrf-arts.org).
  • Monroe Consulting Services, Inc. (http://www.monroecs.com/opos.htm).

Version History

Please refer Barcode Scanner SDK for Windows release notes for more details.

Разработка драйверов OPOS для платформы «1С:Предприятие 8.1»

В данной статье пойдет речь о методиках разработки внешних компонент с применением стандарта OPOS для взаимодействия с драйверами нижнего уровня.

Стандарт OPOS (OLE for Retail POS) разработан совместно компаниями Epson, Fujitsu/ICL, Microsoft, NCR в 1994 году.
Стандарт OPOS определяет Управляющий Объект (Control Object) как архитектуру доступа и набор интерфейсов (способы управления) к классам периферийных устройств POS терминала: фискальный регистратор, дисплей покупателя, денежный ящик и т.д.
Единый стандарт позволяет одинаково управлять одним классом устройств разных производителей. Так как управление ведется через объект управления (OPOS Драйвер, или OPOS Control), то для работы, например, с фискальными регистраторами разных производителей не требуется изменять Приложение (Application) , работающее через единый интерфейс Управляющего Объекта, достаточно заменить только Исполняющий Объект (Service Object) . Этим достигается гибкость и независимость программы от производителя оборудования. (Рис. 1)

Из рисунка 1 видно, что внешняя компонента находится на уровне между Управляющим Объектом (драйвер OPOS ) и приложением («1С:Предприятие»). Но такая схема взаимодействия необходима, если Управляющий Объект уже реализован. Тогда для интеграции с системой «1С:Предприятие» пишется «драйвер-прослойка» (внешняя компонента), которая с одной стороны реализует требования к данному виду устройств со стороны «1С:Предприятия», а с другой — реализует вызов всех свойств и методов, определенных для Управляющего Объекта данного вида оборудования. Видно, что количество звеньев в цепочке увеличивается, что ведет к увеличению трудозатрат при разработке (требуется реализация дополнительного интерфейса взаимодействия). К тому же внешняя компонента становится не универсальной, а «заточенной» на определенный разработчиком интерфейс взаимодействия.
Сократить описанные затраты можно на этапе разработки Управляющего Объекта. Для этого необходимо разместить Управляющий Объект во внешней компоненте, таким образом реализовав внешнюю компоненту по стандарту OPOS . Это позволить отказаться от одного звена цепочки. Тем самым при реализации функционала внешней компоненты «1С:Предприятие» того или иного вида устройств, будет происходить обращение через интерфейс не к Управляющему Объекту, а к Исполняющему Объекту. Внешняя компонента, реализованная по такому принципу, приобретает универсальность, присущую драйверам, написанным по стандарту OPOS. При этом исчезает избыточность (методы и свойства предоставляемые драйвером, перегруженная свойствами «Страница свойств»), которая наблюдается при реализации интерфейса Управляющего Объекта в отдельной библиотеке.

Данные требования не ограничивают варианты реализации внешней компоненты для интеграции оборудования, подключаемого через OPOS драйвера, с системой «1С:Предприятие», а только предлагаю пути для оптимизации разработки этих решений.

Общие требования к драйверам OPOS для интеграции с системой «1С:Предприятие» складываются из совокупности применяемых технологий для взаимодействия как «сверху», так и «снизу».

» Сверху » осуществляется взаимодействие с системой «1С:Предприятие». Система программ «1С:Предприятие» поддерживает обмен данными с различным торговым оборудованием по согласованной технологии (рис.2).

Драйвер торгового оборудования должен быть реализован в соответствии с общей концепцией использования внешних компонент для взаимодействия с торговым оборудованием, подключаемым к системе программ «1С:Предприятие». Использование данного подхода позволяет упростить процесс подключения нового торгового оборудования к «1С:Предприятию».

Общие требования к драйверу:

разработан в виде внешней компоненты (описание механизма создания внешних компонент приведено в документе «Документация по технологии создания внешних компонент» на диске ИТС в разделе «Технология создания внешних компонент» Методической поддержки 1C:Предприятия 8.0.);

реализует функциональность подключаемого вида торгового оборудования в полном объеме;

предоставляет определенный набор свойств и методов для возможности настройки и управления драйвером.

Названия свойств и методов должны быть русскоязычными и англоязычными (например, Порт — Port, Скорость — Speed, Сигнал() – Signal()). Также драйвер должен поддерживать множественные подключения (в соответствии с идеологией COM технологии) и поддерживать работу с несколькими устройствами. При возникновении ошибки в работе драйвер должен сообщить об этом и передавать описание произошедшей ошибки.

» Снизу » драйвер взаимодействует (по выбору разработчика) либо с Управляющим Объектом, либо Исполняющим Объектом. При разработке драйвера в одной компоненте с Управляющим Объектом нет необходимости разрабатывать дополнительный интерфейс взаимодействия между драйвером и Управляющим Объектом.

Основная идея внешней компоненты, помимо интеграции — это предоставление унифицированных общих операций над оборудованием, без необходимости вдаваться в алгоритм выполнения тех или иных операций.

Ниже приводятся дополнительные ссылки на документацию по OPOS стандарту (на английском языке):
1. Unified POS — документация по стандарту Unified POS (включает в себя OPOS , JavaPOS , POS for .NET и XMLPOS ) .
2. История релизов стандарта OPOS — содержит сводную таблицу с датами выхода очередных версий стандарта и ссылки документацию.
3. Компоненты Общего Управляющего Объекта — содержит ссылки на последние версии ActiveX компоненты Общего Управляющего Объекта ( Common Control Object ), компоненты режима отладки, а также исходные коды данных компонент.

Подключение ФР через драйвер OPOS

Стандарт драйвера OPOS (OLE for Retail POS) разработан совместно компаниями Epson, Fujitsu/ICL, Microsoft, NCR в 1994 году.

Данный драйвер состоит из двух частей, одна часть в страивается в программу для доступа к способам управления периферийных устройств POS терминала (системы), такие как фискальный регистратор, чековый принтер, денежный ящик и другие.
Единый стандарт позволяет одинаково управлять одним классом устройств разных производителей. Так как управление идет через объект управления (OPOS Драйвер или OPOS Control), то для работы, например, с чековыми принтерами разных производителей не требуется изменять программу, а достаточно установить вторую часть OPOS драйвера конкретного устройства. Это даёт гибкость и лёгкость использования оборудувания различных производителей.

В России многие производителей фискальных регистраторов поддерживают данный стандарт OPOS драйвера: Штрих-М, Пирит, Прим, Мёбиус и другие аппараты можно подключить через OPOS драйвер к рабочему месту Smart Kassir.

Для того, чтобы подключить ФР через OPOS драйвер необходимо предварительно скачать (с сайта производителя ФР или нашего сайта) драйвер OPOS конкретной модели, установить его.

Далее в настройках Smart Kassir выбрать OPOS драйвер:

После этого нажимаете на кнопку ". " для настройки драйвера.

В появившемся окне выбираете или вводите "Индификатор ФР" — это наименование подключенного фискального регистратора, каторое Вы можете посмотреть в тесте драйвера (данная программа идёт в комплекте с драйвером OPOS от производителя ФР). Таким же образом выбираете "Индификатор ящика".

К примеру у ФР от компании Штрих-М, обычно индификатор ФР это: SHTRIH-M-OPOS-1, а индификатор ящика: CashDrawer.1

Для проверки соединения устройства нажмите кнопку "Проверка связи", при правильном подключение ФР в поле "Заводской №" должен появится номер устройства.

В дополнительных опциях можно указать сколько символов может разместиться на чековой ленте в одну строку — у каждого фискального регистратора своё допустимое количество.

Галочка "Печать в формате OEM" указывает драйверу необходимость нужной кодировки фискального регистратора, к примеру для модели ФР Pirit это опция должна быть включена, а для ФР от Штрих-М выключена.

Краткое описание драйвера OPOS для ФП СПАРК-115Ф

Купить СПАРК-115-Ф можно на нашем сайте ККС. Специалисты помогут вам, проведут детальную консультацию и предложат варианты решения по автоматизации вашего предприятия.

Скачать документ

Общие сведения

Драйвер предназначен для работы с фискальными регистраторами «Спарк» по стандарту OPOS. Драйвер реализует версию OPOS 1.7.

Поддерживаются ФР «Спарк» следующих версий:

Параметр DeviceName, передаваемый в метод Open, должен иметь значение «Spark»

Используемые ключи реестра

Программа установки драйвера производит запись в реестр следующих ключей и значений:

Имя класса сервиса OPOS

Количество фискальных принтеров, имеющихся в системе

Конфигурация первого имеющегося в системе принтера (Тип всех значений – REG_SZ)

Вести ли лог работы драйвера

EXTCFGFILE= «c:\Program Files\KKS\KKS FP Spark OPOS driver\extcfg.ini»

Путь к файлу конфигурации, специфической для приложений

Путь к файлу лога высокого уровня (вызовы методов OPOS). По умолчанию лог будет вестись в файле
<путь к исполняемому файлу программы>\OPOS-Log\OPOS_HL_Log.log

Путь к файлу лога низкого уровня (команды, посылаемые на принтер). По умолчанию лог будет вестись в файле
<путь к исполняемому файлу программы>\
OPOSLog\OPOS_LL_Log.log

Вести ли лог работы драйвера в отдельных файлах за каждые сутки. Если значение HLLOGFILE не задано, то лог будет вестись в файлах:
<путь к исполняемому файлу программы>\OPOS-Log\OPOShl-YYYY-
MMDD.log
и
<путь к исполняемому файлу программы>\OPOS-Log\OPOS
ll-YYYY-MMDD.log,
где YYYY – год,
MM – месяц и DD – день даты ведения лога.

Количество суток хранения файлов ежедневного лога. По умолчанию – 7 суток. Допустимые значения: от 1 до 60 суток.

Пароль управления принтера

Номер com-порта, к которому подключен принтер

Номер кассы

0 – строковые значения преобразуются при печати на спарке из кодовой таблицы WIN1251
1 – строковые значения преобразуются при печати на спарке из кодовой таблицы
DOS866

0 – Не использовать файл с конфигурацией, специфической для приложений
1 – Использовать файл с конфигурацией, специфической для приложений

URL или IP-адрес сервера оператора фискальных данных (ОФД)

Порт сервера ОФД

Файл конфигурации специфической для приложений

Это обычный ini-файл. Ниже приводится описание его секций и значений.

Информация о версии файла.

– старшая часть версии конфигурационного файла;

– младшая часть версии конфигурационного файла

[CORRESPONDENCE]

Информация о соответствии платежных средств, используемых в приложении, и платежных средств принтера.

Количество пар платежных средств, для которых установлено соответствие. Допустимы значения от «1»до «8».

%d – число в диапазоне от 0 до NUMENTRIES-1

Наименование платежного средства клиентского приложения.

%d – число в диапазоне от 0 до NUMENTRIES-1

Наименование платежного средства Спарк.

1 – работать в расширенном режиме

0 – не работать в расширенном режиме

0 – строки, переданные параметром в PrintRecMessage, состоящие целиком из пробелов, печатаются

1 – строки, переданные параметром в PrintRecMessage, состоящие целиком из пробелов, не печатаются.

(начиная с версии драйвера 1.0.0.14)

1 – Если при вызове метода PrintRecMessage параметром ему передается строка, состоящая из одинаковых символов, по длине больше, чем может напечатать принтер, «лишние» символы отбрасываются;

0 – все символы печатаются, т.о. строка расползется на 2.

Параметр используется только в расширенном режиме (EXTENDEDMODE = 1).

1 – работать со спарк-800;

0 – работать с остальными моделями ФП Спарк

[INIT]

Действия, выполняемые при инициализации драйвера (начиная с версии драйвера 1.0.0.20).

1 – Программировать параметры платежных средств принтера при инициализации драйвера;

0 – Не программировать, независимо от значений параметров, описанных ниже.

Во всех параметрах, описываемых ниже параметрах вместо [%N] необходимо поставить номер соответствующего платежного средства принтера (допустимые значения: 1 – 8).

Выполнять программирование параметров для платежного средства номер [%N]

Значения: 1 – выполнять, 0 – не выполнять.

Кодовая страница, в которой указывается наименование платежного средства номер [%N]

Значения: 1 – кодовая страница DOS 866, 0 – кодовая страница Windows 1251

Наименование платежного средства принтера номер [%N]

Значения: Строка длиной до 14 символов

Является ли платежное средство номер [%N] платежной картой (для таких платежных средств при оплате требуется передача дополнительной информации с помощью вызова метода DirectIO)

Значения: 1 – является, 0 – не является.

Открытие денежного ящика при оплате платежным средством номер [%N]

Значения: 1 – открывать денежный ящик, 0 – не открывать

Разрешать при оплате платежным средством номер [%N] ввод суммы оплаты, предложенной клиентом

Значения: 1 – разрешать, 0 – не разрешать

Подсчет итога кассовой выручки для платежного средства номер [%N]. Все платежные средства, у которых значение этого параметра равно 1, попадают в значение регистра ИТОГО В КАССЕ, печатаемого на X и Z-отчетах. По умолчанию такое средство только одно – восьмое.

Значения: 1 – подсчитывать итог, 0 – не подсчитывать

(Начиная с версии драйвера 1.0.0.43)

Программировать ставки налогов при начале смены.

Значения: 1 – программировать, 0 – не программировать

Имя файла, содержащего информацию о налогах и цепочках. Формат файла с информацией о налогах/цепочках:

Файл является обычным текстовым файлом в кодировке win1251

Каждая единица информации располагается в отдельной строке

Строки 1-4 содержат информацию о налоговых ставках

Строки 5-12 содержат информацию о налоговых цепочках в формате, используемом ФР Спарк

Особенности некоторых методов драйвера

Метод PrintRecTotal

В качестве параметра Description необходимо передавать строку, содержащую номер платежного средства ФР Спарк – одну из строк «1»,»2″,»3″,»4″,»5″,»6″,»7″,»8″.

Неподдерживаемые свойства

Свойства CapXXX, возвращающие False

Неподдерживаемые методы

Неподдерживаемые параметры метода GetData

Описание команд, посылаемых через метод DirectIO.

LONG DirectIO (LONG Command, LONG* pData, BSTR* pString);

Параметр Command допускает три возможных значения

1 – в этом случае через параметр pString передается команда, непосредственно передаваемая на принтер, через параметр pData возвращается код ошибки.

2 – в этом случае метод DirectIO используется для передачи дополнительной информации и настройки режимов работы драйвера.

3 – в этом случае метод DirectIO используется для передачи дополнительной информации и настройки режимов работы драйвера с фискальным накопителем (ФН).

Допустимы следующие комбинации значений параметров pData и pString:

pString передает номер кредитной карты, который будет напечатан на чеке при следующей операции оплаты (PrintRecTotal)

pString передает номер документа авторизации, который будет напечатан на чеке при следующей операции оплаты (PrintRecTotal)

pString передает значение «1» — чтобы разрешить ведение лога работы драйвера или «0» — чтобы запретить ведение лога.

pString передает имя файла лога высокого уровня.

pString передает имя файла лога низкого уровня.

pData возвращает значение байта состояния принтера.

Для Command = 2 дополнительно доступны следующие значения pData:

pData возвращает значение расширенной ошибки принтера.

pData возвращает признак, указывающий, истекла ли смена. Параметр pString возвращает дату и время открытия смены, и ее допустимую длительность в часах.

pData возвращает байты PSTATUS и PPIOCD объединенного статуса принтера.

pString передает адрес электронной почты или номер телефона покупателя. Корректность получаемых данных не проверяется.

pString возвращает номер текущей подверсии прошивки принтера в символьном виде.

Для Command = 3 дополнительно доступны следующие значения pData:

pString возвращает значение строки состояния ФН в шестнадцатеричном виде.

pString возвращает значение строки статуса информационного обмена ФН в шестнадцатеричном виде.

pString возвращает значение заводского номера ФН.

pString возвращает значение строки статуса информационного обмена ФН в шестнадцатеричном виде, а pData возвращает данные информационного обмена (побайтно): состояние фазы жизни, тип текущего документа, состояние смены, сведения о данных документа

pData возвращает номер последнего фискального документа.

Расширенный режим работы драйвера

Общие сведения

Данный режим поддерживается, начиная с версии 1.0.0.5.

Цель введения данного режима – обеспечить поддержку для программ, печатающих произвольную текстовую информацию на фискальном чеке. Произвольная информация выводится на чек как товарные позиции с нулевой ценой.

Свойства и методы OPOS, поддерживаемые в расширенном режиме

Цель введения данного режима – обеспечить поддержку для программ, печатающих произвольную текстовую информацию на фискальном чеке. Произвольная информация выводится на чек как товарные позиции с нулевой ценой.

В расширенном режиме следующие свойства имеют специфические значения:

Значение свойства MessageLength не зависит от модели фискального принтера и всегда равняется 42. Если передаваемое в метод PrintRecMessage значение не может быть распечатано на одной строке, оно разбивается на 2 строки, каждая из которых выводится на фискальный принтер как товарная позиция с нулевой ценой

Дополнительно поддерживаются методы:

Особенности работы в расширенном режиме

В расширенном режиме работы при инициализации драйвера сбрасываются следующие настройки печати чека:

Печать счетчика покупок

Печать » * » перед суммой

При вызове метода PrintRecTotal не происходит немедленной подачи команд оплаты на принтер, драйвер только запоминает переданные параметры.

Печать строк, переданных параметром в метод PrintRecMessage и команд оплаты происходит в методе EndFiscalReceipt.

Параметр Description, передаваемый в метод PrintRecSubtotalAdjustment не игнорируется. Строка, переданная через этот параметр, печатается на чеке как товарная позиция с нулевой ценой.

В расширенном режиме свойство PrinterState после вызова метода PrintRecTotal всегда имеет значение FPTR_PS_FISCAL_RECEIPT_ENDING, независимо от того, покрыла ли оплата итог чека или нет.

В процессе оформления фискального чека возможны не более 8 вызовов PrintRecTotal.

Возможно не более 1024 вызовов функции PrintRecMessage внутри одного чека.

Отключается режим использования налоговых цепочек.

Хотите оптимизировать расходы и улучшить свое предприятие? Закажите автоматизацию вашего бизнеса на сайте Группы Компаний ККС.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

https://lechenie.narkolog-na-dom-voronezh-12.ru/