Membros Pro JLuis Postado 2 Junho, 2023 Membros Pro Compartilhar Postado 2 Junho, 2023 Bom dia, Atualizei os fontes e verifiquei que foi implementada uma nova função para verificar a presença do pinpad "VerificarPresencaPinPad", algo que considero de grande importância se permitir que possamos verificar se o equipamento está devidamente conectado e configurado já na abertura do sistema pois evitaria de o problema só ser percebido na hora de processar o pagamento. Ao testar verifiquei que ao chamar a função está ocorrendo um AV.... também não consegui localizar nos fontes quais seriam os possíveis valores de retorno, apenas que retorna um tipo byte. Utilizo a PayGoWeb DLL. Grato. Link para o comentário Compartilhar em outros sites More sharing options...
Moderadores Juliomar Marchetti Postado 2 Junho, 2023 Moderadores Compartilhar Postado 2 Junho, 2023 no componente ACBrTEFAPI. vale lembrar a dll está atualizada? Juliomar Marchetti skype: juliomar telegram: juliomar e-mail: [email protected] http://www.juliomarmarchetti.com.br Link para o comentário Compartilhar em outros sites More sharing options...
Fundadores Daniel Simoes Postado 2 Junho, 2023 Fundadores Compartilhar Postado 2 Junho, 2023 Oi @JLuis, eu ainda estou trabalhando nessa função... Eu notei que ela é demorada, fica varrendo todas as portas seriais... Sabe em que linha ocorreu o A.V. ? Daniel Simões de Almeida O melhor TEF, é com o Projeto ACBr - Clique e Conheça Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976. Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro JLuis Postado 2 Junho, 2023 Autor Membros Pro Compartilhar Postado 2 Junho, 2023 Ocorre na unit ACBrTEFAPI.pas linha 327 function TACBrTEFAPI.GetTEFAPIClass: TACBrTEFAPIClass; begin Result := TACBrTEFAPIClass(fpTEFAPIClass); // <<<--- end; A DLL (PGWebLib.dll) é a de homologação versão 4.1.15.1. O pinpad é um Gertec PPC 930 versão 2.12. Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro JLuis Postado 2 Junho, 2023 Autor Membros Pro Compartilhar Postado 2 Junho, 2023 Daniel, desculpe, falha minha... verifiquei agora que eu estava chamando a função antes da minha rotina de configuração do componente, então corrigi e o AV não ocorreu mais, apenas demorou um tempo e deu a mensagem de "Erro de comunicação com o pinpad" mesmo ele estando conectado e funcionando normal. Link para o comentário Compartilhar em outros sites More sharing options...
Fundadores Solution Daniel Simoes Postado 2 Junho, 2023 Fundadores Solution Compartilhar Postado 2 Junho, 2023 Pois é.. a função para não estar funcionando como deveria... e a documentação que recebemos não está ajudando muito... 1 Daniel Simões de Almeida O melhor TEF, é com o Projeto ACBr - Clique e Conheça Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976. Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro DaniPro Postado 13 Fevereiro Membros Pro Compartilhar Postado 13 Fevereiro Ola. Tentei usar a VerificarPresencaPinPad mas resulta em chamada inválida (-2494). Procurei na documentação da PayGo e não encontrei a função PW_iPPCommTest para tentar verificar. Link para o comentário Compartilhar em outros sites More sharing options...
Consultores antonio.carlos Postado 14 Fevereiro Consultores Compartilhar Postado 14 Fevereiro Em 13/02/2024 at 08:07, DaniPro disse: Ola. Tentei usar a VerificarPresencaPinPad mas resulta em chamada inválida (-2494). Procurei na documentação da PayGo e não encontrei a função PW_iPPCommTest para tentar verificar. Esta com o componente e PGWebLib.dll atualizada ? Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro DaniPro Postado 14 Fevereiro Membros Pro Compartilhar Postado 14 Fevereiro (editado) Sim, baixei tudo na sexta passada Pelo que vi o retorno significa chamada fora do lugar. Editado 14 Fevereiro por DaniPro Link para o comentário Compartilhar em outros sites More sharing options...
Consultores antonio.carlos Postado 14 Fevereiro Consultores Compartilhar Postado 14 Fevereiro 2 horas atrás, DaniPro disse: Sim, baixei tudo na sexta passada Pelo que vi o retorno significa chamada fora do lugar. ta, de fato, parece estar chamando em um momento incorreto, geralmente, durante uma transação TEF ou Administrativa.. Tente inicializar o componente e logo após fazer a chamada VerificarPresencaPinPad Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro DaniPro Postado 14 Fevereiro Membros Pro Compartilhar Postado 14 Fevereiro Na verdade estou chamando ela antes do administrativo justamente para ver se o pinpad está operacional vou depurar o código para ver se encontro algo. Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro DaniPro Postado 14 Fevereiro Membros Pro Compartilhar Postado 14 Fevereiro 6 horas atrás, antonio.carlos disse: Esta com o componente e PGWebLib.dll atualizada ? Uma dúvida. a versão que vem no SDK é a 4.1.15 e o Daniel refere a versão 4.1.25. Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro DaniPro Postado 14 Fevereiro Membros Pro Compartilhar Postado 14 Fevereiro Tentei fazer um teste com a CliSiTef mas dá isso. Link para o comentário Compartilhar em outros sites More sharing options...
Moderadores Juliomar Marchetti Postado 14 Fevereiro Moderadores Compartilhar Postado 14 Fevereiro 25 minutos atrás, DaniPro disse: Tentei fazer um teste com a CliSiTef mas dá isso. a implementação foi feito para PayGo conforme conversas anteriores pois está a falar da PGWeblib Juliomar Marchetti skype: juliomar telegram: juliomar e-mail: [email protected] http://www.juliomarmarchetti.com.br Link para o comentário Compartilhar em outros sites More sharing options...
Fundadores Daniel Simoes Postado 14 Fevereiro Fundadores Compartilhar Postado 14 Fevereiro Você poderia usar o TACBrAbecsPinPad, para detectar ele... Basta varrer as portas seriais no sistema, tentar abrir elas, e nas que tiver sucesso com a abertura, tentar o comando TACBrAbecsPinPad.OPN Daniel Simões de Almeida O melhor TEF, é com o Projeto ACBr - Clique e Conheça Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976. Link para o comentário Compartilhar em outros sites More sharing options...
Fundadores Daniel Simoes Postado 14 Fevereiro Fundadores Compartilhar Postado 14 Fevereiro Implementei no Demo do ACBrAbecsPinpad o seguinte Botão, para detectar o Pinpad procedure TfrMain.btDetectPinPadClick(Sender: TObject); var sl: TStringList; PortFound: String; i: Integer; begin sl := TStringList.Create; try ACBrAbecsPinPad1.Device.AcharPortasSeriais( sl ); i := 0; PortFound := ''; while (i < sl.Count) and (PortFound = '') do begin try ACBrAbecsPinPad1.Disable; ACBrAbecsPinPad1.Port := sl[i]; ACBrAbecsPinPad1.Enable; try ACBrAbecsPinPad1.OPN; ACBrAbecsPinPad1.CLO; PortFound := ACBrAbecsPinPad1.Port; finally ACBrAbecsPinPad1.Disable; end; except end; Inc(i); end; if (PortFound <> '') then ShowMessage('PinPad Found on '+PortFound) else ShowMessage('PinPad not Found'); finally sl.Free; end; end; Daniel Simões de Almeida O melhor TEF, é com o Projeto ACBr - Clique e Conheça Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976. Link para o comentário Compartilhar em outros sites More sharing options...
Membros Pro DaniPro Postado 15 Fevereiro Membros Pro Compartilhar Postado 15 Fevereiro valeu pela sugestão @Daniel Simoes, funcionou certinho no D7. 2 Link para o comentário Compartilhar em outros sites More sharing options...
Consultores antonio.carlos Postado 15 Fevereiro Consultores Compartilhar Postado 15 Fevereiro Obrigado por reportar. Fechando. Para novas dúvidas, criar um novo tópico. Link para o comentário Compartilhar em outros sites More sharing options...
Recommended Posts