Главная » Оборудование » СПАРК-115Ф » Драйвер OPOS для СПАРК-115Ф » Краткое описание драйвера OPOS для ФП СПАРК-115Ф
Назад

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

Номер статьи: 0000131

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

 

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

 

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

 

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

 

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

 

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

 

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

 

Key

HKEY_LOCAL_MACHINE\SOFTWARE\OLEforRetail\ServiceOPOS\FiscalPrinter\Spark

Value

Default = "SparkService2.FPSparkOPOSService"

 

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

 

 

Key

HKEY_LOCAL_MACHINE\SOFTWARE\OLEforRetail\ServiceOPOS\FiscalPrinter\Spark\Settings\General

Value

NumDevices= "1"

 

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

 

 

Key

HKEY_LOCAL_MACHINE\SOFTWARE\OLEforRetail\ServiceOPOS\FiscalPrinter\Spark\Settings\1

 

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

 

 

Value

CashierID= "Cashier"

 

Кассир

 

 

Value

ENABLELOG= "1"

 

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

 

 

Value

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

 

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

 

 

Value

HLLOGFILE= " "

 

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

 

 

Value

LLLOGFILE= " "

 

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

 

 

Value

ENABLEDAILY= "0"

 

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

 

 

Value

LIFETIMEDAILY = "0"

 

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

 

 

Value

Password = "000000"

 

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

 

 

Value

Port= "1"

 

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

 

 

Value

POSID= "1"

 

Номер кассы

 

 

Value

TranscodeTable= "1"

 

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

 

 

Value

USEEXTCFG= "1"

 

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

 

 

Value

OFDIPADDRESS= ""

 

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

 

 

Value

OFDPORT= ""

 

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

 

 

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

 

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

 

Section

[VERSION]

 

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

 

 

 

Parameter MAJORVERSION=1

 

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

 

 

 

Parameter MINORVERSION=0

 

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

 

 

Section

[CORRESPONDENCE]

 

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

 

 

 

Parameter NUMENTRIES

 

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

 

 

 

Parameter ENTRY%dCLIENT

 

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

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

 

 

 

Parameter ENTRY%dSPARK

 

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

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

 

 

Section

[SETTINGS]

 

Parameter EXTENDEDMODE

 

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

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

 

 

 

Parameter SPACELINEHANDLING

 

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

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

 

 

 

Parameter HANDLEUNIFORMROWS

 

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

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

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

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

 

 

Section

[MODE]

 

Parameter SPARK800

 

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

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

 

 

Section

[INIT]

 

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

 

 

 

Параметр PROGRAMPAYMENTMEANS

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

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

 

 

 

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

 

 

 

Parameter PM[%N]DOPROGRAMMING

 

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

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

 

 

 

Parameter PM[%N]CODEPAGE

 

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

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

 

 

 

Parameter PM[%N]NAME

 

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

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

 

 

 

Parameter PM[%N]CARD

 

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

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

 

 

 

Parameter PM[%N]OPENDRAWER

 

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

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

 

 

 

Parameter PM[%N]ENABLECHANGE

 

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

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

 

 

 

Parameter PM[%N]CHECKTOTAL

 

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

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

 

 

 

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

 

 

 

Parameter PROGRAMTAXES

 

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

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

 

 

 

Parameter TAXFILENAME

 

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

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

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

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

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

 

 

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

 

Метод PrintRecTotal

 

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

 

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

 

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

 

CapAdditionalHeader

CapAdditionalLines

CapAdditionalTrailer

CapAmountNotPaid

CapChangeDue

CapCheckTotal

CapCoverSensor 

CapDoubleWidth

CapDuplicateReceipt

CapFiscalReceiptStation

CapFixedOutput

CapItemList

CapMultiContractor

CapOnlyVoidLastItem

CapOrderAdjustmentFirst

CapPackageAdjustment

CapPercentAdjustment

CapPostPreLine

CapPowerLossReport

CapReceiptNotPaid

CapRemainingFiscalMemory

CapSetCurrency

CapSetStoreFiscalID

CapSetTrailer

CapSlpEmptySensor

CapSlpFiscalDocument

CapSlpFullSlip

CapSlpNearEndSensor

CapSlpPresent

CapSlpValidation

CapTotalizerType

CapTrainingMode

CapValidateJournal

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

 

BeginFiscalDocument

BeginFixedOutput

BeginInsertion

BeginItemList

BeginRemoval

BeginTraining

EndFiscalDocument

EndFixedOutput

EndInsertion

EndItemList

EndRemoval

EndTraining

GetTotalizer

PrintDuplicateReceipt

PrintFiscalDocumentLine

PrintFixedOutput

PrintPeriodicTotalsReport

PrintPowerLossReport

PrintRecItemFuel

PrintRecItemFuelVoid

PrintRecMessage

PrintRecNotPaid

PrintRecPackageAdjustment

PrintRecPackageAdjustVoid

PrintRecSubtotalAdjustVoid

PrintRecTaxID

PrintReport

SetCurrency

SetStoreFiscalID

SetTrailerLine

VerifyItem

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

 

FPTR_GD_CURRENT_TOTAL

FPTR_GD_GRAND_TOTAL

FPTR_GD_NOT_PAID

FPTR_GD_MID_VOID

FPTR_GD_REFUND

FPTR_GD_REFUND_VOID

FPTR_GD_NUMB_CONFIG_BLOCK

FPTR_GD_NUMB_CURRENCY_BLOCK

FPTR_GD_NUMB_HDR_BLOCK

FPTR_GD_NUMB_RESET_BLOCK

FPTR_GD_NUMB_VAT_BLOCK

FPTR_GD_FISCAL_DOC

FPTR_GD_FISCAL_DOC_VOID

FPTR_GD_FISCAL_REC

FPTR_GD_FISCAL_REC_VOID

FPTR_GD_NONFISCAL_DOC

FPTR_GD_NONFISCAL_DOC_VOID

FPTR_GD_NONFISCAL_REC

FPTR_GD_RESTART

FPTR_GD_SIMP_INVOICE

FPTR_GD_TENDER

FPTR_GD_LINECOUNT

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

 

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

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

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

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

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

 

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

 

*pData = 1

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

 

*pData = 3

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

 

*pData = 5

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

 

*pData = 7

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

 

*pData = 9

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

 

*pData = 11

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

 

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

 

*pData = 43

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

 

*pData = 44

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

 

*pData = 45

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

 

*pData = 47

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

 

*pData = 48

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

.

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

 

*pData = 101

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

 

*pData = 103

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

 

*pData = 104

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

 

*pData = 201

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

 

*pData = 210

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

 

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

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

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

 

 

 

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

 

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

 

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

 

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

 

CapAdditionalLines = TRUE

MessageLength = 42

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

 

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

 

PrintRecMessage

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

 

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

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

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

 

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

 

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

 

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

 

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

 

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

 

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

 

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

 

 

Просмотры: 1127