Ir para conteúdo
  • Cadastre-se

dev botao

Problemas Com O Tef


Ver Solução Respondido por Rafael Dias,
  • Este tópico foi criado há 4366 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Pessoal estou eu aqui novamente com problemas no tef

 

entao eu estou recebendo um erro estranho (segue o projeto de exemplo), onde o cupom fiscal é cancelado antes de chamar o auttar, segue a minha logica:

 

-faço a venda R$2,00

-chamo o acbrtef.crt(1, indiceecf, numcoo), R$1.00

-chamo o acbrtef.crt(1, indiceecf, numcoo), R$1.00 segundo pagamento

-se aprovou tudo
- Subtotaliza o cupom

- efetua as formas de pagamento

- da uma espera de 500ms

- chama acbrtef.ImprimirTransacoesPendentes()

 

se alguem pudem me ajudar com isso fico grato perdi o dia todo tentando fazer funcionar e nao consegui, e o que mais me intriga é que no teste do acbr funciona perfeitamente:

 

nao estou conseguindo anexar o arquivo, ta me retornado "Você excedeu seu espaço para anexos" existe isso?

 

segue o projeto exemplo pelo 4shared: http://www.4shared.com/zip/sVzVy4Bx/testetef1.html

 

 

  • Solution
Postado

Primeiro você não pode usar auto-efetuar pagamento nem autofinalizar por causa do cielo premia.

Partindo deste principio vamos analizar seu fluxo.

 

-faço a venda R$2,00

-chamo o acbrtef.crt(1, indiceecf, numcoo), R$1.00

-chamo o acbrtef.crt(1, indiceecf, numcoo), R$1.00 segundo pagamento

-se aprovou tudo
- chama AcBrTEFD.FinalizarCupom() - quando vc chama o FinalizarCupom ele automaticamente vai chamar o subtotal com o evento OnComandaECFSubtotaliza passando os eventuais descontos do cielo premia, em seguida ele vai chamar o OnComandaECFPagamento,  para efetuar o pagamento tef, depois executa o oncomandaecf para efetuar os pagamentos que não são cartão e consequentemente vai finalizar o cupom.

- chama acbrtef.ImprimirTransacoesPendentes()

 

Postado

obrigado rafael pela dica, so me diga mais uma coisa, o porque que ele cancela o cupom antes de chamar o GP, isso acontece logo apos a linha, segue o meu codigo:

With acBrTEFD
         .EsperaSleep = 250
         .TEFAuttar.EsperaSTS = 7
          .AutoAtivar = True
         .MultiplosCartoes = True
         .AutoEfetuarPagamento = False
         .AutoFinalizarCupom = False

         Select Case TipoTEF
            Case tTEF.TefAuttar
               .GPAtual = ACBrFramework.TEFD.ACBrTEFDTipo.TefAuttar
               .Initializar(ACBrFramework.TEFD.ACBrTEFDTipo.TefAuttar)
               .AtivarGP(ACBrFramework.TEFD.ACBrTEFDTipo.TefAuttar)
               .ATV(ACBrFramework.TEFD.ACBrTEFDTipo.TefAuttar)

            Case tTEF.TefDial
               .GPAtual = ACBrFramework.TEFD.ACBrTEFDTipo.TefDial
               .Initializar(ACBrFramework.TEFD.ACBrTEFDTipo.TefDial)
               .AtivarGP(ACBrFramework.TEFD.ACBrTEFDTipo.TefDial)
               .ATV(ACBrFramework.TEFD.ACBrTEFDTipo.TefDial)

         End Select

         Result = .CRT(tValor, tIndiceFpgECF, tNumCOO)
      End With

 

dando um break em linha por linha, ele chega nessa em negrito, nao da erro nenhum, pode ver que nao estou usando try de proposito e ele chama o evento OnAntesCancelarTransacao

Postado

Na inicialização ele checa se tem resposta tef em aberto tanto na pastas do tef quanto na pasta de bkp, caso houver em qq uma delas ele automaticamente cancela o cupom, quando é multiplos cartões, ele fica criando backup que so são excluidos apos imprimir todos os comprovantes com sucesso, caso ao contrario fica ali, para ser efetuado o cancelamento em caso de queda de energia.

 

  • Este tópico foi criado há 4366 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

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.