Меркурий МСК и не фискальный документ.

Модели:
Меркурий-114.1К, Меркурий 115Ф, Меркурий 119Ф, Меркурий 130ф, Меркурий MS-K
Аватара пользователя
Cramac
Сообщения: 27
Зарегистрирован: 14 май 2015, 14:23

Re: Меркурий МСК и не фискальный документ.

Сообщение Cramac » 19 май 2015, 14:22

А подскажите еще, как производить продажу с использованием карт?
тот же принцип что с обычным чеком только CloseCheck только налом это 2 параметр, а картой 3тий?

Аватара пользователя
slan
Сообщения: 1157
Зарегистрирован: 18 фев 2011, 11:36
Откуда: Курск

Re: Меркурий МСК и не фискальный документ.

Сообщение slan » 19 май 2015, 15:27

Да.

Аватара пользователя
Cramac
Сообщения: 27
Зарегистрирован: 14 май 2015, 14:23

Re: Меркурий МСК и не фискальный документ.

Сообщение Cramac » 20 май 2015, 11:01

Здравствуйте. Сегодня опробовали на рабочем терминале произвести продажу.
В итоге при печати не фискального документа, касса зависла.

Терминал передал такое на печать:

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

           ЗООМАГАЗИН СТАФФ          
     П-Посад, ул. Выставкина, 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 мысль, разбить то что передает терминал на куски по мельче и выводить частями.

Аватара пользователя
slan
Сообщения: 1157
Зарегистрирован: 18 фев 2011, 11:36
Откуда: Курск

Re: Меркурий МСК и не фискальный документ.

Сообщение slan » 20 май 2015, 13:33

Проверил Ваш чек. Передал всё одной строкой методу ПечатьНефискСтроки, проблем не обнаружил.
Изображение

Аватара пользователя
Cramac
Сообщения: 27
Зарегистрирован: 14 май 2015, 14:23

Re: Меркурий МСК и не фискальный документ.

Сообщение Cramac » 20 май 2015, 14:00

что же у меня не так? проверил на другой кассе, тоже самое.

уже вот такое сделал

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

                if (msk.PrintNotFiscalString(DevId, data) == true)
                { MessageBox.Show("true"); }
                else
                { MessageBox.Show("false");  }
возвращает false.

Может ли это зависеть от прошивки кассы?
Или может есть некий параметр, время ожидания ответа от кассы?
Скорость порта (пробовал 57600 и 115200) роли не играет, виснет на 1012 символе при печати.

Аватара пользователя
slan
Сообщения: 1157
Зарегистрирован: 18 фев 2011, 11:36
Откуда: Курск

Re: Меркурий МСК и не фискальный документ.

Сообщение slan » 20 май 2015, 14:19

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

p.s. прошивка на моем фр Меркурий MS-K 1.0 B5.6.6

Аватара пользователя
Cramac
Сообщения: 27
Зарегистрирован: 14 май 2015, 14:23

Re: Меркурий МСК и не фискальный документ.

Сообщение Cramac » 20 май 2015, 14:54

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

        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";

Аватара пользователя
Cramac
Сообщения: 27
Зарегистрирован: 14 май 2015, 14:23

Re: Меркурий МСК и не фискальный документ.

Сообщение Cramac » 20 май 2015, 16:15

полный код для работы с ККМ
https://yadi.sk/d/9Pcw2965gkyKb

Аватара пользователя
slan
Сообщения: 1157
Зарегистрирован: 18 фев 2011, 11:36
Откуда: Курск

Re: Меркурий МСК и не фискальный документ.

Сообщение slan » 20 май 2015, 16:21

Драйвер версии 2.х не имеет никакого отношения к драйверу 1.х , а так же к утилите тестовой в том драйвере. Он разрабатывался с нуля.
Я бы советовал Вам выполнить сброс ККМ к заводским настройкам (перемычками на плате), и сразу проверить с драйвером 2.х, не запуская никаких тестовых утилит и проверок от драйвера 1.х. Если Вам нужна утилита для тестов, такая есть на этом форуме FR Tools, утилита для проверки работы и настройки фискальных регистраторов Меркурий, но в ней нет функционала проверки печати нефискальных данных.

p.s. Ваш буфер у меня распечатался без проблем. Я Ваш код смотреть даже не буду, так как сишарп знаю поверхностно

Изображение

Аватара пользователя
Cramac
Сообщения: 27
Зарегистрирован: 14 май 2015, 14:23

Re: Меркурий МСК и не фискальный документ.

