Jump to content

dev botao

Não Consigo Finalizar Venda Na Escecf (Bematech Mp-4200 Thfi)


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

Recommended Posts

Pessoal, boa noite.

 

Depois da última versão do ACBrFramework (0.9.5.5) passamos a ter problemas com a EscECF a ponto de não conseguir nem finalizar uma venda (tanto no nosso aplicativo quanto no ECFTeste).

 

Num primeiro cenário, quando não há cupom previamente aberto na impressora, consigo ativar o ECF, abrir um cupom, vender um item e subtotalizar. Mas ao tentar efetuar pagamento o aplicativo trava e fecha (debugando vemos que dispara AccessViolationException).

 

Num segundo cenário, mantenho o cupom faltando pagamento aberto na impressora e abro novamente o ECFTeste. Neste caso nem consigo ativar o ECF pelo ACBr, disparando o AccessViolationException.

 

Isso não ocorria na versão 0.9.5.1! O problema é que preciso da versão 0.9.5.5 por causa da implementação do TEF V$Pague.

 

Aproveitando o tópico, também passamos a ter problemas com a Epson TM 81. Se há cupom aberto na impressora e tentamos ativar o ACBr, também dispara AccessViolationException. No caso da Epson "resolvi" habilitando via App.config (<legacyCorruptedStateExceptionsPolicy enabled="true" />) para que os erros de AccessViolationException caiam nos meus "catchs" (por padrão ele não faz isso). No caso da Epson, se eu tento ativar novamente depois desse erro, funciona e o aplicativo segue. No caso da EscECF, pode retentar N vezes que não adianta, só resetando a impressora com as configurações de fábrica.

 

Será que podem dar uma olhada?

Em anexo mando um print da situação do ECFTeste e do ECF no momento do erro, junto com o log do ACBr.

Se precisarem de mais informações estou disponível.

 

Muito obrigado,

post-9202-0-87331900-1394314831_thumb.pn

cenário1_acbrlog.txt

cenário1_reproduzir.txt

post-9202-0-90590500-1394314878_thumb.pn

cenário2_acbrlog.txt

cenário2_reproduzir.txt

Daniel Nunes

Arquiteto de Software
(51) 8580-5536

http://www.linkedin.com/in/daspn

Link to comment
Share on other sites

Pessoal, alguém consegue reproduzir esses erros? Aqui o comportamento é o mesmo, tanto no Windows 7 quanto no Windows 8.

 

Basta utilizar a última versão do ECFTeste (ACBrFramework\ACBrFramework.Net\ACBrFramework.Net.ECFTeste) e o emulador MP-4200 THFI.

 

Link para o download do emulador:

http://partners.bematech.com.br/2013/02/edicao-138-novo-emulador-da-mp-4200-th-fi/

 

Agradeço a ajuda.

Abraços,

Daniel Nunes

Arquiteto de Software
(51) 8580-5536

http://www.linkedin.com/in/daspn

Link to comment
Share on other sites

Esqueci de mencionar o codigo que gera uma exceção

 

class ACBrInteropBase

 

Linha: 218

 

protected decimal GetDecimal(GetDoubleEntryPointDelegate entryPoint)
{
double value = 0d;
int ret = entryPoint(Handle, ref value); //Erro aqui
CheckResult(ret);
 
return Convert.ToDecimal(value);
}
Link to comment
Share on other sites

eu ja estou vendo isso, realmente tem problema com esta ecf, mas estou sem tempo para fazer mais teste.

 

Rafael,

 

"Resolvi" o problema compilando novamente o ACBr / ACBrFramework e o ACBrFramework.NET.

 

Talvez a versão 0.9.5.5 que foi para o NuGet (na qual me baseava) está com algum problema.

 

Analisei o código do ACBrFramework e até mesmo do ACBr e parece não ter havia nenhuma correção diretamente relacionada com esse problema.

 

Abraços,

Daniel Nunes

Arquiteto de Software
(51) 8580-5536

http://www.linkedin.com/in/daspn

Link to comment
Share on other sites

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

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.