Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

Pessoal, estou homologando minha aplicação com o VeSPague também, no entanto com relação a cancelamento e reimpressão de comprovantes TEF, eu vi que o ACBR faz a impressão de uma Leitura X junto, dai falei lá pro minino da VeSPague (Marlon) e ele me informou que isso não é necessário. Como que desativo o componente do TEFD ou ACBRECF para não imprimir a leitura X em casos de cancelamneto e reimpressão de comprovantes ?

Outra coisa que identifiquei dentro do roteiro de testes pra homologação... na situação em que é realizado uma venda com 2 cartões, ao se desligar a impressora fiscal na impressao de alguma via do comprovante de TEF e responder a questão "Tentar Novamente" com NAO, então deve ser comandado o cancelamento das transações. Porém, o ACBR estava realizando o cancelamento apenas da última transação. Fiz um desvio grotesco até pois não conheço os fontes do ACBR para corrigir a situação e gostaria de saber dos colegas mais experientes se isso pode ser mantido ou se eu estou fazendo cacá no código, o trecho é o seguinte:

Arquivo ACBrTEFDClass.pas, na procedure TACBrTEFDClass.CancelarTransacoesPendentesClass a partir da linha 2118:


  {  Verificando se essa Resposta já foi cancela em outro arquivo } 

        JaCancelado := False ; 


        ///meu desvio... 

        if Tipo<>gpVeSPague then 

           begin 


              I := 0 ; 

              while (not JaCancelado) and (I < RespostasCanceladas.Count) do 

              begin 

                 if RespostasCanceladas[I] is TACBrTEFDRespTXT then 

                  begin 

                    with TACBrTEFDRespTXT( RespostasCanceladas[I] ) do 

                    begin 

                       JaCancelado := (Resp.Rede        = Rede)        and 

                                      (Resp.NSU         = NSU)         and 

                                      (Resp.Finalizacao = Finalizacao) and 

                                      (Resp.ValorTotal  = ValorTotal) ; 

                    end; 

                  end 

                 else 

                  begin 

                    with TACBrTEFDResp( RespostasCanceladas[I] ) do 

                    begin 

                       JaCancelado := (Resp.DocumentoVinculado = DocumentoVinculado) ; 

                    end; 

                  end; 


                 Inc( I ) ; 

              end; 



           end;


Só assim funcionou e conseguir cumprir o roteiro, pois dessa forma a variavel JaCancelado permanece False e realiza o cancelamento de cada transação pendurada senão ele cancelava somente a última e as demais a variável JaCancelado ficava True e não fazia o NCN. Será que tá certo isso ?

E aproveitando pra reforçar a minha última pergunta aqui neste tópico... como faço para desativar a impressão da Leitura X na reimpressão de comprovantes TEF cancelados ou reimpressos ?

[]'s

  • Fundadores
Postado

Esse código existe porque no caso do TEF discado, pode haver o arquivo de Backup criado pelo ACBrTEFD e o INTPOS.001 que ainda não foi apagado, ambos se referindo a mesma transação...

Não vejo como isso pode interferir no V&SPague... pois a variável JaCancelado só será True se a transação for idêntica (mesmo NSU, valor e tudo mais) a uma já cancelada anteriormente

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.

  • Fundadores
Postado

Hummm agora que notei o IF

if RespostasCanceladas is TACBrTEFDRespTXT then

(incrível como a gente esquece o que escreveu) :)

Acho que a final de contas a sua alteração faz sentido... apenas no caso do SiTEF, que o cancelamento deve ser feito apenas 1 por documento (ele já cancela todas as transações pendentes para esse documento)... acho que o V&SPague não faz isso... Vou aplicar no SVN

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.

  • Fundadores
Postado

Tente assim:


{ Verificando se essa Resposta já foi cancela em outro arquivo }
JaCancelado := False ;
I := 0 ;
while (not JaCancelado) and (I begin
if (RespostasCanceladas[I] is TACBrTEFDRespTXT) or
(Tipo = gpVeSPague) then
begin
with TACBrTEFDResp( RespostasCanceladas[I] ) do
begin
JaCancelado := (Resp.Rede = Rede) and
(Resp.NSU = NSU) and
(Resp.Finalizacao = Finalizacao) and
(Resp.ValorTotal = ValorTotal) ;
end;
end
else
begin
with TACBrTEFDResp( RespostasCanceladas[I] ) do
begin
JaCancelado := (Resp.DocumentoVinculado = DocumentoVinculado) ;
end;
end;

Inc( I ) ;
end;
[/code]

afinal sempre é bom verificar se a transação já foi cancelada ;)

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.

Postado

Boa noite!

Sou novo no forum e estou desenvolvendo uma aplicação TEF com o V&SPague!

Daniel gostaria de saber se esta implementação mostrada por vc acima

já foi adicionada para download ! Obrigado!

Postado

Valeu pelo código Daniel

;-)

E com relação a minha primeira pergunta no post ? sobre não imprimir leitura X caso a impressora seja desligada no meio da impressao do comprovante do TEF, tem como ?

[]'s

  • Fundadores
Postado

Isso é uma características apenas de ECFs matriciais, que por determinação legal, emitem uma Leitura X sempre antes de um Relatório gerencial... Não há como mudar isso... Ou seja, não é o ACBr que faz isso, mas sim o ECF... (a não ser que vc troque de ECF ;) )

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.

  • 1 mês depois ...
Postado

Bom Dia Daniel,

Vc poderia me dizer se as correções do V&SPague realizadas por Ivan Orosco e itamar Bermond já estão disponiveis no SVN e se o módulo

V&SPague já está totalmente de acordo com as normas para Homologação na V&SPague? Obrigado!

  • 2 semanas depois ...
Postado

Boa tarde, gostaria de saber se o exemplo do ACBrTEFD disponível já encontra-se com as rotinas do jeito que pede na hora de homologar e pergunto aos colegas que já passaram por isso quanto tempo mais ou menos demora para implementar, levando em conta a disponibilidade de 10 horas por dia, deixando no ponto para homologar.

Obrigado.

  • Fundadores
Postado

Não.. o Demo do ACBrTEFD é longe de se parecer com uma aplicação de uso real do TEF... ele apenas serve como estudo e teste...

Acho que ajustar um programa para TEF com full-time pode demandar de 1 a 2 meses de trabalho

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.

  • Este tópico foi criado há 4988 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.