Служба INECRMAN (Incotex ECR Manager)

Здесь можно скачать последние обновления программного обеспечения.
Раздел только для размещения материалов по темам работы конструкторского бюро (КБ).
Аватара пользователя
tks31597
Сообщения: 54
Зарегистрирован: 10 фев 2017, 10:23

Re: Служба INECRMAN (Incotex ECR Manager)

Сообщение tks31597 »

Да, получилось. Поскольку были нули не верно выставлялся размер приемного буфера
[16:25:51.182] Client::on_leng_read() readed = 4
[16:25:51.182] Client::on_leng_read() recv msg len = 2065851247 from cli_id= 94
[16:25:51.182] Client::on_leng_read() RETURN : error small buffer! recvlen = 2065851247 maxlen = 15000000
Ошибку можно сделать другую например "Не верно задан размер пакета"

Теперь другая проблема в log после выполнения команды заметил строку
[10:22:41.017] Client::drop() kill sock catch = cancel: Предоставленный дескриптор файла неверен.: Предоставленный дескриптор файла неверен.

Кусок log

00F018C0 VcomPipeBroadcast::push_status() result = 0
00F018C0 VcomPipeBroadcast::push_status() STARTUP = TRUE
00F018C0 VcomPipeBroadcast::StartUp() RETURN TRUE
[10:22:41.010] MercHolder::PortIsValid() ENTER
[10:22:41.010] PortExchRS_Sync::TestPort() ENTER thread_id = 3248
[10:22:41.013] PortExchRS_Sync::TestPort():: RETURN SUCCESS = 0
[10:22:41.013] MercHolder::PortIsValid() RETURN TRUE
[10:22:41.013] Client::send_answer() : message to send - {"result":0,"description":"Успешно завершено","sessionKey":"072241-127","protocolVer":"3.0"}
[10:22:41.013] Client::send_answer() write msg post, cli_id = 13
[10:22:41.014] Client::handle_write_post() : get it message to send, cli_id = 13
[10:22:41.014] Client::keepalive()
[10:22:41.014] Client::handle_write_res() write buffer OK! cli_id = 13
[10:22:41.014] Client::handle_write_res() erase message
[10:22:41.016] Client::on_leng_read() readed = 0
[10:22:41.016] Client::on_leng_read() RETURN : ERROR code = 2 ,msg = End of file cli_id = 13
[10:22:41.016] Exchanger::check_keepalive() client tick!
[10:22:41.016] Client::drop() drop client sock
[10:22:41.016] Exchanger::check_keepalive() erase from Clients
[10:22:41.017] Client::~Client() cli_id = 13
[10:22:41.017] Client::drop() drop client sock
[10:22:41.017] Client::drop() kill sock catch = cancel: Предоставленный дескриптор файла неверен.: Предоставленный дескриптор файла неверен.

Теги:
Аватара пользователя
LeonidT
Сотрудник Инкотекс
Сотрудник Инкотекс
Сообщения: 396
Зарегистрирован: 18 окт 2019, 17:45

Re: Служба INECRMAN (Incotex ECR Manager)

Сообщение LeonidT »

В данной ситуации никаких проблем нет. Данная запись была добавлена в лог в результате штатной обработки ожидаемого исключения при закрытии сокета, если соединение было разорвано на стороне клиента. Не стоит обращать внимания на эту запись.

В лог пишется много различной информации, она может понадобиться для анализа разработчиком в том случае если у Вас возникнут проблемы или ошибки. Если команда вернула ответ result = 0, как в Вашем случае, значит все штатно.
Аватара пользователя
bigjorj
Сообщения: 8
Зарегистрирован: 31 дек 2019, 06:15
Контактная информация:

Re: Служба INECRMAN (Incotex ECR Manager)

Сообщение bigjorj »

Версия 1.4.0.274
поделюсь проблемами возникшими в процессе работы с драйвером и тестирования на 115Ф.
Подключение работает только если указать модель 185F, если указываем модель 115F, то получаем ошибку доступа к порту. Логи приложил по ссылке - http://pstor.ru/20200115.log

Также путем экспериментов выяснили, что подключение проходит только если указываем номер порта в формате \\.\COM20, если пишем просто COM20, то получаем ошибку доступа к порту. Выяснили это изучая логи подключения MercBase, он передает всегда модель 185F и порт в указанном формате.

В документации об этом ни слова.
Аватара пользователя
LeonidT
Сотрудник Инкотекс
Сотрудник Инкотекс
Сообщения: 396
Зарегистрирован: 18 окт 2019, 17:45

Re: Служба INECRMAN (Incotex ECR Manager)

Сообщение LeonidT »

