Меркурий МСК и не фискальный документ.
Re: Меркурий МСК и не фискальный документ.
А подскажите еще, как производить продажу с использованием карт?
тот же принцип что с обычным чеком только CloseCheck только налом это 2 параметр, а картой 3тий?
тот же принцип что с обычным чеком только CloseCheck только налом это 2 параметр, а картой 3тий?
Re: Меркурий МСК и не фискальный документ.
Здравствуйте. Сегодня опробовали на рабочем терминале произвести продажу.
В итоге при печати не фискального документа, касса зависла.
Терминал передал такое на печать:
в итоге касса повисла на печати строки "===================================="
с ошибкой
попробовал тоже самое передав такое:
string data = "lalala\r\nyayayayya\r\nyayayayya\r\nyayayayya\r\nyayayayya\r\nyayayayya";
печатает нормально. забил в переменную то что передает терминал, повис почти на том же месте.
в старом драйвере есть утилита для проверки ФР. Передал туда все это, напечатало, но там где мое ПО зависает и дальше не идет, утилита подвисает но думает дальше, печатает в 3 захода и отрезает. Что не так с моим вариантом что он виснет и не идет дальше?
приходит только 1 мысль, разбить то что передает терминал на куски по мельче и выводить частями.
В итоге при печати не фискального документа, касса зависла.
Терминал передал такое на печать:
Код: Выделить всё
ЗООМАГАЗИН СТАФФ
П-Посад, ул. Выставкина, 4
20.05.15 10:51
Контрольная лента
Терминал:
Пункт обслуживания:
------------------------------------
Валюта : Руб
Оплата
20.05.15 10:45 0001
Kарта: 42*************3
Тип карты: Visa
Код авторизации: ******
Сумма: 72.00
Всего операций: 1
на сумму: 72.00
Скидка: 0.00
------------------------------------
********* Отчет закончен *********
====================================
с ошибкой
печатал так:[20.05.2015 10:45:45.296] старт не фискальный принт чек
[20.05.2015 10:46:01.531] ККМ ID - 1 Последняя ошибка ККМ - Нет ответа от устройства.
Код: Выделить всё
msk.PrintNotFiscalString(DevId, data);
kkm_error();
msk.MoveCheck(DevId,2);
msk.CutCheck(DevId);
string data = "lalala\r\nyayayayya\r\nyayayayya\r\nyayayayya\r\nyayayayya\r\nyayayayya";
печатает нормально. забил в переменную то что передает терминал, повис почти на том же месте.
в старом драйвере есть утилита для проверки ФР. Передал туда все это, напечатало, но там где мое ПО зависает и дальше не идет, утилита подвисает но думает дальше, печатает в 3 захода и отрезает. Что не так с моим вариантом что он виснет и не идет дальше?
приходит только 1 мысль, разбить то что передает терминал на куски по мельче и выводить частями.
Re: Меркурий МСК и не фискальный документ.
Проверил Ваш чек. Передал всё одной строкой методу ПечатьНефискСтроки, проблем не обнаружил.
Re: Меркурий МСК и не фискальный документ.
что же у меня не так? проверил на другой кассе, тоже самое.
уже вот такое сделал
возвращает false.
Может ли это зависеть от прошивки кассы?
Или может есть некий параметр, время ожидания ответа от кассы?
Скорость порта (пробовал 57600 и 115200) роли не играет, виснет на 1012 символе при печати.
уже вот такое сделал
Код: Выделить всё
if (msk.PrintNotFiscalString(DevId, data) == true)
{ MessageBox.Show("true"); }
else
{ MessageBox.Show("false"); }
Может ли это зависеть от прошивки кассы?
Или может есть некий параметр, время ожидания ответа от кассы?
Скорость порта (пробовал 57600 и 115200) роли не играет, виснет на 1012 символе при печати.
Re: Меркурий МСК и не фискальный документ.
Время ожидания ответа от кассы в принципе есть, но наружу оно не смотрит. То есть недоступно для конфигурирования из-под данного драйвера. Не думаю что зависит от прошивки кассы, хотя все может быть. Учтите, что true и VARIANT_TRUE это не одно и то же.
Посоветовать могу одно - разбивайте буфер на мелкие куски, ищите на каком куске происходит ошибка.
p.s. прошивка на моем фр Меркурий MS-K 1.0 B5.6.6
Посоветовать могу одно - разбивайте буфер на мелкие куски, ищите на каком куске происходит ошибка.
p.s. прошивка на моем фр Меркурий MS-K 1.0 B5.6.6
Re: Меркурий МСК и не фискальный документ.
Код: Выделить всё
private void button18_Click(object sender, EventArgs e)
{
string[] split = data.Split(new Char[] { '\r' });
foreach (string s in split)
{
if (s.Trim() != "")
{
Log.Write(s);
PrintNotFiscal22(s);
}
}
kkm_error();
msk.MoveCheck(DevId, 2);
msk.CutCheck(DevId);
}
П.С. версия ПО на кассе такое же. Драйвер 2.19.0
П.С.С. Только обратил внимания, на утилите тестовой в 1.9 драйвере, при коннекте к кассе, есть параметр - таймаут выполнения команд 1с
может в этом дело?
Может что то в параметрах ККМ?
моя строка
string data = " ЗООМАГАЗИН СТАФФ \r\n П-Посад, ул. Выставкина, 4 \r\n \r\n \r\n \r\n20.05.15 10:45\r\n ЧЕК \r\n Оплата \r\nНомер операции: 0001\r\nТерминал: 10000005\r\nПункт обслуживания: 800000000000\r\n Visa A0000000000000\r\nКарта:(C) ************0003\r\nКлиент: AAAAAAAAA/EKATERINA\r\n \r\nСумма (Руб):\r\n 72.00\r\nКомиссия за операцию - 0 руб.\r\n ОДОБРЕНО\r\nКод авторизации: 600005\r\nНомер ссылки: 500000000003\r\n Введен ПИН-код \r\n \r\n \r\n ____________________________\r\n подп.кассира(контролера)\r\n03FE9D6086AE89A78685F559C87F460754C7\r\n====================================\r\n \r\n \r\n \r\n \r\n \r\n";
Re: Меркурий МСК и не фискальный документ.
полный код для работы с ККМ
https://yadi.sk/d/9Pcw2965gkyKb
https://yadi.sk/d/9Pcw2965gkyKb
Re: Меркурий МСК и не фискальный документ.
Драйвер версии 2.х не имеет никакого отношения к драйверу 1.х , а так же к утилите тестовой в том драйвере. Он разрабатывался с нуля.
Я бы советовал Вам выполнить сброс ККМ к заводским настройкам (перемычками на плате), и сразу проверить с драйвером 2.х, не запуская никаких тестовых утилит и проверок от драйвера 1.х. Если Вам нужна утилита для тестов, такая есть на этом форуме FR Tools, утилита для проверки работы и настройки фискальных регистраторов Меркурий, но в ней нет функционала проверки печати нефискальных данных.
p.s. Ваш буфер у меня распечатался без проблем. Я Ваш код смотреть даже не буду, так как сишарп знаю поверхностно
Я бы советовал Вам выполнить сброс ККМ к заводским настройкам (перемычками на плате), и сразу проверить с драйвером 2.х, не запуская никаких тестовых утилит и проверок от драйвера 1.х. Если Вам нужна утилита для тестов, такая есть на этом форуме FR Tools, утилита для проверки работы и настройки фискальных регистраторов Меркурий, но в ней нет функционала проверки печати нефискальных данных.
p.s. Ваш буфер у меня распечатался без проблем. Я Ваш код смотреть даже не буду, так как сишарп знаю поверхностно
Re: Меркурий МСК и не фискальный документ.
кассу сбросить не могу, стоит на учете.
FR Tools тоже уже качал и пробовал, но как сказали, в ней нет НЕ фискального.
Могу грешить еще на переходник usb-com.
можете выложить пример кода на том что используете? посмотрю, может что найду.
FR Tools тоже уже качал и пробовал, но как сказали, в ней нет НЕ фискального.
Могу грешить еще на переходник usb-com.
можете выложить пример кода на том что используете? посмотрю, может что найду.
Re: Меркурий МСК и не фискальный документ.
Да ничего особенного, после подключения:
В результате получается чек, скрин которого в предыдущем сообщении
Код: Выделить всё
WideString wstr = "";
wstr = L" ЗООМАГАЗИН СТАФФ \r\n П-Посад, ул. Выставкина, 4 \r\n \r\n \r\n \r\n20.05.15 10:45\r\n ЧЕК \r\n Оплата \r\nНомер операции: 0001\r\nТерминал: 10000005\r\nПункт обслуживания: 800000000000\r\n Visa A0000000000000\r\nКарта:(C) ************0003\r\nКлиент: AAAAAAAAA/EKATERINA\r\n \r\nСумма (Руб):\r\n 72.00\r\nКомиссия за операцию - 0 руб.\r\n ОДОБРЕНО\r\nКод авторизации: 600005\r\nНомер ссылки: 500000000003\r\n Введен ПИН-код \r\n \r\n \r\n ____________________________\r\n подп.кассира(контролера)\r\n03FE9D6086AE89A78685F559C87F460754C7\r\n====================================\r\n \r\n \r\n \r\n \r\n \r\n";
MSK.OleFunction("НапечататьНефискСтроку", devID.c_bstr(), wstr.c_bstr());
Re: Меркурий МСК и не фискальный документ.
да, все тоже самое, на разных языках. у Вас работает, у меня нет....
Касса у Вас подключена через ком или переходник usb-com?
Касса у Вас подключена через ком или переходник usb-com?
Re: Меркурий МСК и не фискальный документ.
через ком обычный, точнее мультипортовка в комп воткнута
Re: Меркурий МСК и не фискальный документ.
идеи у меня закончились в общем.
Остается мысль только в том что есть некое ограничение на число символов. Но опять же, в старой версии утилиты проверочной, печатается полностью.
Остается мысль только в том что есть некое ограничение на число символов. Но опять же, в старой версии утилиты проверочной, печатается полностью.
Re: Меркурий МСК и не фискальный документ.
Очень жаль, что у Вас нет возможности провести сброс к заводским настройкам. Бывает что помогает
Re: Меркурий МСК и не фискальный документ.
уточним, можно ли это сделать с резервной кассой (в резерве с 2012г). Отпишусь, если что.
Пока использую костыль, в виде печати построчно.
Пока использую костыль, в виде печати построчно.
Re: Меркурий МСК и не фискальный документ.
Кстати, для перевода строки необязательно использовать "\r\n", достаточно одного "\n"
- Мститель3000
- Сообщения: 7
- Зарегистрирован: 16 фев 2015, 15:20
Re: Меркурий МСК и не фискальный документ.
А где найти исходники драйвера? Пишу на JavaScript, я так понимаю библиотеки для этого языка нет, приходится разрабатывать с нуля.
Re: Меркурий МСК и не фискальный документ.
Исходники драйвера не найти. Это не проект с открытым исходным кодом. Насколько я знаю, JavaScript позволяет работать с внешними серверами OLE Automation. Как - не знаю, я знаю этот язык поверхностно
Re: Меркурий МСК и не фискальный документ.
Приветствую. Подскажите еще по такому вопросы.
в драйверах 1.х была фишка печати клеше таким способом:
В версии 2.х Не нашел аналога. Печатает запрограммированное клише. Есть ли вариант программно не печатать клише?
в драйверах 1.х была фишка печати клеше таким способом:
Код: Выделить всё
[b]AddHeaderLine
AddHeaderLine(LineNum: integer; Flags: integer; HOffset: integer;
VOffset: integer): void;[/b]
Добавление в буфер открытого фискального документа реквизита «Строка клише». В документе обязательно должен присутствовать данный реквизит хотя бы для одной из строк
клише. Для ККМ поколений 3 и 7 при включенном графическом клише и добавленном в
документ реквизите «Графическое клише», использование реквизита «Строка клише» является необязательным, хотя и допустимым. Повтор реквизита (для одной и той же строки клише) не допустим.