Jump to content

Delphi chamada_delphi.png acbr.png

C6 chamada_c6.png botao.png

Erro Ao Imprimir O Segundo Danfe De Nfce


Valdir Dill
Go to solution Solved by Valdir Dill,
  • Este tópico foi criado há 2737 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro

Estou tendo erro em alguns clientes onde ocorre o erro da imagem abaixo.

Na impressão de um Danfe, imprime normal, mas quando se tentar a impressão do segundo danfe em sequência, o erro acontece.

Utilizo Fast Report.

 

Alguma dica?

 

Obrigado

post-349-0-71955200-1415388167.png

Valdir Dill

Rio de Janeiro - RJ

 

 

Link to comment
Share on other sites

  • Consultores

Boa noite

Poderia informar como está fazendo para efetuar a re-impressão?

Consultor SAC ACBr Juliomar Marchetti
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

 

Link to comment
Share on other sites

  • Membros Pro

A rotina é a mesma. Na verdade não é reeimpressão. É uma impressão de um segundo danfe (de outra nota) em sequência da primeira.

A rotina utilizada é esta:

 ACBrNFeDANFEFRNFCe.TipoDANFE := tiNFCe;
 ACBrNFeDANFEFRNFCe.MostrarPreview := false; 
 DMNFEletr.ACBrNFe1.NotasFiscais.Clear;
 DMNFEletr.ACBrNFe1.NotasFiscais.LoadFromFile(VArqXML);
ACBrNFe1.NotasFiscais.Imprimir;
 

 

Penso que talvez possa ter relação com a impressora que esse cliente usa, pois em vários outros usuários o problema não ocorre. Não sei bem qual o modelo que ele usa, mas é Bematech.

 

Obrigado

Valdir Dill

Rio de Janeiro - RJ

 

 

Link to comment
Share on other sites

  • Consultores

Porque no seu código um dos componentes está em um datamodule e outro local?

Consultor SAC ACBr Juliomar Marchetti
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

 

Link to comment
Share on other sites

  • Membros Pro
Não está. Eu é que esqueci de tirar o DMNFEletr das linhas, mas todos estão no mesmo DM.
O certo das linhas é:
ACBrNFe1.NotasFiscais.Clear;
ACBrNFe1.NotasFiscais.LoadFromFile(VArqXML);
 
O que eu faço é utilizar o mesmos componentes tanto para NFe, como NFCe, mas não creio que possa ser esse problema, pois o erro ocorre só em um cliente que tem uma Bematech 4100. 

Valdir Dill

Rio de Janeiro - RJ

 

 

Link to comment
Share on other sites

  • Consultores

A variável VArqXML é o endereço do xml?

Consultor SAC ACBr Juliomar Marchetti
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

 

Link to comment
Share on other sites

  • Membros Pro

Sim, essa variável recebe  o valor correto. Tanto é que a primeira vez a impressão é feita da mesma forma, ou seja, com as mesmas rotinas. Além disso, em outros usuários que utilizam o mesmo sistema, não ocorre o erro.

Está parecendo algum problema de incompatibilidade com essa impressora ou algum estouro de pilha nessa máquina, sei lá!

 

De qualquer forma, agradeço a ajuda.

Valdir Dill

Rio de Janeiro - RJ

 

 

Link to comment
Share on other sites

Olá Valdir, apanhei muito e a única forma que encontrei pra resolver foi calcular o hash do qrcode na mão mesmo. Sei que não é a forma correta, mas da pra usar como saída até que volte a funcionar normalmente. No início, eu calculava dessa forma que você esta usando, mas depois de uma atualização do componente, parou de funcionar. Pra resolver temporariamente, voltei a usar o "modo primitivo", mas quebra um galho.

*Note que dentro da unit acbrDanfceFortesFr.pas, ao invés de deixar ele calcular o hash usando o procedimento do componente, eu usei esta rotina de calculo do qrcode antes de chamar o procedimento de impressão pra que seje gerado um arquivo bitmap contendo o qrcode em forma de uma foto (imagem). Acredito que o problema esteja em "NotaUtil.GetUrlQrCode". Se precisar, chama no Skype.

qrcode.txt

ACBrDANFCeFortesFr.pas

Edited by EDSON FERNANDES

Conectiva Soft - Automação Comercial - Visite nosso site: www.conectivasoft.com.br

Skype: [email protected]

Link to comment
Share on other sites

  • Membros Pro

Obrigado Edson,

Então é algum problema no componente mesmo!!

