Ir para conteúdo
  • Cadastre-se

dev botao

Download-XML Manifesto


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

Recommended Posts

Erro no download do XML manifestado , o mesmo ao entrar na função TNFeR.LerXml(unit pcnNFeR) não esta conseguindo achar a tag( VersaoInfNFe := Leitor.rAtributo('versao=');) correta, pois o xml obtido possui no inicio do xml uma outra tag 'retDownloadNFe versao=', logo a função sempre pega a versão errada. Realizei uma correção pegando a tag desse forma (VersaoInfNFe := Leitor.rAtributo('nfeProc versao=');), poderiam me informa se esse erro ocorre com vocês?

Iiicio do XML

'<retDownloadNFe versao="1.00" xmlns="http://www.portalfiscal.inf.br/nfe"><tpAmb>1</tpAmb><verAplic>AN_2.1.1</verAplic><cStat>139</cStat><xMotivo>Pedido de Download processado</xMotivo><dhResp>2015-11-12T10:23:03</dhResp><retNFe><chNFe>32151130544795000160550010000012641000012640</chNFe><cStat>140</cStat><xMotivo>Download disponibilizado</xMotivo><procNFe schema="procNFe_v3.10.xsd"><nfeProc versao="3.10" xmlns="http://www.portalfiscal.inf.br/nfe"><NFe xmlns="http://www.portalfiscal.inf.br/nfe"><infNFe versao="3.10" Id="NFe32151130544795000160550010000012641000012640">

segue abaixo .pas "corrigido"

 

pcnNFeR.pas

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

function Tf_Mov_NFEnt.DownloadXML(const pChave: String; var pXml: WideString): Boolean;
begin
  Result := True;
  if pChave = '' then
    Exit;

  ACBrNFe.DownloadNFe.Download.CNPJ := DM.cds_empresaCNPJ.AsString;
  ACBrNFe.DownloadNFe.Download.Chaves.Clear;
  ACBrNFe.DownloadNFe.Download.Chaves.Add;
  ACBrNFe.DownloadNFe.Download.Chaves.Items[ACBrNFe.DownloadNFe.Download.Chaves.Count-1].chNFe := pChave;
  ACBrNFe.Download;

  ACBrNFe.NotasFiscais.Clear;
  if not ACBrNFe.NotasFiscais.LoadFromString(ACBrNFe.WebServices.DownloadNFe.retDownloadNFe.XML) then
  begin
    Result := False;
    raise Exception.Create('Falha ao baixar o XML: ' + ACBrNFe.WebServices.DownloadNFe.retDownloadNFe.XML);
  end;
  if ACBrNFe.NotasFiscais.Items[0].XML = '' then
  begin
    Result := False;
    raise Exception.Create('Erro ao baixar o XML');
  end;

  pXml := ACBrNFe.NotasFiscais.Items[0].XML;
end;

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia a todos,

Até quando vou ter que dizer que não se deve ler o arquivo XML cujo inicio é:  <retDownloadNFe versao="1.00" xml  

Pois esse XML não é a nota retornada pelo método DownloadNFe e sim o retorno da SEFAZ.

Pelo amor de Deus veja o nome da TAG inicial começa com ret, isso significa retorno.

O método DonwloadNFe se encarrega de extrair do retorno a NF-e que pode inclusive estar compactada (depende da SEFAZ) e salvar em disco (se configurado) com o nome padrão, ou seja, <chave>-nfe.xml

Para aqueles que desejam salvar a nota no banco de dados basta salvar o conteúdo retornado por:

ACBrNFe.WebServices.DownloadNFe.retDownloadNFe.retNFe.Items[0].procNFe (extraído da postagem do Tiago)

A propriedade procNFe contem o XML da nota propriamente dito e já descompactado caso tenha sido retornado desta forma pela SEFAZ.

Favor ler mais as NT?

  • Curtir 3
Consultor SAC ACBr

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

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

  • 3 semanas depois ...
Em 13/11/2015 10:05:38, Italo Jurisato Junior disse:

Bom dia a todos,

Até quando vou ter que dizer que não se deve ler o arquivo XML cujo inicio é:  <retDownloadNFe versao="1.00" xml  

Pois esse XML não é a nota retornada pelo método DownloadNFe e sim o retorno da SEFAZ.

Pelo amor de Deus veja o nome da TAG inicial começa com ret, isso significa retorno.

O método DonwloadNFe se encarrega de extrair do retorno a NF-e que pode inclusive estar compactada (depende da SEFAZ) e salvar em disco (se configurado) com o nome padrão, ou seja, <chave>-nfe.xml

Para aqueles que desejam salvar a nota no banco de dados basta salvar o conteúdo retornado por:

ACBrNFe.WebServices.DownloadNFe.retDownloadNFe.retNFe.Items[0].procNFe (extraído da postagem do Tiago)

A propriedade procNFe contem o XML da nota propriamente dito e já descompactado caso tenha sido retornado desta forma pela SEFAZ.

Favor ler mais as NT?

Italo, bom dia, tem alguns XMLs que estão sendo baixados utilizando o ACBR( ACBrNFe.Download;), e não consigo abrir o xml. Baixando este mesmo pelo programa de Manifesto da sefaz abre normal. Analisando os dois registros notei que o problema é que não esta aplicando o UTF8 no download realizado pelo ACBR. olha a parte comparada abaixo:

Trecho do XML baixado pelo ACBR                         : <xProd>L&M VIBE BOX 100 SLIMS</xProd>

Trecho do XML baixado pelo Manifesto do SEFAZ  : <xProd>L&amp;M VIBE BOX 100 SLIMS</xProd>

desde ja meu muito Obrigado.

Atenciosamente.

Adriano Teodorico dos Santos

Analista de Sistemas na Empresa GIGa Informática Dracena Ltda ME

Bach. em Ciência da Computação

Pós Graduado em Gestão Fiscal e Planejamento Tributário

Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois ...

Boa tarde amigos do forum, estou com um problema, ao tentar fazer download de um xml o cliente esta usando um certificado pessoa fisica no caso só com CPF, queria tirar a duvida se para fazer download é obrigatório o uso de um certificado com CNPJ?

se puderem me ajudar, desde já muito obrigado

 

Screenshot_1.png

Editado por marcosa460
Remover screenshot errada
Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde Marcos,

Se você esta usando o método Download, favor dar olhada na estrutura do downloadNFe que consta na Nota Técnica 2012/002 versão 1.02 - página 18.

Tudo indica que devemos usar um certificado com o CNPJ da pessoa que deseja realizar o Download da NF-e.

Consultor SAC ACBr

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

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

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

The popup will be closed in 10 segundos...