Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado (editado)

Boa tarde galera, como eu devo fazer para capturar o retorno de uma transação? No caso capturar os dados retornados para posteriormente inserir no meu banco de dados.

Aguardo retorno

Editado por el.lauro
  • Moderadores
Postado
11 minutos atrás, el.lauro disse:

Boa tarde galera, como eu devo fazer para capturar o retorno de uma transação? No caso capturar os dados retornados para posteriormente inserir no meu banco de dados.

Aguardo retorno

Que retorno?

confere os eventos no componente ACBrTEFD!

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

Postado

Eu estudei eles Juliomar, porém, quando eu faço uma transação administrativa(ACBrTefD1.ADM) eu não consigo ler o arquivo de retorno como eu faço com a transação de venda(CRT). O fato é que eu queria ler o arquivo de retorno para poder inserir no banco de dados as informações.

Postado

Daniel, analisando os códigos da transação administrativa percebi que o arquivo de retorno é excluído depois que os dados são capturados, porém, a coleção usada para Resposta (ACBrTefD1.Resp) é limpa através do comando clear, desse modo eu não consigo pegar os dados para persistir no meu banco. Qual seria o evento que eu deveria usar para ter esses dados?

  • 2 semanas depois ...
Postado

Boa tarde galera, hoje comecei a mexer novamente no TEF e principalmente em transações administrativas, mais precisamente em recarga de celulares. Estava analisando os códigos do componente para esse tipo de transação e algumas coisas me chamaram atenção. 

Seguindo o fluxo da operações primeiro o componente inicia a requisição, adiciona os dados e finaliza. Apos isso entra em operação o integrador da NTK. Ao receber a resposta da requisição o componente lê a resposta da mesma adiciona o retorno da função, processa e finaliza a resposta. Pois bem, esse finalizar resposta ele acaba limpando o retorno e apagando o arquivo do retorno, sendo que desse modo, pelo menos ao meu ver, não conseguimos persistir os dados da transação no banco, pois, as mesmas não podem serem lidas. Segue abaixo os códigos com o fluxo das transações.

  Result := False ;
  IniciarRequisicao('ADM');
  AdicionarIdentificacao;
  FinalizarRequisicao;
  LerRespostaRequisicao;
  Result := Resp.TransacaoAprovada ;
  try
     ProcessarResposta ;         { Faz a Impressão e / ou exibe Mensagem ao Operador }
  finally
     FinalizarResposta( True ) ; { True = Apaga Arquivo de Resposta }
  end;

Eu gostaria de saber se eu estou enganado, ou do contrario, oque eu devo fazer para conseguir pegar os retornos(Operadora, valor da transação, etc)?

  • Fundadores
Postado

Conforme já comentei, nos tópicos anteriores, você pode acessar todas as propriedades pelo índice, conforme é demonstrado no exemplo do TEFDDemo

procedure TForm1.ACBrTEFD1DepoisConfirmarTransacoes(
   RespostasPendentes: TACBrTEFDRespostasPendentes);
var
  I : Integer;
begin
  for I := 0 to RespostasPendentes.Count-1  do
  begin
     with RespostasPendentes[I] do
     begin
        Memo1.Lines.Add('Confirmado: '+Header+' ID: '+IntToStr( ID ) );

        // Lendo os campos mapeados //
        Memo1.Lines.Add( 'Rede: '  + Rede +
                         ' NSU: '  + NSU  +
                         ' Parcelas: '+ IntToStr(QtdParcelas) +
                         ' Parcelado por: '+ GetEnumName(TypeInfo(TACBrTEFDRespParceladoPor), integer(ParceladoPor) )  +
                         ' É Débito: '+BoolToStr(Debito)+
                         ' É Crédito: '+BoolToStr(Credito)+
                         ' Valor: '+ FormatFloat('###,###,##0.00',ValorTotal)) ;

        // Lendo um Campo Específico //
        Memo1.Lines.Add('Campo 11: ' + LeInformacao(11,0).AsString );
     end;
  end;
end;

Veja o trecho acima... (lendo um campo específico)

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

×
×
  • 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...