Pior que há um tempo (logo no início da NFCe) eu tinha minha própria rotina para gerar o qrCode, da mesma forma que você tem aí. Depois que o ACBR implementou tudo, deixei minha rotina de lado, pois gosto de utilizar o máximo possível do componente para evitar de ter vários controles para várias rotinas customizadas cada vez que se atualiza os fontes do ACBR.

 

Italo, esse problema começou faz umas duas semanas. Até então estava gerando tudo normal. Será que foi alterada alguma coisa no ACBR que esteja causando isso?

Sugestão: não seria o caso de analisar/implementar as rotinas do Edson?

 

Obrigado!

Valdir Dill

Rio de Janeiro - RJ

 

 

Link to comment
Share on other sites

  • Consultores

Obrigado Edson,

Então é algum problema no componente mesmo!!

Pior que há um tempo (logo no início da NFCe) eu tinha minha própria rotina para gerar o qrCode, da mesma forma que você tem aí. Depois que o ACBR implementou tudo, deixei minha rotina de lado, pois gosto de utilizar o máximo possível do componente para evitar de ter vários controles para várias rotinas customizadas cada vez que se atualiza os fontes do ACBR.

 

Italo, esse problema começou faz umas duas semanas. Até então estava gerando tudo normal. Será que foi alterada alguma coisa no ACBR que esteja causando isso?

Sugestão: não seria o caso de analisar/implementar as rotinas do Edson?

 

Obrigado!

Caro Valdir acho que estão com fontes desatualizados ou pode estar atualizado mas não foi recompilado os mesmos para substituir os bpl compilados!

pois temos diversos de nossos amigos usando e imprimindo o DANFCe e está funcionando corretamente!

Consultor SAC ACBr Juliomar Marchetti
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

 

Link to comment
Share on other sites

  • Membros Pro

Bom dia Juliomar,

 

Bem, acho que não é nem um nem outro. Pois eu atualizo os fontes semanalmente e recompilo sempre.

Eu também achei estranho ser do problema no componente, pois como mencionei, tenho vários outros usuários utilizando o mesmo sistema sem nenhum problema.

O erro ocorre apenas em um usuário. Talvez tenha alguma coisa a ver com o Windows ele então, não sei.

 

De qualquer forma agradeço o auxílio e dicas. Se descobrir a causa exata do erro, posto aqui.

 

Obrigado!

  • Like 1

Valdir Dill

Rio de Janeiro - RJ

 

 

Link to comment
Share on other sites

  • Membros Pro

Consegui reproduzir o erro aqui em laboratório. Ele ocorre na execução da linha EVP_DigestUpdate( @md_ctx, MS.Memory, MS.Size ) da ACBrEAD.pas.

 

Olha só, o problema só ocorre se a tela onde a impressão é feita e retorno a ela. Parece que é alguma coisa que deveria ser destruída e que não está sendo destruída.

Os componentes não são criados dinamicamente. Tenho os componentes em um dataModule, o qual é criado e destruído na criação do form da tela onde a impressão é feita. 

Alguma sugestão?

Obrigado.

Valdir Dill

Rio de Janeiro - RJ

 

 

Link to comment
Share on other sites

  • Membros Pro

Consegui reproduzir o erro aqui em laboratório. Ele ocorre na execução da linha EVP_DigestUpdate( @md_ctx, MS.Memory, MS.Size ) da ACBrEAD.pas.

 

Olha só, o problema só ocorre se a tela onde a impressão é feita e retorno a ela. Parece que é alguma coisa que deveria ser destruída e que não está sendo destruída.

Os componentes não são criados dinamicamente. Tenho os componentes em um dataModule, o qual é criado e destruído na criação do form da tela onde a impressão é feita. 

Alguma sugestão?

Obrigado.

Notei que essa rotina (EVP_DigestUpdate( @md_ctx, MS.Memory, MS.Size )) é chamada várias vezes. O erro acontece na chamda da linha 875 da ACBrEAD.pas.

Valdir Dill

Rio de Janeiro - RJ

 

 

Link to comment
Share on other sites

  • Membros Pro
  • Solution

Eureka!!!!!!!

 

Consegui descobrir. No meu dataModule eu tinha colocado um componente acbrEAD. Foi só excluir o componente (que eu não utilizava mesmo) que o problema não ocorreu mais.

Doidera, rs...mas era só isso mesmo.

 

Obrigado pela ajuda!

  • Like 1

Valdir Dill

Rio de Janeiro - RJ

 

 

Link to comment
Share on other sites

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