Страница 6:

• model (string, необяз.) – модель ККТ с которой устанавливается связь. По умолчанию –
119F. Допустимые значения:
∘ 119F – для ККТ «Меркурий-119Ф».
∘ 185F – для ККТ «Меркурий-115Ф», «Меркурий-130Ф», «Меркурий-180Ф» и
«Меркурий-185Ф».
Аватара пользователя
LeonidT
Сотрудник Инкотекс
Сотрудник Инкотекс
Сообщения: 396
Зарегистрирован: 18 окт 2019, 17:45

Re: Служба INECRMAN (Incotex ECR Manager)

Сообщение LeonidT »

bigjorj писал(а): 15 янв 2020, 13:53 Также путем экспериментов выяснили, что подключение проходит только если указываем номер порта в формате \\.\COM20
При использовании Windows API номера COM-портов с 1 по 9 могут передаваться как "COM1" ... "COM9", так и как "\\.\COM1" ... "\\.\COM9". Имена портов с двузначными номерами должны передаваться только так, как Вы и указали ("\\.\COM20").
В следующей версии драйвера будет добавлена возможность передачи имён портов с двузначными номерами без использования обратных слешей.
Аватара пользователя
tks31597
Сообщения: 54
Зарегистрирован: 10 фев 2017, 10:23

Re: Служба INECRMAN (Incotex ECR Manager)

Сообщение tks31597 »

Предложения:
1. Добавить в команды OpenCheck, AddGoods, CloseCheck не обязательный параметр ”CancelingCheck по умолчанию False ” - отменять чек в случае ошибки например:
”CancelingCheck”: False // Ничего не делать выводить ошибку стандартно, пользователь решает сам, что делать дальше
”CancelingCheck”: Trye // Отменить чек, выводить ошибку например 900-отмена чека успешно, 901-не удалось отменить чек

1. Сделать пакетную обработку команд например для пробития чека, ПОЗВОЛИТ снизить общую нагрузку,
повысит производительность, сделает проще разработку и контроль ПО
Например: command”: ”CommandPacet”- команда пакетного режима, параметр ”ListCommands”-список команд
{
”sessionKey”: ”CAC1A797-6A48-474A-A08E-72A8CD3AEFE2”,
”command”: ”CommandPacet”,
”ListCommands”:
{
{
”command”: ”OpenCheck”,
...
},
{
”command”: ”AddGoods”,
...
},
{
”command”: ”. №.. AddGoods”,
...
},
{
”cashierName”: ”CloseCheck”,
...
}
}
}
Аватара пользователя
sanichsm
Сообщения: 13
Зарегистрирован: 14 дек 2019, 13:50
Откуда: Смоленская область

Re: Служба INECRMAN (Incotex ECR Manager)

Сообщение sanichsm »

Help3 писал(а): 14 ноя 2019, 16:18 3. Служба INECRMAN содержит в себе встроенный конфигуратор MercConfig2
У нас MercConfig 1.1.4 работает, на складе скидываем базу товаров на флешку. Вместе с товаром передаем в магаз флешку. Продавцы обновляют с флешки базу товаров в М185Ф. Но в MercConfig 1.1.4 не хранит коды маркировки.
Конфигуратор MercConfig2 вроде поддерживает маркировку, но он только встроенный в INECRMAN.
Можно надеяться и ожидать MercConfig2, которым можно будет на флешке передать базу товаров с кодами маркировки?
Аватара пользователя
Help5
Сотрудник Инкотекс
Сотрудник Инкотекс
Сообщения: 835
Зарегистрирован: 18 янв 2019, 09:42

Re: Служба INECRMAN (Incotex ECR Manager)

Сообщение Help5 »

Используйте MercBase viewtopic.php?f=19&t=4733
Аватара пользователя
tks31597
Сообщения: 54
Зарегистрирован: 10 фев 2017, 10:23

Re: Служба INECRMAN (Incotex ECR Manager)

Сообщение tks31597 »

Как подключиться кассу у службе по интерфейсу Bluetooth?
Какие параметры в команде "Открытие сессии" ?
Аватара пользователя
LeonidT
Сотрудник Инкотекс
Сотрудник Инкотекс
Сообщения: 396
Зарегистрирован: 18 окт 2019, 17:45

Re: Служба INECRMAN (Incotex ECR Manager)

Сообщение LeonidT »

Подключение по Bluetooth с точки зрения обращения к службе ничем не отличается, необходимо указывать СОМ порт полученный при настройке Bluetooth соединения. В ОС Windows номер СОМ порта можно посмотреть в диспетчере устройств.
Аватара пользователя
Vad71
Сообщения: 3
Зарегистрирован: 26 янв 2020, 20:21

