Сообщения без ответов | Активные темы Текущее время: Чт мар 28, 2024 2:29 pm



Ответить на тему  [ Сообщений: 15 ] 
Возврат к незавершенному чеку! 
Автор Сообщение
Новичок

Зарегистрирован: Сб окт 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
Профиль WWW
Новичок

Зарегистрирован: Сб окт 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
Профиль WWW
Новичок

Зарегистрирован: Сб окт 07, 2006 4:05 pm
Сообщения: 13
Откуда: Москва
Сообщение 
Этот файл не может быть не от последнего чека, так как он не обработан и новый запрос не может быть отправлен пока этот файл не будет удален, более того в файле ответа может быть отказ в авторизации кредитной карты покупателя.
И как объяснить покупателю, что у него снялись деньги с карты,
а чек еще не распечатан и в слипе он не расписался.

_________________
Андрей К.
Универсам Александр СМ


Вт окт 10, 2006 6:06 pm
Профиль
Новичок

Зарегистрирован: Вт мар 22, 2005 1:35 pm
Сообщения: 78
Сообщение 
А разве сервер авторизации автоматически не делает отмену в случае, когда файл с ответом не был удален кассой после заданного таймаута?


Ср окт 11, 2006 11:40 am
Профиль
Новичок

Зарегистрирован: Сб окт 07, 2006 4:05 pm
Сообщения: 13
Откуда: Москва
Сообщение 
К сожалению не делает отмену и не удаляет файл ответа.

_________________
Андрей К.
Универсам Александр СМ


Ср окт 11, 2006 1:46 pm
Профиль
Постоянный участник
Аватара пользователя

Зарегистрирован: Пн мар 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
Профиль WWW
Новичок

Зарегистрирован: Сб окт 07, 2006 4:05 pm
Сообщения: 13
Откуда: Москва
Сообщение 
Да уж сам доработал.
Между прочим работа с ПИН-ПАДом при автоизации ABG в кассовой программе не имеет настроек (как настроить СОМ порт), константу КлючДляПинПада где вводить??

_________________
Андрей К.
Универсам Александр СМ


Чт окт 12, 2006 3:43 pm
Профиль
Новичок

Зарегистрирован: Вт мар 22, 2005 1:35 pm
Сообщения: 78
Сообщение 
Ключ для пин-пада изменяется при операции закрытии дня через специальный ABG-запрос


Пт окт 13, 2006 4:52 pm
Профиль
Новичок

Зарегистрирован: Сб окт 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
Профиль
Новичок

Зарегистрирован: Сб окт 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
Профиль
Новичок

Зарегистрирован: Вт мар 22, 2005 1:35 pm
Сообщения: 78
Сообщение 
В ближайшее время планируется доделать авторизацию по ABG протоколу с учетом всех требований UCS, в том числе и голосовой авторизацией.


Пн окт 16, 2006 5:57 pm
Профиль
Новичок

Зарегистрирован: Сб окт 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
Профиль
Постоянный участник
Аватара пользователя

Зарегистрирован: Пн мар 14, 2005 10:11 am
Сообщения: 2358
Откуда: Штрих-М
Сообщение 
Спасибо , учтём.

_________________
_________________
С уважением, Суворов Антон,
Преподаватель учебно-тренингового центра
e-mail: suvorov@shtrih-m.ru,
тел. (495) 787-60-90.


Пт окт 27, 2006 3:09 pm
Профиль WWW
Показать сообщения за:  Поле сортировки  
Ответить на тему   [ Сообщений: 15 ] 

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by STSoftware for PTF.
Русская поддержка phpBB