Open romanpikulenko opened 2 weeks ago
@romanpikulenko Не хватает логов.
1. Режим устройства 2 или 3
2. Подрежим 0
3. Вызываем FNRequestFiscalDocumentTLV
4. Устройство переходим в состояние 1, Выдача данных
5. Вызываем ResetECR, чтобы сбросить состояние. Отрабатывает без ошибок, но остается в режим "1, Выдача данных"
В 5 пункте не указано что произведен запрос состояния, после выполнения ResetECR().
После этого можно вывести устройство из этого состояния либо через штатную тулзу штриха, вызвав там ResetECR, либо вызывать FNReadFiscalDocumentTLV до тех пор пока он не вернет ошибку.
Или все же попробовать? - InterruptDataStream()
@romanpikulenko Не хватает логов.
1. Режим устройства 2 или 3 2. Подрежим 0 3. Вызываем FNRequestFiscalDocumentTLV 4. Устройство переходим в состояние 1, Выдача данных 5. Вызываем ResetECR, чтобы сбросить состояние. Отрабатывает без ошибок, но остается в режим "1, Выдача данных"
В 5 пункте не указано что произведен запрос состояния, после выполнения ResetECR().
После этого можно вывести устройство из этого состояния либо через штатную тулзу штриха, вызвав там ResetECR, либо вызывать FNReadFiscalDocumentTLV до тех пор пока он не вернет ошибку.
Или все же попробовать? - InterruptDataStream()
В пункте 5: после вызова ResetECR(), вызываем GetECRStatus(), чтобы считать состояние. Оно остается режим 1 Выдача данных. Пробовал InterruptDataStream() - выдает странную ошибку 79 неверный пароль. Пароль 30 установлен непосредственно перед вызовом InterruptDataStream().
Логи добавлю позже
прервать выдачу документа не получится, придется полностью вычитать документ через ’FNReadFiscalDocumentTLV’. Так это работает в ККТ...
OS: Windows 10 64 бит Release: 1.6.0-21-ge5b15e7
Параметры принтера:
Кодовая страница : 0, Русская Описание устройства : РИТЕЙЛ-01ФМ Версия протокола : 1 Подверсия протокола : 17 Тип устройства : 0 Подтип устройства : 0 Модель устройства : 22
Step to reproduce:
После этого можно вывести устройство из этого состояния либо через штатную тулзу штриха, вызвав там ResetECR, либо вызывать FNReadFiscalDocumentTLV до тех пор пока он не вернет ошибку.