Добрый день.
Предыстория:
- Позавчера, вечером, у нас закрылась смена. Успешно.
- Вчера с утра не открылась смена, т.к. возникла ошибка по таймауту. Смена не открыта.
- На сервер ККМ подается команда RegisterCheck и она выполняется успешно.
Вопрос: как мог сформироваться чек продажи, если смена не была открыта?
Посмотрев логи в ККМ Сервер, я не обнаружил записи о том, что подавалась команды открытия смены.
Однако смена была когда-то открыта, т.к. посмотрев последовательность номеров смен в чеках продаж, я увидел увеличение счетчика SessionNumber после команд RegisterCheck.
Проанализировав ответ на команду печати первого RegisterCheck в закрытой смене, увидел следующую картину:
"CheckNumber":1992,"SessionNumber":65,
t=20181105T122100&s=100.00&fn=8710000100999907&i=1993&fp=117140211&n=1
Получается, что одной командой на нашем АТОЛ FPrint-22ПТК сформировалось два чека в одно и тоже время (это подтверждается проверкой через "Получить данные чека")
1992 - это номер чека открытия смены
1993 - это номер чека продажи.
Теперь возникает следующий вопрос: это ККМ Сервер открывает смену неявно, или настройками кассы реализовано?
Сформированный ответ от сервера, который я привел выше, вводит в заблуждение. Что с этим делать? CheckNumber в данном случае "соврал".
Спасибо.
Номер чека CheckNumber при продаже
Re: Номер чека CheckNumber при продаже
>Вопрос: как мог сформироваться чек продажи, если смена не была открыта?
Если смена была закрыта то она откроется автоматом при регистрации первого чека в смене.
>Теперь возникает следующий вопрос: это ККМ Сервер открывает смену неявно, или настройками кассы реализовано?
Это зависит от модели ККТ. Атолы сами открывают автоматом.
Для одинакового поведения на тех ККТ где это не делается автоматом я делаю открытие через свой код.
>Сформированный ответ от сервера, который я привел выше, вводит в заблуждение. Что с этим делать? CheckNumber в данном случае "соврал".
В Атолах номер чека нужно считывать до регистрации чека ().
А так как Атол сам открывает смену (2 чека за раз) и возникла ошибка.
Проверю, исправлю...
Если смена была закрыта то она откроется автоматом при регистрации первого чека в смене.
>Теперь возникает следующий вопрос: это ККМ Сервер открывает смену неявно, или настройками кассы реализовано?
Это зависит от модели ККТ. Атолы сами открывают автоматом.
Для одинакового поведения на тех ККТ где это не делается автоматом я делаю открытие через свой код.
>Сформированный ответ от сервера, который я привел выше, вводит в заблуждение. Что с этим делать? CheckNumber в данном случае "соврал".
В Атолах номер чека нужно считывать до регистрации чека ().
А так как Атол сам открывает смену (2 чека за раз) и возникла ошибка.
Проверю, исправлю...
Re: Номер чека CheckNumber при продаже
Ясно. Спасибо за развернутый ответ.
Буду ждать выхода исправлений.
Буду ждать выхода исправлений.