|
Страница 1 из 1
|
[ Сообщений: 15 ] |
|
Возврат к незавершенному чеку!
Автор |
Сообщение |
k0l0b0k
Новичок
Зарегистрирован: Сб окт 07, 2006 4:05 pm Сообщения: 13 Откуда: Москва
|
Возврат к незавершенному чеку!
Ситуация:
Покупатель оплачивает покупку кредитной картой, карта считывается, в аторизационный центр отправлен запрос, в это время происходит сбой кассовой программы Штрих-М кассир 2.9 (по питанию или просто глюк не важно). Перезапускаем Штрих-М кассир, программа говорит что существует не завершенный чек, предлагает вернутся к нему (очень хорошо), соглашаемся..... и что дальше еще раз проводить карту??? нельзя !!! от центра уже пришло подтверждение об оплате, кассовая программа не забрала файл ответа и не обработала его, клинч!!
Предложение:
Доработать Штрих-М кассир, что бы после перезапуска и возвращения к незавершенному чеку, проверять и обрабатывать файл ответа от авторизационного центра и завершать чек!
_________________ Андрей К.
Универсам Александр СМ
|
Сб окт 07, 2006 4:25 pm |
|
|
Вячеслав
Участник
Зарегистрирован: Вт ноя 08, 2005 3:49 pm Сообщения: 5335 Откуда: Shtrih-M
|
В настоящий момент в программе существует контроль наличия необработанных запросов и ответов, т.е. при наличии необработанного ответа авторизация проходить не будет. Если в результате сбоя обнаружен необработанный ответ от сервера, то нет гарантии что этот ответ от последнего незакрытого чека, поэтому автоматически его подхватывать при оплате было бы некорректно
_________________ С уважением, Егоров Вячеслав,
инженер технической поддержки ЗАО "Штрих-М",
e-mail: support@shtrih-m.ru,
тел. (495) 787-60-96.
|
Пн окт 09, 2006 2:19 pm |
|
|
k0l0b0k
Новичок
Зарегистрирован: Сб окт 07, 2006 4:05 pm Сообщения: 13 Откуда: Москва
|
Да ответ получен, но ответ от авторизационного центра обрабатывается кассовой программой, и он должен быть обработан и удален, что не произошло. Пока его не удалить руками, следующая авторизация проходить не будет, кассовая программа сообщает, что существует не обработанный ответ от авторизационного центра!
Это и есть гарантия, что это ответ от последнего не закрытого чека этой кассы (в настойках ABG существует галочка, "Отдельная авторизация по каждой ККМ"). Где логика!!
Если при перезапуске кассовой програмы мы согласились вернутся к не завершенному чеку , то ответ от АЦ надо обработать. Если мы бы отказались, то ответ надо удалить или сообщить о его существовании.
_________________ Андрей К.
Универсам Александр СМ
|
Вт окт 10, 2006 9:43 am |
|
|
Вячеслав
Участник
Зарегистрирован: Вт ноя 08, 2005 3:49 pm Сообщения: 5335 Откуда: Shtrih-M
|
Не согласны. А если это файл не от последнего чека? Или сумма чека после возврата в чек могла быть изменена, или был отменен чек?
_________________ С уважением, Егоров Вячеслав,
инженер технической поддержки ЗАО "Штрих-М",
e-mail: support@shtrih-m.ru,
тел. (495) 787-60-96.
|
Вт окт 10, 2006 4:25 pm |
|
|
k0l0b0k
Новичок
Зарегистрирован: Сб окт 07, 2006 4:05 pm Сообщения: 13 Откуда: Москва
|
Этот файл не может быть не от последнего чека, так как он не обработан и новый запрос не может быть отправлен пока этот файл не будет удален, более того в файле ответа может быть отказ в авторизации кредитной карты покупателя.
И как объяснить покупателю, что у него снялись деньги с карты,
а чек еще не распечатан и в слипе он не расписался.
_________________ Андрей К.
Универсам Александр СМ
|
Вт окт 10, 2006 6:06 pm |
|
|
kmt
Новичок
Зарегистрирован: Вт мар 22, 2005 1:35 pm Сообщения: 78
|
А разве сервер авторизации автоматически не делает отмену в случае, когда файл с ответом не был удален кассой после заданного таймаута?
|
Ср окт 11, 2006 11:40 am |
|
|
k0l0b0k
Новичок
Зарегистрирован: Сб окт 07, 2006 4:05 pm Сообщения: 13 Откуда: Москва
|
К сожалению не делает отмену и не удаляет файл ответа.
_________________ Андрей К.
Универсам Александр СМ
|
Ср окт 11, 2006 1:46 pm |
|
|
Suvorov_Anton
Постоянный участник
Зарегистрирован: Пн мар 14, 2005 10:11 am Сообщения: 2358 Откуда: Штрих-М
|
Этот механизм разрабатывался в соответствии с рекомендациями банка и в основном релизе программы меняться не будет, если Вы хотите изменить , тогда обратитесь к своим программистам 1с или в наш отдел внедрения 787-60-90 доб.271.
_________________ _________________
С уважением, Суворов Антон,
Преподаватель учебно-тренингового центра
e-mail: suvorov@shtrih-m.ru,
тел. (495) 787-60-90.
|
Ср окт 11, 2006 6:06 pm |
|
|
k0l0b0k
Новичок
Зарегистрирован: Сб окт 07, 2006 4:05 pm Сообщения: 13 Откуда: Москва
|
Да уж сам доработал.
Между прочим работа с ПИН-ПАДом при автоизации ABG в кассовой программе не имеет настроек (как настроить СОМ порт), константу КлючДляПинПада где вводить??
_________________ Андрей К.
Универсам Александр СМ
|
Чт окт 12, 2006 3:43 pm |
|
|
kmt
Новичок
Зарегистрирован: Вт мар 22, 2005 1:35 pm Сообщения: 78
|
Ключ для пин-пада изменяется при операции закрытии дня через специальный ABG-запрос
|
Пт окт 13, 2006 4:52 pm |
|
|
k0l0b0k
Новичок
Зарегистрирован: Сб окт 07, 2006 4:05 pm Сообщения: 13 Откуда: Москва
|
Ну с ПИН-ПАДом вроде разобрался, должен быть файл SMEngine.INI в котором есть настройки, которрый я нашел в Штрих-М кассир 1.9.
Только почему нигде в документации это не описанно???
Есть предложение не много изменить обработку в Штрих-М кассир 2.9 и 1.9.
Обработка.АвторизацияABG строка 140
-------------------------------------
ВывестиПредупреждение("Ошибка авторизации: Превышен таймаут ожидания ответа!"+РазделительСтрок+"Позвоните в ЦА.","Ошибка авторизации!");
~V: Если ВывестиВопрос("Будете проводить авторизацию по телефону?","Да+Нет")="Да" Тогда
КодАвт="";
ВвестиСтроку(КодАвт,"Введите код авторизации",6);
If КодАвт="" then
ВывестиПредупреждение("Код авторизации не введен, продолжение невозможно!","Ошибка!");
GoTo ~V;
EndIf;
...
----------------------------------------
Это то что было:
ВывестиПредупреждение("Ошибка авторизации: Превышен таймаут ожидания ответа!"+РазделительСтрок+"Позвоните в ЦА.","Ошибка авторизации!");
Если ВывестиВопрос("Аторизация прошла?","Да+Нет")="Да" Тогда
КодАвт="";
ВвестиСтроку(КодАвт,"ВВедите код авторизации",6);
.....
_________________ Андрей К.
Универсам Александр СМ
|
Сб окт 14, 2006 1:32 pm |
|
|
k0l0b0k
Новичок
Зарегистрирован: Сб окт 07, 2006 4:05 pm Сообщения: 13 Откуда: Москва
|
А также поправить строку 110 в Штрих-М 2.9 .
Если не передаем Номер чека, то не передаем , а не заполняем нулями ( +Формат(НомЧ,"Ч(0)4")+ ) и в место ( +Формат("","С12")+ ) подставить дату и время без точек и двоеточий.
Вот так:
--------------------------
Стр=" "+Формат(НомЧ,"С4")+"R"+Формат("","С23")+Формат(СчитанныйНомерКарты,"С40")+Формат(Строка(Сумма*100),"С12")+
СтрЗаменить(ТекущаяДата(),".","")+СтрЗаменить(ТекущееВремя(),":","")+ТипСтр+Формат(Код,"С9")+Формат("","С18")+Формат(Константа.НомерПОС,"Ч(0)3")+"p"+Формат("","С28")+"1"+RRN+ПинБлок+" ";
---------------------------
_________________ Андрей К.
Универсам Александр СМ
|
Сб окт 14, 2006 1:48 pm |
|
|
kmt
Новичок
Зарегистрирован: Вт мар 22, 2005 1:35 pm Сообщения: 78
|
В ближайшее время планируется доделать авторизацию по ABG протоколу с учетом всех требований UCS, в том числе и голосовой авторизацией.
|
Пн окт 16, 2006 5:57 pm |
|
|
k0l0b0k
Новичок
Зарегистрирован: Сб окт 07, 2006 4:05 pm Сообщения: 13 Откуда: Москва
|
Очень хорошо, что наконец то Штрих-М решил доделать авторизацию по ABG протоколу с учетом всех требований UCS.
Мы как раз через UCS и работаем, по этому могу предложить еще пару изменений связанных с закрытием дня покарточкам ABG.
Во первых удалить ввыгрузке в отчет все лишние пробелы.
Штрих-М кассир 2.9 Обработка.Супервизор Строка 1399
-------------------------
Стр=СокрЛП(Формат(Спр.term_no,"Ч(0)3"))+","+СокрЛП(Спр.card_no)+","+СокрЛП(Строка(ДатаГод(Спр.exp_date)))+СокрЛП(Формат(ДатаМесяц(Спр.exp_date),"Ч(0)2"))+
СокрЛП(Формат(ДатаЧисло(Спр.exp_date),"Ч(0)2"))+","+СокрЛП(Спр.amount)+","+СокрЛП(Спр.authcode)+","+СокрЛП(Формат(Спр.msg_no,"Ч(0)4"))+","+СокрЛП(ДатаГод(Спр.txn_date))+
СокрЛП(Формат(ДатаМесяц(Спр.txn_date),"Ч(0)2"))+СокрЛП(Формат(ДатаЧисло(Спр.txn_date),"Ч(0)2"))+","+СокрЛП(Спр.txn_time)+","+СокрЛП(Спр.txn_type);
-------------------------
Во вторых в конце каждой строчки вместо конец строки (0D0A) оставить только (0A код символа 10), я не знаю почему но только так обрабатывается выгрузка в UCS.
Штрих-М кассир 2.9 Обработка.Супервизор строка 1480
-------------------------
// вместо
// ФайлЗаписать(СокрЛП(Константа.КаталогABG)+?(Прав(СокрЛП(Константа.КаталогABG),1)="\","","\")+"~R"+Формат(Константа.НомерОтчетаABG+1,"Ч(0)7")+".tmp");
// надо
ИмяОтчТмп=СокрЛП(Константа.КаталогABG)+?(Прав(СокрЛП(Константа.КаталогABG),1)="\","","\")+"TMP"+Формат(Константа.НомерОтчетаABG+1,"Ч(0)7")+".tmp";
ИмяОтч=СокрЛП(Константа.КаталогABG)+?(Прав(СокрЛП(Константа.КаталогABG),1)="\","","\")+"~R"+Формат(Константа.НомерОтчетаABG+1,"Ч(0)7")+".tmp";
Файл.Записать(ИмяОтчТмп);
Text_1=СоздатьОбъект("Текст");
Text_2=СоздатьОбъект("Текст");
Text_1.Открыть (ИмяОтчТмп);
S="";
K=Text_1.КоличествоСтрок();
Для i=1 по K Цикл
S=S+TrimAll(Text_1.ПолучитьСтроку(i))+симв(10);
КонецЦикла;
Text_2.ДобавитьСтроку(S);
Text_2.Записать (ИмяОтч);
ФС.УдалитьФайл (ИмяОтчТмп);
-------------------------
_________________ Андрей К.
Универсам Александр СМ
|
Ср окт 18, 2006 9:13 am |
|
|
Suvorov_Anton
Постоянный участник
Зарегистрирован: Пн мар 14, 2005 10:11 am Сообщения: 2358 Откуда: Штрих-М
|
Спасибо , учтём.
_________________ _________________
С уважением, Суворов Антон,
Преподаватель учебно-тренингового центра
e-mail: suvorov@shtrih-m.ru,
тел. (495) 787-60-90.
|
Пт окт 27, 2006 3:09 pm |
|
|
|
Страница 1 из 1
|
[ Сообщений: 15 ] |
|
Кто сейчас на конференции |
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1 |
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения
|
|