Ir para conteúdo
  • Cadastre-se

dev botao

Access violation para impressão via acbrnfe


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

Recommended Posts

Senhores, por favor peço ajuda na seguinte situação, no menu principal da minha aplicação toda vez que eu tento reimprimir nfe, carta de correção ou salvar em pdf, antes gera um A.V. e depois mostra o preview, no exemplo do demo funciona sem problemas, oque posso estar fazer para corrigir na minha aplicação?

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Desconhecemos sua aplicação então para da A.V. é porque está acessando algo que não está criado ou foi destruido.

se tu conseguir montar um exemplo e postar aqui como está seu código e gerando o erro. diferente disso é só tu que vai conseguir descobrir pois você é que tem acesso e conhece seu fonte

  • Curtir 1
Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

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

 

Link para o comentário
Compartilhar em outros sites

na verdade eu copie e colei exatamente como esta no exemplo, uso Midaslib no form.

var
ano,mes: integer;
begin
// AjustaNFE;
 mes:= monthof(date);
 ano:= yearof(date);

 OpenDialog1.FileName  :=  '';
 OpenDialog1.Title := 'Selecione o XML do Cupom';
 OpenDialog1.DefaultExt := '*.XML';
 OpenDialog1.Filter := 'Arquivos XML (*.XML)|*.XML|Todos os Arquivos (*.*)|*.*';
 OpenDialog1.InitialDir := 'C:\SCI-DEPOSITO\Software\DOCUMENTOS\ARQUIVOS\' +
                            intTOstr(ano)+ intTOstr(mes) + '\';
 if OpenDialog1.Execute then
 begin
  ACBrNFe1.NotasFiscais.Clear;
  ACBrNFe1.NotasFiscais.LoadFromFile(OpenDialog1.FileName,False);
//  ACBrNFe1.NotasFiscais.ImprimirPDF;
  ACBrNFe1.NotasFiscais.Imprimir;
 end;
end;

Link para o comentário
Compartilhar em outros sites

Boa tarde Juliomar, por favor pode me indicar onde devo analisar?, o xml esta valido no site da sefaz, no exemplo funciona, sera que esta faltando declarar alguma dll?

uso estas configurações para gerar a danfe

   ACBrNFe1.Configuracoes.Geral.SSLLib:= libWinCrypt;//libOpenSSL; ok
   ACBrNFe1.Configuracoes.Geral.SSLCryptLib := cryWinCrypt; //ok
   ACBrNFe1.Configuracoes.Geral.sslhttplib:= httpWinHttp;
   ACBrNFe1.Configuracoes.Geral.sslxmlsignlib:= xsMsXml;//xsXmlSec; ok

isso pode afetar?

Link para o comentário
Compartilhar em outros sites

fiz assim assim e não deu certo, sem querer abusar poderia me dar uma ajuda, fiz desta maneira e não consegui

ACBrNFe1.NotasFiscais.Clear;
  ACBrNFe1.NotasFiscais.LoadFromFile(OpenDialog1.FileName,False);
//  ACBrPosPrinter2.Porta := 'RAW:TERMICA'; // O Prefixo "RAW:", ajuda o ACBrDevice a detectar o tipo de porta
//  ACBrPosPrinter2.Ativar;
  ACBrNFe1.Danfe := ACBrNFeDANFCeFortes1;
//  ACBrNFe1.NotasFiscais.ImprimirPDF;
  ACBrNFeDANFCeFortes1.MostraPreview:= true;

//  ACBrNFeDANFeESCPOS1.ImprimirDANFE();
  ACBrNFe1.NotasFiscais.Imprimir;

Editado por Luciano Ramos Palandi
Link para o comentário
Compartilhar em outros sites

ACBrNFe1.NotasFiscais.Clear;
  ACBrNFe1.NotasFiscais.LoadFromFile(OpenDialog1.FileName,False);
