Ir para conteúdo
  • Cadastre-se

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

Recommended Posts

Postado

Bom dia.
Começamos a desenvolver a NFCom modelo 62, e notei 2 coisas...

1° - Que não existe a opção de salvar o PDF da NFCom. Até existe a possibilidade do comando ACBrNFCom.NotasFiscais.ImprimirPDF; mas o Demo do ACBR não faz nada quando escolhido, existe a possibilidade de ser visto isso ?
image.png.c04644483256dead680a231da763af7e.png
 

2° - Percebi que em alguns retornos, após a autorização ACBrNFCom.Enviar(True); a ACBR não grava o XML completo, ou seja, não tem a tag final de autorização, porém se consultar no site, ou pelo método de consulta pela chave, consta como autorizado....
E como a impressão do omponente deve se basear nas tags do XML, por não ter aparece a mensgem em vermelho.
image.thumb.png.046d684614fb93d16c8198119cc8bfe0.png

  • Membro Pro Verificado
Postado (editado)

Desculpe, pela correria eu vou colocar aqui apenas um exemplo do meu código.

Espero que te ajude.

Citar

 

NFCom.Enviar(true);

      LoadXML(NFCom.WebServices.Enviar.RetWS, wbXmlRetorno);

      Nome_Arquivo:=qrNF.fieldbyname('nfcom_arquivo_xml').AsString;

      if pos(UpperCase('-NFCom.xml'), UpperCase(Nome_Arquivo)) > 0 then
         Nome_Arquivo := StringReplace(Nome_Arquivo, '-NFCom.xml', '-procNFCom.xml', [rfIgnoreCase]);

      NFCom.NotasFiscais.Items[0].GravarXML(Nome_Arquivo);

      Mensagem_Servidor.Lines.Add('');
      Mensagem_Servidor.Lines.Add('Envio NFCom');
      Mensagem_Servidor.Lines.Add('tpAmb: ' + TipoAmbienteToStr(NFCom.WebServices.Enviar.TpAmb));
      Mensagem_Servidor.Lines.Add('verAplic: ' + NFCom.WebServices.Enviar.verAplic);
      Mensagem_Servidor.Lines.Add('cStat: ' + IntToStr(NFCom.WebServices.Enviar.cStat));
      Mensagem_Servidor.Lines.Add('cUF: ' + IntToStr(NFCom.WebServices.Enviar.cUF));
      Mensagem_Servidor.Lines.Add('xMotivo: ' + NFCom.WebServices.Enviar.xMotivo);
      Mensagem_Servidor.Lines.Add('Recibo: '+ NFCom.WebServices.Enviar.Recibo);

 

 

 

 

Editado por Juliano Otaviano Barreto
  • Curtir 1
  • Membro Pro Verificado
Postado

      NFCom.NotasFiscais.Clear;
      NFCom.NotasFiscais.LoadFromFile(qrNF.fieldbyname('nfcom_arquivo_xml').AsString);

      NFCom.DANFCom.PathPDF:=CaminhoPDF+'\';
      NFCom.DANFCom.NomeDocumento:=qrNF.fieldbyname('nfcom_chave_xml').asstring+
                                   '-'+
                                   remove_acento(qrNF.fieldbyname('razaosocial').asstring)+
                                   '-NFCom.PDF';

      Mensagem_Servidor.Lines.Add('Preparando a impressão');
      Mensagem_Servidor.Lines.Add('');

      NFCom.NotasFiscais.ImprimirPDF;

  • Curtir 1
Postado
Em 08/11/2025 at 22:33, Juliano Otaviano Barreto disse:

      NFCom.NotasFiscais.Clear;
      NFCom.NotasFiscais.LoadFromFile(qrNF.fieldbyname('nfcom_arquivo_xml').AsString);

      NFCom.DANFCom.PathPDF:=CaminhoPDF+'\';
      NFCom.DANFCom.NomeDocumento:=qrNF.fieldbyname('nfcom_chave_xml').asstring+
                                   '-'+
                                   remove_acento(qrNF.fieldbyname('razaosocial').asstring)+
                                   '-NFCom.PDF';

      Mensagem_Servidor.Lines.Add('Preparando a impressão');
      Mensagem_Servidor.Lines.Add('');

      NFCom.NotasFiscais.ImprimirPDF;


Maravilha, funcionou salvar o PDF!! Muito obrigada Juliano.

Pode me ajudar a mandar direto pra impressora? Pois estou fazendo semelhante as configurações do PDF e mesmo assim não vai 

    ACBrNFCom.DANFCOM := TACBrNFComDANFComRL.Create(nil);
    ACBrNFCom.NotasFiscais.LoadFromFile(arquivo, false);
    ACBrNFCom.DANFCOM.Impressora := \\SOFTVAIRESI3\HP DESKJET 3740 SERIES (LIDIL)
    ACBrNFCom.DANFCOM.NomeDocumento := arquivo;
    ACBrNFCom.DANFCOM.MostraSetup := false;
    ACBrNFCom.DANFCOM.MostraPreview := True;

Olhei outros posts de impressão de NFe e vi que usavam a impressão diferento dentro do DANFE, dai mudei pra tentar imprimir com a linha de baixo
    ACBrNFCom.DANFCOM.ImprimirDANFCom;
Antes eu tava usando...
    ACBrNFCom.NotasFiscais.Imprimir;

E ambos chamam o previw na tela, já coloquei a mesma impressora como padrão e não funciona também

  • Membro Pro Verificado
  • Solution
Postado

Olá, bom dia.

Agora neste instante eu não vou conseguir olhar pra você, pegar um exemplo nosso, mas eu faço isto mais tarde, caso você ainda esteja precisando.

Mas eu sugiro que vc coloque "MostrarPreview" com false, porque se você quer que seja enviado diretamente para a impressora não tem lógica exibir na tela antes de imprimir, entende?

Coloque false no "MostrarPreview" e tente novamente.

  • Curtir 1
Postado
Em 07/11/2025 at 11:11, Juliano Otaviano Barreto disse:

Desculpe, pela correria eu vou colocar aqui apenas um exemplo do meu código.

Espero que te ajude.

 

 

 

Forcei gravar o XML novamente NFCom.NotasFiscais.Items[0].GravarXML(), mesmo depois do NFCOM.ENVIAR, como você também fez. Vamos ver se evita a perca do retorno.

Pois entre 1000 notas emitadas, 10 ficaram sem retornar o XML completo, no caso sem o protocolo de autorização... e não foi em sequencia foi bem picado, percebemos nó quando visulizamos as impressões

3 minutos atrás, Juliano Otaviano Barreto disse:

Olá, bom dia.

Agora neste instante eu não vou conseguir olhar pra você, pegar um exemplo nosso, mas eu faço isto mais tarde, caso você ainda esteja precisando.

Mas eu sugiro que vc coloque "MostrarPreview" com false, porque se você quer que seja enviado diretamente para a impressora não tem lógica exibir na tela antes de imprimir, entende?

Coloque false no "MostrarPreview" e tente novamente.

Meu deus!! 
Funcionou hehehe
Eu achei que isso abriria a janela pra possibiltar a pessoa mudar a impressora e dai mandar imprimir....

Muito obrigada!!

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