Ir para conteúdo
  • Cadastre-se

dev botao

Tef Acbrframework Evento Oncomandaecf


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

Recommended Posts

Postado

Boa tarde, estou com um possível erro no componente TEF na biblioteca 21-01-2015, aparentemente não está disparando o evento OnComandaECF, quando tem mais de uma forma de pagamento o comprovante do TEF não é impresso e não é confirmada a transação.

Achei estranho pois a versão antiga que utilizei na homologação eu apenas chamava a função TEF.CRT() ela própria subtotalizava o cupom, registrava todas as formas de pagamentos e fechava o cupom por conta própria, e essa mais recente não está fazendo isso.

 

Att

 

Valdeir Caires

ECF_log.txt

TEF_log.txt

  • Fundadores
Postado

Existem as propriedades "AutoEfetuarPagamento" e "AutoFinalizarCupom"... mas elas são incompatíveis com o "Cielo Premia"...

 

Ou seja, se você usa-las, sua aplicação não será capaz de tratar o Cielo Premia corretamente

  • Curtir 1
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 (editado)

Obrigado Regys, os pagamentos eu estou fazendo um tratamento, quando são impressos no evento OnComandaECF os removo da fila, caso contrario eu registro os pagamentos após a função CRT, só acho estranho o componente TEF não imprimir o vinculado com a transação, e quando tem só o pagamento com cartão imprime normal.

Editado por Valdeir Caires
Postado

Mas o erro acontece no momento em que está imprimindo o comprovante, por isso acho que é dentro do componente TEF.

Vou debugar a emissão do cupom inteira pra ver, se encontrar alguma coisa eu posto o resultado, só não posso debugar o TEF pois estou programando em VB.NET

Postado (editado)

Realmente acontece dentro da função CRT

An unhandled exception of type 'System.AccessViolationException' occurred in ACBrFramework.Net.dll

 
Additional information: Tentativa de leitura ou gravação em memória protegida. Normalmente, isso é uma indicação de que outra memória está danificada.

 

Até encontrei uma solução aqui  mas a biblioteca que estou usando é a disponibilizada neste link http://sourceforge.net/projects/acbrframework/files/

Editado por Valdeir Caires
  • Fundadores
Postado

Pode ser algo referente ao ACBrFramework... (nunca vi esse erro no Delphi/Lazarus)

 

Não sei se os autores desse projeto tem acesso a esse fórum...

 

Posso mudar essa mensagem para a área deles...

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 tarde Rafael

 

Tentei resolver por conta recompilando com Lazarus e depois usando o Visual Studio mas o erro persiste, será que eu preciso compilar o projeto feito em Delphi?

Estou usando Windows 7 e meu Delphi está com incompatibilidade, vou continuar tentando, qualquer coisa se conseguir algum progresso eu retorno ao tópico, caso contrario vou aguardar seu teste.

 

Obrigado

Postado (editado)

Boa tarde Rafael, como sempre muito prestativo.

 

Estou usando a versão disponível em http://sourceforge.net/projects/acbrframework/files/

 

ACBrFramework.Net.40.zip 2015-02-07 4.4 MB

Mas o erro de memória ainda está acontecendo dentro da função .CRT no momento da impressão da segunda via do comprovante, o componente chega acionar a guilhotina, anexei a imagem do cupom pra você ver e marquei onde seria os cortes da guilhotina.
 
O estranho é que se for um único pagamento com cartão imprime normal.
 
Não sei se tem algo a influenciar, mas meu SO é Windows 8.1
 
 

Obrigado pela atenção.

post-10419-0-35020700-1423510363_thumb.p

Editado por Valdeir Caires
Postado

Eu fiz os teste em Win 8.1 x64 e foi totalmente normal, tanto com 1 ou múltiplos cartões.

Me passa as configurações que você esta usando no componente.

Qual versão do .net framework você esta usando ou se esta usando COM Interop.

E qual Tef você esta usando eu usei o Pay&Go para testes.

 

Postado (editado)

Bom dia Rafael

Montei um exemplo de teste para te mostrar assim fica mais fácil, mas ao montar o projeto teste o erro agora está acontecendo mesmo com um único pagamento no cartão. Na verdade eu não tinha testado no meu sistema, e agora está com erro também.

Esta é a mesma configuração que eu estou usando no meu sistema, será que ajuda?

TesteACBrTEF.rar

Editado por Valdeir Caires
  • Solution
Postado

Valdeir vendo seu exemplo verifiquei alguns erros.

 

1 - Você ativou auto-efetuar pagamento e auto finalizar cupom, com o cielo premia esta propriedades tem que ser false.

2 - No evento OnImprimeVia você fez duas chamadas erradas ali não precisa delas.

 

O que você precisa fazer é deixas as propriedades false

Fiz algumas modificações no exemplo para você testar ai.

 

 

Postado (editado)

Problema resolvido, só acho estranho pois a configuração do meu exemplo estava funcionando, tanto que homologuei o TEF com a versão antiga dos componentes.

Mas obrigado Rafael e toda equipe do Projeto ACBr.

Editado por Valdeir Caires
×
×
  • 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.