Re: Служба INECRMAN (Incotex ECR Manager)

Сообщение Vad71 »

Здравствуйте.
Появились вопросы:
1.
Каждый ответ на команды, в обязательном порядке, содержит следующие ключи:
• result (integer, обяз.) – Код завершения операции. В случае успешного выполнения команды
возвращается 0, в противном случае – код ошибки.
Есть ли перечень/таблица таких кодов ошибок и может ли код содержать минус? Получил -218 - "открытие смены"
2. Есть ли х-отчет?
3. Печать текста (PrintText) - есть ли номера шрифтов?
4. Закрытие (регистрация) чека (CloseCheck) - э.
Аватара пользователя
Vad71
Сообщения: 3
Зарегистрирован: 26 янв 2020, 20:21

Re: Служба INECRMAN (Incotex ECR Manager)

Сообщение Vad71 »

4. Закрытие (регистрация) чека (CloseCheck) - после закрытия смены и снятия z-отчета ошибка "-217 Ошибка физического обмена : Vcom: Ответная сторона аварийно прекратила приём" . На ККМ выводится "ОШИБКА 036 НЕТ РЕСУРСОВ ДЛЯ ВЫПОЛНЕНИЯ ОПЕРАЦИИ". Это что?
Аватара пользователя
Dinariys
Сообщения: 4
Зарегистрирован: 27 янв 2020, 17:18
Откуда: Варна
Контактная информация:

Re: Служба INECRMAN (Incotex ECR Manager)

Сообщение Dinariys »

Здравствуйте.
Тестируемая касса Меркурий 185Ф.
1. Вопрос является ли правильным поведением, возвращение кода ошибки -218 на разные события. Например:
  • Смена уже ранее была закрыта, при попытке повторного закрытия возвращается ошибка -218 с описанием, что смена закрыта. Тут всё верно.
  • Смена уже открыта, выполняем открытие смены и ошибка возвращается вновь -218, только с другим описанием, смена открыта. Вот тут думаю уже не верно. Мне кажется для данного события должен быть другой код.
2. И еще один вопрос или может пожелание в документации, указано:

Код: Выделить всё

fiscalDocNum (integer, обяз.) – номер фискального документа.
Тип данных Integer, на деле же получается, что там идет long(Int64). Если возможно дополните пожалуйста документацию или указав длину данных или указав более точно тип.

3. Поле fiscalSign имеет тип integer по документации, но в случае возникновении ошибки возвращает пусто поле (string), а не ноль. Например такое происходит в случае CloseCheck() если в этот момент в кассе нет бумаги.

4. По поводу нет бумаги, как правильно будет обработать данную ситуацию?
  • Запрашивать GetStatus() перед закрытием чека, так вроде не хотелось бы лишний раз обращаться к устройству.
  • Думал обработать ситуацию с не полученным fiscalSign и после отправить команду ResetCheck(), но пока пользователь не вставит бумагу и не подтвердит (нажав ПИ) к устройству обратиться не получается, просто будет прервано по таймауту.
Заранее спасибо.
Аватара пользователя
AntonR
Сотрудник Инкотекс
Сотрудник Инкотекс
Сообщения: 274
Зарегистрирован: 28 янв 2020, 15:18

Re: Служба INECRMAN (Incotex ECR Manager)

Сообщение AntonR »

Vad71 писал(а): 27 янв 2020, 13:57 1. Есть ли перечень/таблица таких кодов ошибок и может ли код содержать минус? Получил -218 - "открытие смены"
Пока такой единой таблицы нет. Будем создавать. Минусовые ошибки могут быть.
Vad71 писал(а): 27 янв 2020, 13:57 2. Есть ли х-отчет?
У Меркурий-119Ф есть х-отчет, у портативок пока нет. Команда

Код: Выделить всё

PrintReport
Не попала в текущий документ описания протокола. Будет добавлена.
Vad71 писал(а): 27 янв 2020, 13:57 3. Печать текста (PrintText) - есть ли номера шрифтов?
Нет, шрифт только один.
Vad71 писал(а): 27 янв 2020, 14:00 4. Закрытие (регистрация) чека (CloseCheck) - после закрытия смены и снятия z-отчета ошибка "-217 Ошибка физического обмена : Vcom: Ответная сторона аварийно прекратила приём" . На ККМ выводится "ОШИБКА 036 НЕТ РЕСУРСОВ ДЛЯ ВЫПОЛНЕНИЯ ОПЕРАЦИИ". Это что?
Такое возникает, когда на кассе включен отчет по товарам на закрытие смены. Пока не доработают ПО кассы, советуем отключить все лишние отчеты.
Аватара пользователя
AntonR
Сотрудник Инкотекс
Сотрудник Инкотекс
Сообщения: 274
Зарегистрирован: 28 янв 2020, 15:18

