Ir para conteúdo
  • Cadastre-se

dev botao

Recommended Posts

Postado (editado)

Olá alguem poderia me dar uma luz? Temos uma integração com TEF Paygo através da lib PGWebLib.dll. Recentemente atualizamos a DLL para a última versão para poder re-homologar nossa aplicação(dll 4.1.43.1).

Nos testes, notamos que em certos momentos, o PINPAD para de responder.. e fica com a tela acesa. Neste momento a aplicação demora a processar o comando enviado, neste exemplo de log abaixo, eu tinha acabado de fazer uma transação de pagamento e depois chamei uma rotina administrativa, neste momento, o pipad travou.. fui olhar no log, e constava nas últimas linhas o retorno: PP_iOpen - Erro na abertura da porta serial (06). Não consegui diagnosticar.. Visto que na última operação de pagamento foi chamado a instrução ACBrTEFAPI1.DesInicializar para liberar o pinpad.

Não sei se é problema de hardware, visto que utilizamos o PINPAD pela última vez a uns 2 anos atráz, quando fizemos a primeira homologação com a Paygo. Engraçado é que ele funciona normalmente.. e repentinamente ocorre esses erros de comunicação..

Alguem já passou por este problema?

***Obs.: PINPAD Gertec PPC 930 - Lazarus 3.4 x32

11:23:33:249 select = 1
11:23:33:249 RX[000001]
11:23:33:255 PWSRV_iSendConfirmation OK
11:23:33:260 [w32_fil] iComputeCRC_FromFile - Arquivo vazio! iFileNum=[52] - PRINCIPAL
11:23:33:262 [PGWebLib.c] PWSRV_iVerifyAndSendConfirmation iRet (0)
11:23:33:262 [PWServer.c] #### PP_iClose ...
11:23:33:637 [PWServer.c] #### PP_iClose - FIM = [0]
11:23:33:637 [MODEMFUNCS] Disconnect
11:23:33:637 [PINpad.c] PP_EndComand (fConfirm=1)...
11:23:33:637 [PINpad.c] PP_EndComand - Thread ainda ativa!
11:23:37:705 [PGWebLib.c] PW_End
11:23:48:090  [PGWebLib.c] Num da Instancia [3]
11:23:48:545 [PGWebLib.c] PW_Init(): Ultima limpeza: 29/03/2025 10:29:26)
11:23:48:545 [PW_Pinpad] PP_iOpen CommPort (06)
11:23:48:929 [PW_Pinpad] PP_iOpen - PP_Open_=[33]
11:23:48:929 [PW_Pinpad] PP_iOpen Error #3! 33
11:23:49:052 [PGWebLib.c] PW_iInit <0>
11:23:49:052 [PGWebLib.c] PW_iNewTransac (bOper=0xFC)...
11:23:49:052 [PGWebLib.c]PGW_iCheckAndUpdateCertificate
11:23:49:052 [PGWebLib.c] NewTransac iRet[0] iNextTimer[1] CertUpdateTime[250401]
11:23:49:052 [MODEMFUNCS] Disconnect
11:23:49:053 [PGWebLib] - PP_iGetInfo - PP_iOpen(06)
11:23:49:053 [PW_Pinpad] PP_iOpen CommPort (06)
11:23:49:053 [PW_Pinpad] PP_iOpen - PP_Open_=[30]
11:23:49:053 [PW_Pinpad] PP_iOpen - Erro na abertura da porta serial (06)
11:23:49:053 [PW_Pinpad] PP_iOpen - PP_Open_(01)
11:24:09:163 [PW_Pinpad] PP_iOpen - PP_Open_=[31] #2
11:24:09:163 [PW_Pinpad] PP_iOpen - PP_Open_(02)
11:24:33:205 [PW_Pinpad] PP_iOpen - PP_Open_=[31] #2
11:24:33:205 [PW_Pinpad] PP_iOpen - PP_Open_(03)

Obrigado,

Renato

Editado por RenatoRicci
Postado

Olá Juliomar @Juliomar Marchetti.. de fato.. na versão anterior, eu inicializava o TEF no inicio da aplicação e desinicializava quando encerrava a aplicação.. Mas acontecia de por ventura da aplicação travar por algum processo interno, como falha na conexão de rede por exemplo, ai o usuário fechava o exe (no gerenciador de tarefas) e abria novamente, com isto, o FormClose da minha aplicação não era disparado e o TEF continuava preso. Com isto, na época mudamos a rotina para que a cada operação de tef, ou seja, ao finalizar a venda, caso o operador de caixa selecionasse alguma forma de pagamento que tinha tef habilitado, o sitema chamava a opção Inicializar, e no final da venda, era chamado a opção desinicializar. Este fluxo funciona (ou pelo menos funcionava) na dll antiga e nunca tivemos problemas quanto a isto.

Depois que atualizamos para a nova DLL (4.1.43.1) para poder re-homologar o exe, passamos a perceber este travamento.. Ai veio minha dúvida.. não sei se está relacionado a nova DLL, ou se está relacionado ao hardware em sí, pelo fato do pinpad ter ficado alguns anos parado, ou até mesmo se tem relação com Warsaw..(apesar de que estamos utilizando a opção isDebug aqui em ambiente de homologação e apontando para a dll da pasta DEBUG).

Só achei estranho esporadicamente a porta serial ficar aberta do nada e a tela do pinpad permanecer acesa.. Como se tivesse algo preso..

A tela só apaga se eu echar o exe e abrir novamente. Se não fechar o exe, mesmo chamando o método .DesInicializar, o pinpad não desocupa..

 

 

  • Consultores
Postado

Bom dia Renato.

Qual é o seu CNPJ que tem parceria TEF com o Projeto ACBr? Desta forma, consigo liberar os acessos exclusivos em nosso Discord para poder tirar as suas duvidas de forma mais ágil. 

Postado (editado)

Olá @Pedro Frayman.. tudo bem! Obrigado..

Pedro.. mas chamando o método .DesInicializar, já libera a porta USB não?

Olá José, não temos parceria TEF com o Projeto ACBr.. Na época nosso parceiro que revende nosso sistema negociou direto com a Paygo.

Obrigado.

Editado por RenatoRicci

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...