Сообщение Cramac » 20 май 2015, 16:27

кассу сбросить не могу, стоит на учете.
FR Tools тоже уже качал и пробовал, но как сказали, в ней нет НЕ фискального.
Могу грешить еще на переходник usb-com.
можете выложить пример кода на том что используете? посмотрю, может что найду.

Аватара пользователя
slan
Сообщения: 1157
Зарегистрирован: 18 фев 2011, 11:36
Откуда: Курск

Re: Меркурий МСК и не фискальный документ.

Сообщение slan » 20 май 2015, 16:34

Да ничего особенного, после подключения:

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

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());
В результате получается чек, скрин которого в предыдущем сообщении

Аватара пользователя
Cramac
Сообщения: 27
Зарегистрирован: 14 май 2015, 14:23

Re: Меркурий МСК и не фискальный документ.

Сообщение Cramac » 20 май 2015, 17:01

да, все тоже самое, на разных языках. у Вас работает, у меня нет....
Касса у Вас подключена через ком или переходник usb-com?

Аватара пользователя
slan
Сообщения: 1157
Зарегистрирован: 18 фев 2011, 11:36
Откуда: Курск

Re: Меркурий МСК и не фискальный документ.

Сообщение slan » 20 май 2015, 17:18

через ком обычный, точнее мультипортовка в комп воткнута

Аватара пользователя
Cramac
Сообщения: 27
Зарегистрирован: 14 май 2015, 14:23

Re: Меркурий МСК и не фискальный документ.

Сообщение Cramac » 20 май 2015, 17:22

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

Аватара пользователя
slan
Сообщения: 1157
Зарегистрирован: 18 фев 2011, 11:36
Откуда: Курск

Re: Меркурий МСК и не фискальный документ.

Сообщение slan » 20 май 2015, 17:25

Очень жаль, что у Вас нет возможности провести сброс к заводским настройкам. Бывает что помогает

Аватара пользователя
Cramac
Сообщения: 27
Зарегистрирован: 14 май 2015, 14:23

Re: Меркурий МСК и не фискальный документ.

Сообщение Cramac » 20 май 2015, 17:34

уточним, можно ли это сделать с резервной кассой (в резерве с 2012г). Отпишусь, если что.
Пока использую костыль, в виде печати построчно.

Аватара пользователя
slan
Сообщения: 1157
Зарегистрирован: 18 фев 2011, 11:36
Откуда: Курск

Re: Меркурий МСК и не фискальный документ.

Сообщение slan » 21 май 2015, 09:29

Кстати, для перевода строки необязательно использовать "\r\n", достаточно одного "\n"

Аватара пользователя
Мститель3000
Сообщения: 7
Зарегистрирован: 16 фев 2015, 15:20

Re: Меркурий МСК и не фискальный документ.

Сообщение Мститель3000 » 04 июн 2015, 15:19

А где найти исходники драйвера? Пишу на JavaScript, я так понимаю библиотеки для этого языка нет, приходится разрабатывать с нуля.

Аватара пользователя
slan
Сообщения: 1157
Зарегистрирован: 18 фев 2011, 11:36
Откуда: Курск

Re: Меркурий МСК и не фискальный документ.

Сообщение slan » 04 июн 2015, 16:50

Исходники драйвера не найти. Это не проект с открытым исходным кодом. Насколько я знаю, JavaScript позволяет работать с внешними серверами OLE Automation. Как - не знаю, я знаю этот язык поверхностно

Аватара пользователя
Cramac
Сообщения: 27
Зарегистрирован: 14 май 2015, 14:23

Re: Меркурий МСК и не фискальный документ.

Сообщение Cramac » 28 янв 2016, 13:47

Приветствую. Подскажите еще по такому вопросы.
в драйверах 1.х была фишка печати клеше таким способом:

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

[b]AddHeaderLine
AddHeaderLine(LineNum: integer; Flags: integer; HOffset: integer;
VOffset: integer): void;[/b]
Добавление в буфер открытого фискального документа реквизита «Строка клише». В документе обязательно должен присутствовать данный реквизит хотя бы для одной из строк
клише. Для ККМ поколений 3 и 7 при включенном графическом клише и добавленном в
документ реквизите «Графическое клише», использование реквизита «Строка клише» является необязательным, хотя и допустимым. Повтор реквизита (для одной и той же строки клише) не допустим.
В версии 2.х Не нашел аналога. Печатает запрограммированное клише. Есть ли вариант программно не печатать клише?

Ответить