Ir para conteúdo
  • Cadastre-se

dev botao

Gravar XML do evento


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

Recommended Posts

Bom dia amigos,

Poderiam me ajudar no processo de gravar um XML de evento de cancelamento? Já li alguns topicos aqui mas não consegui ainda

NotasFiscais.Clear;
EventoNFe.Evento.Clear;

NotasFiscais.LoadFromFile(EnderecoXML);

EventoNFe.idLote := 1;

   with EventoNFe.Evento.Add do
   begin
         infEvento.chNFe := strChave;
         infEvento.CNPJ   := strCnpjCompleto;
         infEvento.dhEvento := now;
         infEvento.tpEvento := teCancelamento;
         infEvento.detEvento.xJust := Justificativa;
         infEvento.detEvento.nProt := strProtocolo;
   end;

EnviarEvento(iNumeroLote); 

Configuracoes.Arquivos.Salvar             := True;
Configuracoes.Arquivos.SalvarEvento       := true;
Configuracoes.Arquivos.PathNFe            := EnderecoDiretorioXML;
Configuracoes.Arquivos.PathEvento         := EnderecoDiretorioXML;
Configuracoes.Arquivos.EmissaoPathNFe     := True;

NotasFiscais.GravarXML(EnderecoDiretorioXML);

reportDanfe.ImprimirDANFEPDF();

 

Link para o comentário
Compartilhar em outros sites

  • Solution

Acabei por conseguir...

 

caso alguém precise está aqui a minha solução:

 

EnderecoXML := "Caminho onde está o meu xml que vou cancelar"

  DM.NFE.NotasFiscais.Clear;
  DM.NFE.EventoNFe.Evento.Clear;

  if not DM.NFE.NotasFiscais.LoadFromFile(EnderecoXML) then
  Begin
    raise Exception.Create('Não foi possível carregar o XML da Nota Fiscal Eletrônica para cancelamento!');
    Exit;
  End;


  strNrNota   := "123456"
  iNumeroLote := StrToInt("123456");
  DM.NFE.EventoNFe.idLote := iNumeroLote;

  strProtocolo := "Protocolo do XML"
  strChave     := "Chave do XML"

  with DM.NFE.EventoNFe.Evento.Add do
  begin
    infEvento.chNFe           := strChave;
    infEvento.CNPJ            := strCnpjCompleto;
    infEvento.dhEvento        := now;
    infEvento.tpEvento        := teCancelamento;
    infEvento.detEvento.xJust := Justificativa;
    infEvento.detEvento.nProt := strProtocolo;
  end;

  DM.nfe.Configuracoes.Arquivos.Salvar             := True;
  DM.nfe.Configuracoes.Arquivos.SalvarEvento       := true;
  DM.nfe.Configuracoes.Arquivos.PathNFe            := EnderecoDiretorioXML;
  DM.nfe.Configuracoes.Arquivos.PathEvento         := EnderecoDiretorioXML;
  DM.nfe.Configuracoes.Arquivos.EmissaoPathNFe     := True;

  if DM.NFE.EnviarEvento(iNumeroLote) then
  begin

      with DM.NFE.WebServices.EnvEvento do
      begin       

         DataProtocolo   := FormatDateTime('dd/mm/yyyy hh:nn:ss',EventoRetorno.retEvento.Items[0].RetInfEvento.dhRegEvento);
         NrProtocolo     := EventoRetorno.retEvento.Items[0].RetInfEvento.nProt;
         XMLCancelamento := EventoRetorno.retEvento.Items[0].RetInfEvento.XML;
         Result          := 'Cod:' + IntToStr(EventoRetorno.retEvento.Items[0].RetInfEvento.cStat) + '-' + EventoRetorno.retEvento.Items[0].RetInfEvento.xMotivo;
 

         DM.nfe.ImprimirEventoPDF;     

     END

End;

  • 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.

  • Curtir 1
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

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