PDA

Просмотр полной версии : PayOnline_01FA



lukyanovys
22.07.2019, 10:13
Здравствуйте, я новичок на форуме.
У меня такая проблема, достал библиотеку работы СПК110М01 с ККТ.
Сам программирую в CFC, но не могу понять как с этим блоком работать. Не хватает навыков.
Кто-то может помочь?

приборист
22.07.2019, 10:55
Здравствуйте, я новичок на форуме.
У меня такая проблема, достал библиотеку работы СПК110М01 с ККТ.
Сам программирую в CFC, но не могу понять как с этим блоком работать. Не хватает навыков.
Кто-то может помочь?
Что конкретно нужно?
Выкладывайте, посмотрим.

lukyanovys
22.07.2019, 11:06
43700
Есть такая библиотека, к ней описание, в нем разобраться не могу, как сформировать команду st_DataToSend
и команду st_SelCommand
допустим как сумму сформировать и дать команду на печать с фискализацией
с двумя верхними проблемы нет)))

lukyanovys
22.07.2019, 11:07
Назначение библиотеки
Библиотека предназначена для поддержки работы ККТ PayOnline-01FA совместно с
ПЛК под управлением Codesys 3.5. Библиотека реализует порядок информационного
взаимодействия нижнего уровня, рекомендуемый производителем ККТ.
Порядок работы с библиотекой
В информационном взаимодействии «ПЛК – ККТ» ПЛК является главным
устройством, а ККТ – подчиненным. Физический интерфейс «ПЛК – ККТ» –
последовательный интерфейс RS-232С, без линий аппаратного квитирования, параметры
интерфейса заданы следующими значениями – скорость обмена – 115200, длина слова
данных – 8бит, контроль четности – отсутствует, количество стоп-бит – 1.
В состав библиотеки входит функциональный блок (далее ФБ) «PayOnline», данный
ФБ предназначен для взаимодействия с ККТ PayOnline-01FA через последовательный
интерфейс RS232 ПЛК. Работа с ФБ сводится к выбору одной из поддерживаемых команд
и подачи управляющего сигнала к выполнению. Выбор команды осуществляется
присвоением её номера элементу структуры ФБ «st_SelCommand.usi_CommandToSend»,
управляющий сигнал к выполнению – изменение состояния входа «x_Execute» в TRUE. Для
выполнения ряда команд требуются дополнительные данные, эти данные должны быть
заданы до выполнения команды путем присвоения значений соответствующим элементам
структуры «st_SelCommand. данные команды» (см. Таблица 2). В результате успешной
работы, ФБ возвращает ответ ККТ на выполненную команду, данные ответа содержат
элементы структуры «st_ResponseData».
Помимо поддержки определённого набора команд, ФБ предоставляет возможность
выполнения не поддержанных библиотекой команд ККТ. Для выполнения таких команд
необходимо подготовить команду (см. описание протокола ККТ), заполнить данными
команды элемент структуры «st_DataToSend.a_usi_Data», определить размер команды в
байтах и присвоить данное значение элементу структуры «st_DataToSend.usi_Count», после
чего дать команду ФБ к выполнению.
Перечень поддерживаемых команд:
Таблица 1 – Перечень поддерживаемых команд
Команды ККТ Наименование команды Номер команды в ФБ
E0h Открытие смены 1
41h Суточный отчет с гашением 2
80h Продажа 3
85h Закрытие чека 4
88h Отмена чека 5
B0h Продолжение печати 6
8Ch Повтор последнего
документа
7
1Eh Запись таблицы 8
10h Короткий запрос состояния 10
Описание модели поведения ФБ
 Выполнение команды начинается по переднему фронту сигнала на входе «x_Execute»;
 Занятость блока отражает флаг x_Busy;
 Нет возможности прерывания выполнения до окончания работы ФБ;
 Нет ограничения по времени цикла;
 Нет ограничения по времени выполнения;
 Результатом работы блока является поднятие флага x_Done в случае успеха выполнения, x_Error – в случае ошибки взаимодействия на нижнем уровне. Наличие ошибки в ответе ККТ на выполненную команду не является условием поднятия флага x_Error и обрабатывается верхним уровнем
 Выходные данные ФБ доступны в случае активного управляющего сигнала к выполнению, рекомендуется до окончания работы ФБ сохранять состояние входа «x_Execute» в TRUE.

приборист
22.07.2019, 11:10
st_DataToSend - видимо структура, откройте и посмотрите.
Так же и st_SelCommand.

Но по скринам разбираться - то еще удовольствие.

Ковырять библиотеку нужно.
Я с Атолом работаю, как в PayOnline - не знаю.


ЗЫ
Судя по описанию - ничего сложного.
Запрашиваем статус.
Если смена закрыта - открываем смену.
Ждем выполнения --> Продажа --> Ждем выполнения --> Закрыть чек --> Ждем выполнения.

Но на CFC это будет громоздко и некрасиво, ИМХО.

lukyanovys
22.07.2019, 11:14
Вопрос долгий не подскажете? Я могу тимвивер включить

lukyanovys
22.07.2019, 11:16
Могу что надо включить, вопрос в неотложке, в отпуск не отпускают...

приборист
22.07.2019, 11:26
Вопрос - как пойдет :)
Обычно думаешь - 10 минут работы, а возишься 2 дня.
А кассы дело такое - то настройки не те, то ошибки другие, то протокол не тот.

lukyanovys
22.07.2019, 13:48
Вопрос со связью проблема муторная, знаю, а вот данные в струткурированный код поставить для специалиста не составит проблемы,а мне один раз показать и хватит

приборист
22.07.2019, 17:17
В личку же писал Вам. Вы не отвечаете.

danik127
19.03.2020, 10:49
Доброго дня. Подскажите плиз, где скачать данную библиотеку?Начал копать Codesys)))