- Журнал изменений в версиях системы Papyrus
- PAPYRUS (Демо)
- Papyrus: development
- ppd-chapter-000
- Введение #2
- Инструментарий
- Сборка проекта
- Code style
- Заметки по производительности
- Общие функции
- Базовые типы данных
- Базовые структуры данных
- Базовые алгоритмы
- Управление строковыми ресурсами
- Соображения по вопросу неотрицательности товарных остатков
- Котировки
- Модель объемной оптимизации товарных запасов
- Проект SARTR
- Протокол взаимодействия
- Зарезервированные объекты
- Регламентированные задания
- Papyrus: возможности системы
- Papyrus: руководство пользователя
- Библиотека
- Все об обязательной маркировке 2021
- Все об онлайн-кассах
- Презентации
- Руководства
- Свидетельство о регистрации системы Papyrus
- Технологии и функции
Протокол взаимодействия Papyrus и оборудования
Введение
Для взаимодействия устройства и Papyrus в драйвере устройства должна быть реализована экспортируемая функция RunCommand (const char * pCmd, const char * pInputData, char * pOutputData, size_t outSize). В параметре pCmd передается команда в символьном виде, которую должно выполнить устройство. В pInputData -- параметры передаваемой команды. В главе “Основные команды” описаны команды и параметры, которые должны поддерживать все устройства из данного руководства. Также отдельный класс устройств имеет свой набор команд и параметров, о чем подробнее написано в главе “Команды для работы с устройствами”. Получив файл драйвера, необходимо сделать о нем запись в ini-файле каталога Papyrus . Об это подробно написано в главе “Завершающая стадия. Запись в ini-файл”.
Экспортируемая функция
Синтаксис
- RunCommand (const char * pCmd, const char * pInputData, char * pOutputData, size_t outSize)
Входные параметры (устанавливает Papyrus )
- pCmd
- Имя команды на выполнение.
- pInputData
- Перечень параметров, необходимых для выполнения команды. Параметры представляют собой пары “ПАРАМЕТР=значение”, разделенные “”.
- outSize
- Размер строки pOutputData.
Выходные параметры (устанавливает драйвер)
- pOutputData
- Результат выполнения команды. Это может быть пустая строка, перечень возвращаемых параметров, код ошибки.
Возвращаемые значения
- 0
- Успешное выполнение команды.
- 1
- Ошибка выполнения команды (в pOutputData передается код ошибки).
- 2
- Недостаточный размер выходного буфера pOutputData.
Коды ошибок, передаваемые в pOutputData (для некоторых классов устройств существуют дополнительные коды ошибок, которые перечислены в разделах описания этих классов)
- 300
- Не достаточно параметров для работы устройства.
- 301
- Передана неизвестная команда.
- 302
- Ошибка инициализации.
- 303
- Соединение не установлено.
Порядок взаимодействия Papyrus и устройства
На каждую посланную драйверу команду должен прийти ответ. Напрмер, Papyrus отправил команду на соединение- RunCommand («CONNECT», «PORT=1234», pOutputData, outSize).
- RunCommand («CONNECT», 0, 0, outSize).
- RunCommand («CONNECT», 0, «303», outSize),
- RunCommand («GETLASTERRORTEXT», 0, pOutputData, outSize).
- RunCommand («GETLASTERRORTEXT», 0, «Соединение не установлено», outSize).
Команды
ОБЩИЕ КОМАНДЫ
- INIT
- Команда инициализации устройства. (стр. link)
- RELEASE
- Освобождение устройства. Устройство обнуляет все параметры, которые были переданы ему на этапе инициализации. (стр. link)
- CONNECT
- Команда на установку соединения с устройством. (стр. link)
- DISCONNECT
- Команда на закрытие соединения с устройством. (стр. link)
- SETCONFIG
- Papyrus передает устройству пары “ПАРАМЕТР=значение”. (стр. link)
- GETCONFIG
- Papyrus запрашивает значения перечисленных параметров. (стр. link)
- GETLASTERRORTEXT
- Papyrus запрашивает текст описания последней ошибки. (стр. link)
ВЕСЫ
- SENDPLU
- Загружает на весы информацию о товаре. (стр. link)
- GETDATA
- Получает данные с весов. (стр. link)
СИНХРОННЫЕ КАССЫ
- CHECKSESSOVER
- Проверка на то, что сессия длиться больше 24 часов. (стр. link)
- XREPORT
- Печать X-отчета. (стр. link)
- ZREPORT
- Печать Z-отчета. (стр. link)
- OPENBOX
- Открыть денежный ящик. (стр. link)
- OPENCHECK
- Открыть чек. (стр. link)
- CLOSECHECK
- Закрыть и распечатать чек. (стр. link)
- PRINTFISCAL
- Печать фискальной строки. (стр. link)
- PRINTTEXT
- Печать текста. (стр. link)
- ANNULATE
- Аннулировать документ. (стр. link)
- INCASHMENT
- Внесение/изъятие наличности. (стр. link)
- GETCHECKPARAM
- Получить параметры текущего документа. (стр. link)
- CLEARSLIPBUF
- Отчистить буфер подкладного документа. (стр. link)
- FILLSLIPBUF
- Заполнение буфера подкладного документа строками для печати. (стр. link)
- PRINTSLIPDOC
- Печать подкладного документа. (стр. link)
- GETECRSTATUS
- Вернуть статус ККМ (состояние печатающего устройства). (стр. link)
- CONTINUEPRINT
- Продолжить печать документа. (стр. link)
PRICE CHECKERS
- SENDBARCODE
- Устройство передает Papyrus штрихкод товара. (стр. link)
- PRINTTEXT
- Передает на устройство информацию о запрошенном товаре. (стр. link)
- NEXTLINE
- Перевести курсор на следующую строку. (стр. link)
- CLEAR
- Отчистить экран. (стр. link)
- SETPIXELPOS
- Установить начальную позицию пикселя текста. (стр. link)
- SETCURSORPOS
- Установить начальную позицию курсора. (стр. link)
ДИСПЛЕИ ПОКУПАТЕЛЕЙ
- PUTLINE
- Вывести текст. При этом указанная строка сначала должна быть очищена самим устройством. (стр. link)
- CLEARDISPLAY
- Очистить экран. (стр. link)
Основные команды
INIT
Команда инициализации устройства.Входные параметры
Отсутствуют.Выходные параметры
- pOutputData
- В случае успешного выполнения команды - пустая строка, иначе - код ошибки.
RELEASE
Освобождение устройства. Устройство обнуляет все параметры, которые были переданы ему на этапе инициализации.Входные параметры
Отсутствуют.Выходные параметры
- pOutputData
- В случае успешного выполнения команды - пустая строка, иначе - код ошибки.
CONNECT
Команда на установку соединения с устройством.Входные параметры
- pInputData
- PORT и BAUDRATE (номер порта/IP-адрес и скорость обмена). В зависимости от того, к какому классу принадлежит устройстово, передается либо один параметр, либо два. Подробнее на стр. link, link, link, link.
Выходные параметры
- pOutputData
- В случае успешного выполнения команды - пустая строка, иначе - код ошибки.
DISCONNECT
Команда на закрытие соединения с устройством.Входные параметры
Отсутствуют.Выходные параметры
- pOutputData
- В случае успешного выполнения команды - пустая строка, иначе - код ошибки.
SETCONFIG
Papyrus передает устройству пары “ПАРАМЕТР=значение”, которые определены в системе и соответствуют конкретному классу устройств. Если параметр драйверу устройства не известен, то драйвер пропускает его.Входные параметры
- pInputData
- Зависит от конкретного класса устройств. Возможные параметры и их значения перечислены в разделах описания работы с конкретными устройствами. Подробнее на стр. link, link.
Выходные параметры
- pOutputData
- В случае успешного выполнения команды - пустая строка, иначе - код ошибки.
GETCONFIG
Papyrus запрашивает значения параметров. На этот запрос драйвер должен вернуть все параметры, перечисленные в данном документе в разделе описания работы с данным классом устройств. Возвращаемые параметры перечисляются через “” в виде пар “ПАРАМЕТР=значение”.Входные параметры
Отсутствуют.Выходные параметры
- pOutputData
- В случае успешного выполнения команды пары “ПАРАМЕТР=значение”, иначе - код ошибки. Возможные параметры и их значения перечислены в разделах описания работы с конкретными устройствами. Подробнее на стр. link, link.
GETLASTERRORTEXT
Papyrus запрашивает текст описания последней ошибки.Входные параметры
Отсутствуют.Выходные параметры
- pOutputData
- Текст ошибки.
Команды для работы с устройствами
Весы
(Возможно, потребуются еще команды и параметры. Пока не совсем ясно где и какие параметры обязательны.)
Параметры общих команд
CONNECT
Входные параметры
- PORT
- (число/строка) Обязательный параметр. Номер COM-порта или IP-адрес.
- BAUDRATE
- (число) Обязательный параметр. Скорость обмена. Возможные значения смотри ниже.
Выходные параметры
Отсутствуют.Значения параметра BAUDRATE
- 0
- Скорость обмена 2400 бод.
- 1
- Скорость обмена 4800 бод.
- 2
- Скорость обмена 9600 бод.
- 3
- Скорость обмена 14400 бод.
- 4
- Скорость обмена 19200 бод.
- 5
- Скорость обмена 38400 бод.
- 6
- Скорость обмена 56000 бод.
- 7
- Скорость обмена 57600 бод.
- 8
- Скорость обмена 115200 бод.
- 9
- Скорость обмена 128000 бод.
- 10
- Скорость обмена 256000 бод.
Papyrus посылает:
- RunCommand («CONNECT», «PORT=1234;BAUDRATE=1», pOutputData, outSize)
SETCONFIG
Входные параметры
- LOGNUM
- (число) Обязательный параметр. Логический номер устройства.
- PROTOCOLVER
- (число) Обязательный параметр. Версия протокола обмена.
- PREFIXBC
- (число) Обязательный параметр. Префикс штрихкода.
- STRIPWP
- (число) Обязательный параметр. Игнорировать весовой префикс. Возможные значения смотри ниже.
- READNUMTRIES
- (число) Обязательный параметр. Количество попыток чтения из порта.
- READNUMDELAY
- (число) Обязательный параметр. Задержка между попытками чтения из порта (мс).
- WRITENUMTRIES
- (число) Обязательный параметр. Количество попыток записи в порт.
- WRITENUMDELAY
- (число) Обязательный параметр. Задержка между попытками записи в порт (мс).
Выходные параметры
Отсутствуют.Значения параметра STRIPWP
- 0
- Не игнорировать префикс.
- 1
- Игнорировать префикс.
Papyrus посылает:
- RunCommand («SETCONFIG», «LOGNUM=1; PROTOCOLVER=20; PREFIXBC=7; STRIPWP=0; READNUMTRIES=400; READNUMDELAY=5; WRITENUMTRIES=400; WRITENUMDELAY=5», pOutputData, outSize)
Дополнительные команды
SENDPLU
Загружает на весы информацию о товаре.Входные параметры
- GOODNUMBER
- (число) Обязательный параметр. Номер товара.
- GROUPCODE
- (число) Обязательный параметр. Номер группы товаров.
- GOODNAME
- (строка) Обязательный параметр. Наименование товара. (кодировка CP886)
- PRICE
- (число) Обязательный параметр. Цена реализации товара в копейках.
- EXPIRY
- (строка) Обязательный параметр. Дата окончания срока годности в формате дд.мм.гг.
- BARCODE
- (число) Обязательный параметр. Штрихкод.
- ADDMESSAGE
- (строка) Необязательный параметр. Дополнительная информация о товаре. (кодировка CP886)
Выходные параметры
Отсутствуют.
Papyrus посылает:
- RunCommand («SENDPLU», «GOODNUMBER=12; GROUPCODE=1; GOODNAME=Конфеты "Белочка"; PRICE=6400; EXPIRY=12.12.12; BARCODE=123456789», pOutputData, outSize)
GETDATA
Получает данные с весов.Входные параметры
Отсутствуют.Выходные параметры
- GOODNUMBER
- (число) Обязательный параметр. Номер товара.
- WEIGHT
- (число) Обязательный параметр. Вес товара в граммах.
Papyrus посылает:
- RunCommand («GETDATA», 0, pOutputData, outSize)
Драйвер отвечает:
- RunCommand («GETDATA», 0, «GOODNUMBER=12; WEIGHT=450», outSize)
Синхронные кассы
Параметры общих команд
CONNECT
Входные параметры
- PORT
- (число) Обязательный параметр. Номер COM-порта.
- BAUDRATE
- (число) Обязательный параметр. Скорость обмена. Возможные значения смотри ниже.
Выходные параметры
Отсутствуют.Значения параметра BAUDRATE
- 0
- Скорость обмена 2400 бод.
- 1
- Скорость обмена 4800 бод.
- 2
- Скорость обмена 9600 бод.
- 3
- Скорость обмена 14400 бод.
- 4
- Скорость обмена 19200 бод.
- 5
- Скорость обмена 38400 бод.
- 6
- Скорость обмена 56000 бод.
- 7
- Скорость обмена 57600 бод.
- 8
- Скорость обмена 115200 бод.
- 9
- Скорость обмена 128000 бод.
- 10
- Скорость обмена 256000 бод.
Papyrus посылает:
- RunCommand («CONNECT», «PORT=1234; BAUDRATE=1», pOutputData, outSize)
SETCONFIG
Входные параметры
- LOGNUM
- (число) Обязательный параметр. Логический номер устройства.
- AUTOCASHNULL
- (число) Обязательный параметр. Автоматическое обнуление наличности. Возможные значения смотри ниже.
- SESSIONID
- (число) Обязательный параметр. Номер текущей сессии.
- CSHRNAME
- (строка) Обязательный параметр. Имя кассира. (кодировка CP886)
- ADMINNAME
- (строка) Обязательный параметр. Имя администратора. (кодировка CP886)
- ADMINPASSWORD
- (строка) Обязательный параметр. Пароль администратора. (кодировка CP886)
- FLAGS
- (число) Обязательный параметр. Флаги. Передаются в десятичном виде. Возможные значения смотри ниже.
- PRINTLOGO
- (число) Обязательный параметр. Печатать логотип. Возможные значения смотри ниже.
Выходные параметры
Отсутствуют.Значения параметра AUTOCASHNULL
- 0
- Не обнулять.
- 1
- Обнулять.
Значения параметра FLAGS
- 0x00000008
- Не активировать первую строку чека.
- 0x00000010
- Открывать денежный ящик при пробивке чека.
- 0x00000100
- Округлять в чеке % скидки до целого.
- 0x08000000
- Не использовать отрезчик чеков.
Значения параметра PRINTLOGO
- 0
- Не печатать логотип на документах.
- 1
- Печатать логотип.
Papyrus посылает:
- RunCommand («SETCONFIG», «LOGNUM=1; SESSIONID=2; AUTOCASHNULL=1; CSHRNAME=Кассир; ADMINNAME=Старший кассир; ADMINPASSWORD=Пароль; FLAGS=24; PRINTLOGO=0», pOutputData, outSize)
Дополнительные команды
CHECKSESSOVER
Проверка на то, что сессия длиться больше 24 часов.Входные параметры
Отсутствуют.Выходные параметры
- 0
- Cессия длится меньше 24 часов.
- 1
- Cессия длится больше 24 часов.
Papyrus посылает:
- RunCommand («CHECKSESSOVER», 0, pOutputData, outSize)
Драйвер отвечает:
- RunCommand («CHECKSESSOVER», 0, «0» (или «1»), outSize)
XREPORT
Печать X-отчета.Входные параметры
Отсутствуют.Выходные параметры
Отсутствуют.
Papyrus посылает:
- RunCommand («XREPORT», 0, pOutputData, outSize)
ZREPORT
Печать Z-отчета.Входные параметры
Отсутствуют.Выходные параметры
Отсутствуют.
Papyrus посылает:
- RunCommand («ZREPORT», 0, pOutputData, outSize)
OPENBOX
Открыть денежный ящик.Входные параметры
- DRAWERNUM
- (число) Обязательный параметр. Номер денежного ящика.
Выходные параметры
Отсутствуют.
Papyrus посылает:
- RunCommand («OPENBOX», «DRAWERNUM=1», pOutputData, outSize)
OPENCHECK
Открыть чек.Входные параметры
- CHECKTYPE
- (число) Обязательный параметр. Тип документа. Возможные значения смотри ниже.
- CHECKNUM
- (число) Обязательный параметр. Текущий номер документа.
Выходные параметры
Отсутствуют.Значения параметра CHECKTYPE
- 0
- Сервисный.
- 1
- Чек на продажу.
- 2
- Чек на возврат.
- 3
- Внесение в кассу.
- 4
- Изъятие наличности.
Papyrus посылает:
- RunCommand («OPENCHECK», «CHECKTYPE=1; CHECKNUM=12», pOutputData, outSize)
CLOSECHECK
Закрыть и распечатать чек.Входные параметры
- PAYMCASH
- (число) Сумма наличных, принятая от покупателя в рублях (при этом количество знаков после десятичной точки может быть любым).
- PAYMCARD
- (число) Сумма по карте, принятая от покупателя в рублях (при этом количество знаков после десятичной точки может быть любым).
Выходные параметры
Отсутствуют.
Papyrus посылает:
- RunCommand («CLOSECHECK», «PAYMCASH=10.5», pOutputData, outSize)
PRINTFISCAL
Печать фискальной строки.Входные параметры
- RIBBONPARAM
- (число) Обязательный параметр. На какой носитель печатать. Возможные значения смотри ниже.
- DEPARTMENT
- (число) Обязательный параметр. Номер отдела.
- QUANTITY
- (число) Обязательный параметр. Количество товара в товарной позиции.
- PRICE
- (число) Обязательный параметр. Цена реализации товара в рублях (при этом количество знаков после десятичной точки может быть любым).
Выходные параметры
Отсутствуют.Значения параметра RIBBONPARAM
- 0
- Чековая лента.
- 1
- Контрольная чековая лента.
- 2
- Фискальная память.
- 3
- Подкладной документ.
Papyrus посылает:
- RunCommand («PRINTFISCAL», «RIBBONPARAM=0; DEPARTMENT=1; QUANTITY=5; PRICE=10», pOutputData, outSize)
PRINTTEXT
Печать текста.Входные параметры
- RIBBONPARAM
- (число) Обязательный параметр. На какой носитель печатать. Возможные значения смотри ниже.
- TEXT
- (строка) Обязательный параметр. Строка, которую нужно напечатать. (кодировка CP886)
- FONTSIZE
- (число) Обязательный параметр. Номер шрифта. Возможные значения смотри ниже.
Выходные параметры
Отсутствуют.Значения параметра RIBBONPARAM
- 0
- Чековая лента.
- 1
- Контрольная чековая лента.
- 2
- Фискальная память.
- 3
- Подкладной документ.
Значения параметра FONTSIZE
- 1
- Очень мелкий.
- 2
- Мелкий.
- 3
- Средний.
- 4
- Крупный.
- 5
- Очень крупный.
Papyrus посылает:
- RunCommand («PRINTTEXT», «RIBBONPARAM=0; TEXT="Скидка 5%"; FONTSIZE=3», pOutputData, outSize)
ANNULATE
Аннулировать документ.Входные параметры
Отсутствуют.Выходные параметры
Отсутствуют.
Papyrus посылает:
- RunCommand («ANNULATE», 0, pOutputData, outSize)
INCASHMENT
Внесение/изъятие наличности.Входные параметры
- AMOUNT
- (число) Обязательный параметр. Сумма изъятия/внесения в рублях (при этом количество знаков после десятичной точки может быть любым).
Выходные параметры
Отсутствуют.
Papyrus посылает:
- RunCommand («INCASHMENT», «AMOUNT=5000.55», pOutputData, outSize)
GETCHECKPARAM
Получить параметры текущего документа.Входные параметры
Отсутствуют.Выходные параметры
- CASHAMOUNT
- (число) Обязательный параметр. Сумма наличности в кассе в рублях (при этом количество знаков после десятичной точки может быть любым).
- RIBBONPARAM
- (число) Обязательный параметр. Какой носитель выбран для печати. Возможные значения смотри ниже.
- CHECKNUM
- (число) Обязательный параметр. Текущий номер документа.
Значения параметра RIBBONPARAM
- 0
- Чековая лента.
- 1
- Контрольная чековая лента.
- 2
- Фискальная память.
- 3
- Подкладной документ.
Papyrus посылает:
- RunCommand («GETCHECKPARAM», 0, pOutputData, outSize)
Драйвер отвечает:
- RunCommand («GETCHECKPARAM», «CASHAMOUNT=55.25; RIBBONPARAM=0; CHECKNUM=1», pOutputData, outSize)
CLEARSLIPBUF
Отчистить буфер подкладного документа.Входные параметры
Отсутствуют.Выходные параметры
Отсутствуют.
Papyrus посылает:
- RunCommand («CLEARSLIPBUF», 0, pOutputData, outSize)
FILLSLIPBUF
Заполнение буфера подкладного документа строками для печати.Входные параметры
- STRNUM
- (число) Обязательный параметр. Номер строки подкладного документа.
- TEXT
- (строка) Обязательный параметр. Строка, которую нужно напечатать. (кодировка CP886)
Выходные параметры
Отсутствуют.
Papyrus посылает:
- RunCommand («FILLSLIPBUF», «STRNUM=1; TEXT=Печать документа», pOutputData, outSize)
PRINTSLIPDOC
Печать подкладного документа.Входные параметры
Отсутствуют.Выходные параметры
Отсутствуют.
Papyrus посылает:
- RunCommand («PRINTSLIPDOC», 0, pOutputData, outSize)
GETECRSTATUS
Вернуть статус ККМ (состояние печатающего устройства).Входные параметры
Отсутствуют.Выходные параметры
- STATUS
- (число) Обязательный параметр. Флаг статуса ККМ. Передается в десятичном формате. Возможные значения сморти ниже.
Значения параметра STATUS
- 0x00
- Нет печати.
- 0x01
- Нет бумаги.
- 0x02
- Ожидание команды на продолжение печати.
- 0x04
- Режим печати.
- 0x08
- Открыт чек.
Papyrus посылает:
- RunCommand («GETECRSTATUS», 0, pOutputData, outSize)
Драйвер отвечает:
- RunCommand («GETECRSTATUS», «STATUS=9», pOutputData, outSize)
- STATUS=9
- Значит, что открыт чек и в принтере нет бумаги.
CONTINUEPRINT
Продолжить печать документа.Входные параметры
Отсутствуют.Выходные параметры
Отсутствуют.
Papyrus посылает:
- RunCommand («CONTINUEPRINT», 0, pOutputData, outSize)
Дополнительные коды ошибок
Ниже перечислены специфические ошибки, коды которых должен знать драйвер. В случае возникновения, код ошибки передается в pOutputData.- 400
- Буфер подкладного документа пуст.
- 401
- Некорректное состояние ЭКЛЗ.
- 402
- ЭКЛЗ или ФП переполнена.
- 403
- Ошибка ЭКЛЗ. Просьба обратиться в ЦТО.
Price Checkers
Основные команды
CONNECT
Входные параметры
- PORT
- (строка) Обязательный параметр. IP-адрес.
Выходные параметры
Отсутствуют.
Papyrus посылает:
- RunCommand («CONNECT», «PORT=127.0.0.1», pOutputData, outSize)
GETCONFIG
Входные параметры
Отсутствуют.Выходные параметры
- DISPLAYWIDTH
- (число) Обязательный параметр. Ширина дисплея в пикселях.
- DISPLAYHEIGHT
- (число) Обязательный параметр. Высота дисплея в пикселях.
- LINECOUNT
- (число) Обязательный параметр. Число строк, которое можно вывести на дисплей.
- SYMBCOUNT
- (число) Обязательный параметр. Количество символов в строке.
Papyrus посылает:
- RunCommand («GETCONFIG», 0, pOutputData, outSize)
Драйвер отвечает:
- RunCommand («GETCONFIG», «DISPLAYWIDTH=200; DISPLAYHEIGHT=50; LINECOUNT=2; SYMBCOUNT=20», pOutputData, outSize)
Дополнительные команды
SENDBARCODE
Устройство передает Papyrus штрихкод товара. После установки соединения Papyrus будет ожидать эту команду.Входные параметры
Отсутствуют.Выходные параметры
- BARCODE
- (число) Обязательный параметр. Штрихкод товара.
Драйвер посылает:
- RunCommand («SENDBARCODE», 0, «BARCODE=132456789», outSize)
PRINTTEXT
Передает на устройство информацию о запрошенном товаре.Входные параметры
- TEXT
- (строка) Обязательный параметр. Текст, описывающий товар. (кодировка CP886)
- ALIGN
- (число) Обязательный параметр. Выравнивание текста. Возможные значения смотри ниже.
- FONT
- (число) Обязательный параметр. Номер шрифта. Возможные значения смотри ниже.
Выходные параметры
Отсутствуют.Значения параметра ALIGN
- 1
- Слева вверху.
- 2
- По центру вверху.
- 3
- Справа вверху.
- 4
- Слева по центру.
- 5
- По центру.
- 6
- Справа по центру.
- 7
- Слева снизу.
- 8
- Слева по центру.
- 9
- Справа снизу.
- 10
- Слева на текущей строке.
- 11
- По центру на текущей строке.
- 12
- Справа на текущей строке.
- 13
- Сверху на текущей X-координате.
- 14
- По центру на текущей X-координате.
- 15
- Снизу на текущей X-координате.
- 16
- Текущая позиция.
Значения параметра FONT
- 1
- Очень мелкий.
- 2
- Мелкий.
- 3
- Средний.
- 4
- Крупный.
- 5
- Очень крупный.
Papyrus посылает:
- RunCommand («PRINTTEXT», «TEXT=Кофеты "Лакомка" ВЕС 200 гр; ALIGN=0; FONT=1», pOutputData, outSize)
NEXTLINE
Перевести курсор на начало следующей строки.Входные параметры
Отсутствуют.Выходные параметры
Отсутствуют.
Papyrus посылает:
- RunCommand («NEXTLINE», 0, pOutputData, outSize)
CLEAR
Отчистить экран.Входные параметры
Отсутствуют.Выходные параметры
Отсутствуют.
Papyrus посылает:
- RunCommand («CLEAR», 0, pOutputData, outSize)
SETPIXELPOS
Установить позицию пикселя текста.Входные параметры
- XCOORD
- (число) Обязательный параметр. Номер пикселя по горизонтали.
- YCOORD
- (число) Обязательный параметр. Номер пикселя по вертикали.
Выходные параметры
Отсутствуют.
Papyrus посылает:
- RunCommand («SETPIXELPOS», «XCOORD=20; YCOORD=1», pOutputData, outSize)
SETCURSORPOS
Установить позицию курсора.Входные параметры
- XCOORD
- (число) Обязательный параметр. Номер позиции в строке.
- YCOORD
- (число) Обязательный параметр. Номер строки.
Выходные параметры
Отсутствуют.
Papyrus посылает:
- RunCommand («SETCURSORPOS», «XCOORD=20; YCOORD=1», pOutputData, outSize)
Дисплеи покупателей
Основные команды
CONNECT
Входные параметры
- PORT
- (число) Обязательный параметр. Номер COM-порта.
Выходные параметры
Отсутствуют.
Papyrus посылает:
- RunCommand («CONNECT», «PORT=1234», pOutputData, outSize)
GETCONFIG
Входные параметры
Отсутствуют.Выходные параметры
- STRLEN
- (число) Обязательный параметр. Ширина строки в символах.
Papyrus посылает:
- RunCommand («GETCONFIG», 0, pOutputData, outSize)
Драйвер отвечает:
- RunCommand («GETCONFIG», «STRLEN=20», pOutputData, outSize)
Дополнительные команды
PUTLINE
Вывести текст. При этом указанная строка сначала должна быть очищена самим устройством.Входные параметры
- TEXT
- (строка) Обязательный параметр. Текст для вывода на экран. (кодировка CP886)
- VERTAB
- (число) Обязательный параметр. Переместить курсор по вертикали. Возможные значения смотри ниже.
- ALIGN
- (число) Обязательный параметр. Выравнивание по горизонтали. Возможные значения смотри ниже.
Выходные параметры
Отсутствуют.Значения параметра VERTAB
- 0
- На строку вверх.
- 1
- На строку вниз.
- 2
- Текущая позиция.
Значения параметра ALIGN
- 0
- Cлева.
- 1
- Cправа.
- 2
- По центру.
- 3
- Текущая позиция.
Papyrus посылает:
- RunCommand («PUTLINE», «TEXT=Конфеты "Лакомка"; VERTAB=3; ALIGN=1», pOutputData, outSize)
CLEARDISPLAY
Очистить экран.Входные параметры
Отсутствуют.Выходные параметры
Отсутствуют.
Papyrus посылает:
- RunCommand («CLEARDISPLAY», 0, pOutputData, outSize)
Завершающая стадия. Запись в ini-файл
Получив файл драйвера устройства с экспортируемой функцией RunCommand(), необходимо поместить его в каталог PPY/BIN/DRV/ и отметить в файле ppdrv.ini, который находится в каталоге PPY/BIN/. Формат записи следующий:- идентификатор=имя_для_отображения,тип_файла_драйвера,имя_файла_с_расширением
... pirit-petrogl=DRV:Пирит (Петроглиф),dll,Pirit.dll ...
- SyncPOS
- Запись сделана в группе устройств “синхронные ККМ”.
- pirit-petrogl
- Идентификатор.
- DRV:Пирит (Петроглиф)
- Строка, которая будет отображаться в Papyrus для идентификации устройства.
- dll
- Тип файла драйвера.
- Pirit.dll
- Имя файла драйвера с расширением.
Группы устройств
- SyncPOS
- Синхронные ККМ.
- AsyncPOS
- Асинхронные ККМ.
- Scale
- Весы.
- CustomDisplay
- Дисплеи покупателей.