Ir para conteúdo
  • Cadastre-se

dev botao

Falha Na Função Lerxml - Ct-E 2.00


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

Recommended Posts

Bom Dia Pessoal, tudo bem?

 

Eu encontrei uma falha na função "LerXml" da Unit pcteCTeR, para o CT-e 2.00. No momento que leio o xml para enviar para email, ele acaba não colocando as informações das Unidades de Transportes. Abaixo segue a alteração que fiz para que o problema fosse solucionado. 

 

 

//Código Antigo
while Leitor.rExtrai(2, 'infNFe', '', i01 + 1) <> '' do
 
//Código Novo
while Leitor.rExtrai(3, 'infNFe', '', i01 + 1) <> '' do

 

 

 

Favor revisar o ítem acima. Espero ter ajudado. Obrigado!

Link para o comentário
Compartilhar em outros sites

Efetuando mais testes, achei em mais dois pontos problemas parecidos que seguem abaixo. O número do grupo está errado. Especificamente no Grupo da TAG <infCTeNorm>. Caso esteja fazendo algo de forma equivocada favor me comunicar. Obrigado!

 

 

//Código Antigo  

i02 := 0;
while Leitor.rExtrai(5, 'infUnidCarga', '', i02 + 1) <> '' do
begin
  CTe.infCTeNorm.infDoc.infNF[i01].infUnidCarga.Add;
  CTe.infCTeNorm.infDoc.infNF[i01].infUnidCarga[i02].tpUnidCarga := StrToUnidCarga(ok, Leitor.rCampo(tcStr, 'tpUnidCarga'));
  CTe.infCTeNorm.infDoc.infNF[i01].infUnidCarga[i02].idUnidCarga := Leitor.rCampo(tcStr, 'idUnidCarga');
  CTe.infCTeNorm.infDoc.infNF[i01].infUnidCarga[i02].qtdRat      := Leitor.rCampo(tcDe2, 'qtdRat');
 
  i03 := 0;
  while Leitor.rExtrai(6, 'lacUnidCarga', '', i03 + 1) <> '' do
  begin
    CTe.infCTeNorm.infDoc.infNF[i01].infUnidCarga[i02].lacUnidCarga.Add;
    CTe.infCTeNorm.infDoc.infNF[i01].infUnidCarga[i02].lacUnidCarga[i03].nLacre := Leitor.rCampo(tcStr, 'nLacre');
    inc(i03);
  end;
  
//Código Novo
i02 := 0;
while Leitor.rExtrai(4, 'infUnidCarga', '', i02 + 1) <> '' do
begin
  CTe.infCTeNorm.infDoc.infNF[i01].infUnidCarga.Add;
  CTe.infCTeNorm.infDoc.infNF[i01].infUnidCarga[i02].tpUnidCarga := StrToUnidCarga(ok, Leitor.rCampo(tcStr, 'tpUnidCarga'));
  CTe.infCTeNorm.infDoc.infNF[i01].infUnidCarga[i02].idUnidCarga := Leitor.rCampo(tcStr, 'idUnidCarga');
  CTe.infCTeNorm.infDoc.infNF[i01].infUnidCarga[i02].qtdRat      := Leitor.rCampo(tcDe2, 'qtdRat');
 
  i03 := 0;
  while Leitor.rExtrai(5, 'lacUnidCarga', '', i03 + 1) <> '' do
  begin
     CTe.infCTeNorm.infDoc.infNF[i01].infUnidCarga[i02].lacUnidCarga.Add;
     CTe.infCTeNorm.infDoc.infNF[i01].infUnidCarga[i02].lacUnidCarga[i03].nLacre := Leitor.rCampo(tcStr, 'nLacre');
     inc(i03);
  end;
Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde Fernando,

 

Alterações realizadas e disponibilizadas.

 

Muito obrigado pela colaboração.

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

  • 2 semanas depois ...

Bom DIa Amigos,

 

Em meus testes na versão 2.00 estou alimentando corretamente os dados da TAG <infUnidCarga> para Notas Fiscais,e me ocorre o seguinte erro:

 

O elemento 'infUnidCarga' é inesperado, de acordo com o modelo de conteúdo do elemento pai 'infNF'.
Esperado: infUnidTransp.
 
Pensei que pudesse ser a atualização como nosso amigo Fernando relatou nesse tópico, porém a minha versão já está com essas modificações e ainda me aparece o erro acima, pelo que entendi, o componente diz que não foi passado nada nessa TAG.
 
Podem me ajudar nesse caso?
 
Ats.
Editado por easysoft
Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde Easysoft,

 

Segundo o Manual do CT-e versão 2.00, páginas 138 e 139 temos a TAG infUnidCarga como sendo filha da infUnidTransp.

 

Sendo assim deve-se informar primeiro o tipo da unidade de transporte (rpUnidTransp) e a identificação da unidade de transporte (idUnidTransp) e depois as informações das unidades de carga - TAG: infUnidCarga

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

  • 1 mês depois ...

Italo,

 

Identificamos que o parametro "TAgParada" nao esta funcionando corretamente, e ao ler as informações da tag "rem" na versao 1.04, não esta trazendo alguns campos.

 

Para funcionar corretamente, foi necessário no .inc, retirar o parâmetro TAGParada.

 

 

Em uma outra implementação que eu estava fazendo, pude perceber que esse novo parametro, não estava tão certo, e fiz algumas mudanças, vou encaminhar para que possam analisar para se possível liberar aos demais.

 

 

Editado por americasoft

--

Desenvolvimento 

Americasoft Informática

11 3019-3819
[email protected]

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde Thiago,

 

Poste aqui no fórum como anexo ou envie para mim por e-mail somente os arquivos alterados.

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á 3792 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.