Re: Служба INECRMAN (Incotex ECR Manager)

Сообщение AntonR »

Dinariys писал(а): 27 янв 2020, 17:28 1. Вопрос является ли правильным поведением, возвращение кода ошибки -218 на разные события. Например:
Смена уже ранее была закрыта, при попытке повторного закрытия возвращается ошибка -218 с описанием, что смена закрыта. Тут всё верно.
Смена уже открыта, выполняем открытие смены и ошибка возвращается вновь -218, только с другим описанием, смена открыта. Вот тут думаю уже не верно. Мне кажется для данного события должен быть другой код.
Замечание приняли. Учтем в следующих обновлениях.
Dinariys писал(а): 27 янв 2020, 17:28 2. И еще один вопрос или может пожелание в документации, указано:
КОД: ВЫДЕЛИТЬ ВСЁ

fiscalDocNum (integer, обяз.) – номер фискального документа.
Тип данных Integer, на деле же получается, что там идет long(Int64). Если возможно дополните пожалуйста документацию или указав длину данных или указав более точно тип.
На данный момент есть расхождение с документацией. fiscalDocNum возвращается строкой. Исправим на целое и опишем в докуметации.
Dinariys писал(а): 27 янв 2020, 17:28 3. Поле fiscalSign имеет тип integer по документации, но в случае возникновении ошибки возвращает пусто поле (string), а не ноль. Например такое происходит в случае CloseCheck() если в этот момент в кассе нет бумаги.
См. п.2.
Dinariys писал(а): 27 янв 2020, 17:28 4. По поводу нет бумаги, как правильно будет обработать данную ситуацию?
Запрашивать GetStatus() перед закрытием чека, так вроде не хотелось бы лишний раз обращаться к устройству.
Думал обработать ситуацию с не полученным fiscalSign и после отправить команду ResetCheck(), но пока пользователь не вставит бумагу и не подтвердит (нажав ПИ) к устройству обратиться не получается, просто будет прервано по таймауту.
На текущем развитии ПО портативных ККТ вообще нет контроля бумаги и не получится программно сделать за этим. Будем дорабатывать.
Аватара пользователя
Dinariys
Сообщения: 4
Зарегистрирован: 27 янв 2020, 17:18
Откуда: Варна
Контактная информация:

Re: Служба INECRMAN (Incotex ECR Manager)

Сообщение Dinariys »

Спасибо большое.
Аватара пользователя
selpro13
Сообщения: 16
Зарегистрирован: 27 май 2019, 10:21

Re: Служба INECRMAN (Incotex ECR Manager)

Сообщение selpro13 »

Здравствуйте.
Подскажите, а развитие Merconfig 1.1.4.0 дальше будет? Или теперь нужно переходить на INECRMAN (в которой merconfig2) и работать через браузер.
В Merconfig 1.1.4.0 мне было удобно т.к. все в одном приложении: и база товаров и настройки как опций агентов, так и ОФД, ФН, WiFi/GPRS, Операторы. А подключившись через браузер, я вижу только закладки ККТ, ОПЦИИ, Агент. Базу товаров могу редактировать через дополнительное приложение MercBase. А остальные настройки редактировать есть возможность ? (через приложения)
Аватара пользователя
Димитрий
Сообщения: 83
Зарегистрирован: 30 янв 2018, 14:20

Re: Служба INECRMAN (Incotex ECR Manager)

Сообщение Димитрий »

Здравствуйте.
Через ИнЭкрМен возможно как-то опции сохранить на ПК, чтоб затем перезалить в другую ККТ ?
Если ДА, то как ?
Аватара пользователя
AJE
Сообщения: 10
Зарегистрирован: 18 мар 2011, 00:11

Re: Служба INECRMAN (Incotex ECR Manager)

Сообщение AJE »

Добрый день!При подключении через браузер(пробовал Ghrome и IE)связь с ККТ Меркурий 185Ф устанавливается,а при "Прием из ККТ" появляется ошибка "Код - 1". Версия ККТ от 11.12.2019,Служба 1.5.0.281.В чем может быть причина?
Аватара пользователя
elkt
Сообщения: 1
Зарегистрирован: 11 фев 2020, 15:54

Re: Служба INECRMAN (Incotex ECR Manager)

Сообщение elkt »

Добрый день.
MercConfig2 находится по адресу localhost:8080. Как изменить номер порта. Нужно запустить транспортный модуль.
Спасибо.
Ответить