Ir para conteúdo
  • Cadastre-se

dev botao

Leitura XML da NFe


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

Recommended Posts

  • Membros Pro

Boa tarde,

Estou lendo o XML das NFe Utilizando o componente ACBrNfe, assim, pego algumas informações das NFe como:Placa, Valor do Frete, Valor da Mercadoria, Peso, Etc;

No entanto, quando algumas das informações(tag) não são localizadas no XML, o sistema retorna um erro(anexo); gostaria de como evitar este erro, ou se o método que utilizo não for o melhor, como posso recuperar as informações que necessito na melhor forma;

 

Erro ao executar a linha abaixo; isso porque no XML não existe a tag pesoB:

DMCTE.TBCTEQCARGA.Value:=  ACBrNFe1.NotasFiscais.Items[0].NFe.Transp.Vol.Items[0].pesoB  

 

 

Obrigado

Editado por robinhovrb
Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Robinho,

No exemplo que você postou, você concorda que a informação "pesoB" esta em uma lista, correto?

Sendo assim é prudente antes de ler essa informação checar a quantidade de itens que essa lista possui, caso a quantidade for zero não devemos ler.

if ACBrNFe1.NotasFiscais.Items[0].NFe.Transp.Vol.count > 0 then

      DMCTE.TBCTEQCARGA.Value:=  ACBrNFe1.NotasFiscais.Items[0].NFe.Transp.Vol.Items[0].pesoB  

Espero ter ajudado.

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

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Ok, obrigado;

Boa tarde Ítalo, estou com uma duvida: para um CTe subcontratação(segunda parte da viagem), devo informar a Chave do CTe que iniciou o transporte no campo

infCTeNorm.docAnt.emiDocAnt.Add\idDocAntEle.Add\Chave(infDoc)? O campo referente ao documentos, infCTeNorm.infDoc.infNF.Add/...(docAnt) deve ser informado?

Resumindo os grupos infDoc e docAnt, para CTe subcontratação são os dois obrigatório?

Obrigado

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Robinho,

Veja esse esse link lhe ajuda:

http://www.ophos.com.br/app/publicacoes/detalhe/ct-e-de-subcontratacao/
 

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

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Bom dia Ítalo;

Segundo a orientação da Ophos, dever ser preenchido com a chave do CTe anterior no campo refCTE, mas segundo a nota técnica 2013/014  item 5, informa:

Se Tipo do CT-e= 0 (Normal) ou 3 (Substituição) e Tipo de Serviço for IGUAL a Redespacho ou Redespacho Intermediário ou Subcontratação:
O grupo de Documentos Anteriores (docAnt) deve ser informado.

Estou tentando fazer um CTe tipo Normal e serviço Subcontratação(xml anexo32151186442720000637570010000952891206387833-cte.xml), com base no conhecimento do site acima, informando a chave do CTe anterio no campo refCTe, me retorna uma rejeição:OS DOCUMENTOS DE TRANSPORTE ANTERIOR, DEVE SER INFORMADO....

Estou confuso, de como proceder um CTE de Subcontratação, acredito que devo informar os dados nos campos docAnt(item 344 do manual);

Agradeço a ajuda, Robinho

 

Link para o comentário
Compartilhar em outros sites

  • 3 semanas depois ...
  • Consultores

Bom dia Robinho,

Segundo o site que lhe indiquei, note que existe dois CT-e, um do contratante (CT-e Normal) e o do SubContratado (CT-e SubContatação) neste ultimo devemos informar em Documentos Anteriores e em refCTe a chave do CT-e emitido pelo contratante.

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

Link para o comentário
Compartilhar em outros sites

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