Ir para conteúdo
  • Cadastre-se

dev botao

Importar uma NF-e da SEFAZ


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

Recommended Posts

Postado

Boa tarde pessoal, tudo bem ?

Existe alguma possibilidade de fazer a consulta de uma chave de NF-e e capturar as informações da mesma para que eu possa montar um ct-e ?

A NF-e em questão não foi emitida contra a empresa e sim para um destinatário, a empresa fará apenas o transporte da mercadoria.

 

  • Consultores
Postado

Boa tarde,

Isso é muito simples, basta usar o método DistribuicaoDFePorChaveNFe que se encontra no componente ACBrNFe.

Requisito para que a nota esteja disponível para ser baixada: o emitente da nota informar no grupo <transporta> o CNPJ da transportadora.

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Postado

Boa tarde Italo,

Fazendo apenas dessa forma eu consigo consultar as informações como emitente, destinatario, peso, volume, dentre outras coisas ?

A nota precisa estar com a ciência ?

Se o emitente não preencher o CNPJ do transportador dai não tem como ?

  • Consultores
Postado

Primeiramente, quem pode obter o XML de uma nota?

1. O Destinatário da mercadoria desde que ele envie o evento de Manifestação do Destinatário, caso contrario vai obter somente um resumo da mesma.

2. O Transportador da mercadoria desde que o seu CNPJ esteja informado no grupo transporta da referida nota.

     Obs: Pelo fato do transportador não ser o destinatário da mercadoria não se aplica aqui o evento de Manifestação do Destinatário.

3. Terceiros, pessoas que o emitente autoriza a obter o XML da nota, para que isso ocorra o emitente deve informar o CNPJ ou CPF no grupo autXML.

     Obs: Pelo fato do terceiro não ser o destinatário da mercadoria não se aplica aqui o evento de Manifestação do Destinatário.

De posse do XML completo da nota, você pode usar o método LoadFromFile do componente ACBrNFe para ler o XML, depois basta ler os campos que contem as informações desejadas.

Exemplo:

     Nome        := ACBrNFe.NotasFiscais.Items[0].NFe.Emit.xNome;
     Fantasia    := ACBrNFe.NotasFiscais.Items[0].NFe.Emit.xFant;
     Logradouro  := ACBrNFe.NotasFiscais.Items[0].NFe.Emit.EnderEmit.xLgr;
     Numero      := StrToIntDef(ACBrNFe.NotasFiscais.Items[0].NFe.Emit.EnderEmit.nro, 0);
     Complemento := ACBrNFe.NotasFiscais.Items[0].NFe.Emit.EnderEmit.xCpl;
     Bairro      := ACBrNFe.NotasFiscais.Items[0].NFe.Emit.EnderEmit.xBairro;
     CEP         := IntToStr(ACBrNFe.NotasFiscais.Items[0].NFe.Emit.EnderEmit.CEP);
     Municipio   := ACBrNFe.NotasFiscais.Items[0].NFe.Emit.EnderEmit.xMun;
     UF          := ACBrNFe.NotasFiscais.Items[0].NFe.Emit.EnderEmit.UF;
     Telefone    := ACBrNFe.NotasFiscais.Items[0].NFe.Emit.EnderEmit.fone;

 

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Postado

Bom dia Italo,

Implementei a rotina que falou, deu certo fazer a consulta via DistribuicaoDFePorChaveNFe, porem ele não carrega automatico para o componente da NFe.

Eu preciso salvar o XML em algum lugar e carregar o XML para o componente ou tem como eu já alimentar o componente direto do retorno ?

  • Consultores
Postado

Bom dia,

É possível sim, da seguinte forma:

// após a execução do método DistribuicaoDFePorChaveNFe 

// a variável aXML é do tipo string, ela vai conter o XML da NF-e obtida pelo método DistribuicaoDfe
aXML := ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip[0].XML;

// Para ler o XML de uma string usamos o método abaixo
ACBrNFe1.NotasFiscais.LoadFromString(aXML);

// a partir deste ponto as informações podem ser lidas dos campos desejados

 

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Postado

@Italo Jurisato Junior Fiz da forma que falou e ele retorna a lista vazia conforme imagem

image.png.451c965f1713fed678a341808c247c6c.png

E o retorno do XML não trás a nota fiscal.

O que estou fazendo é consultando a nota fiscal com o CNPJ da transportadora que está declarada na Nota.

A empresa de destino tem que dar a ciência para que eu possa pegar as informações ?

  • Consultores
Postado

Como dito anteriormente, para que o Destinatário possa obter o XML completo precisa enviar o evento de Manifestação do Destinatário.

Já a transportadora obtém o XML completo independente do Destinatário ter enviado o evento ou não.

O único requisito é que o CNPJ da transportadora esteja informado no campo CNPJ que se encontra dentro do grupo <transporta>.

Configure o componente para salvar os arquivos em disco.

Faça um novo teste e depois anexe os XMLs gerados aqui no fórum para que possamos analisar.

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

  • Administradores
Postado

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 !!

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