//  ACBrPosPrinter2.Porta := 'RAW:TERMICA'; // O Prefixo "RAW:", ajuda o ACBrDevice a detectar o tipo de porta
//  ACBrPosPrinter2.Ativar;
  ACBrNFe1.Danfe := ACBrNFeDANFCeFortes1;

 ACBrNFe1.NotasFiscais.Imprimir;

assim não dá certo?

Link para o comentário
Compartilhar em outros sites

  • Moderadores
17 horas atrás, Luciano Ramos Palandi disse:

Desculpe a demora, utilizando desta maneira abre sem A.V., porém da um preview de um NFCe em A4

Dúvida. e não quero que leve a mal mas é pra entender sua dificuldade. Ok?

faz pouco tempo que começou a programar? trabalhava com outra linguagem ou somente delphi? poderia relatar isso?

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

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

 

Link para o comentário
Compartilhar em outros sites

Bom dia Juliomar, sem problemas...

faz pouco tempo que começou a programar?

Cerca de 4 anos.

trabalhava com outra linguagem ou somente delphi?

Sim, trabalhava com Visual Basic, ai migrei para Delphi no qual sou amador perto dos colegas, mas estou sempre buscando conhecimento para melhorar.

A dúvida que tenho é que toda vez que mando reimprimir uma NFE ou Evento gera um A.V. e depois preview, no exemplo não acontece, já olhei até aonde eu consigo, já copiei os componentes do exemplo e não resolveu, por isso peço ajuda de algum colega que tenha passado por isso e conseguiu solucionar.  

Editado por Luciano Ramos Palandi
Link para o comentário
Compartilhar em outros sites

  • Moderadores
1 hora atrás, Luciano Ramos Palandi disse:

Bom dia Juliomar, sem problemas...

faz pouco tempo que começou a programar?

Cerca de 4 anos.

trabalhava com outra linguagem ou somente delphi?

Sim, trabalhava com Visual Basic, ai migrei para Delphi no qual sou amador perto dos colegas, mas estou sempre buscando conhecimento para melhorar.

A dúvida que tenho é que toda vez que mando reimprimir uma NFE ou Evento gera um A.V. e depois preview, no exemplo não acontece, já olhei até aonde eu consigo, já copiei os componentes do exemplo e não resolveu, por isso peço ajuda de algum colega que tenha passado por isso e conseguiu solucionar.  

AV é sempre algum objeto que foi destruido ou que não existe e está sendo chamado

então debugar com F8 F7 e pontos de paradas e verificar o que tu tá fazendo e onde está destruindo objetos, forms ou datamodule

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

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

 

Link para o comentário
Compartilhar em outros sites

  • Solution

Bom dia Juliomar e  Francesco, examinei a string que esta no onActive mas não acreditei que fosse o problema, depois que o Juliomar falou comentei tudo e inseri um showmessage, cada vez que mando imprimir usando preview o onActive é acionado, então migrei a string para um timer para testar e funcionou, não da mais AV.

Muito obrigado Juliomar e Francesco e todos que colaboraram. 

Editado por Luciano Ramos Palandi
  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Administradores

Obrigado por reportar.

Fechando. Para novas dúvidas, criar um novo tópico.

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link para o comentário
Compartilhar em outros sites

  • Moderadores
3 horas atrás, Luciano Ramos Palandi disse:

Bom dia Juliomar e  Francesco, examinei a string que esta no onActive mas não acreditei que fosse o problema, depois que o Juliomar falou comentei tudo e inseri um showmessage, cada vez que mando imprimir usando preview o onActive é acionado, então migrei a string para um timer para testar e funcionou, não da mais AV.

Muito obrigado Juliomar e Francesco e todos que colaboraram. 

só respondendo. o actived é acionado a cada vez de alternar entre as telas, em qualquer momento, igual o show do form.

então cuidado e por isso das perguntas.

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

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

 

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 778 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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...