Ir para conteúdo
  • Cadastre-se

dev botao

Erro Ao Validar O Xml Mdfe - Falha De Validação


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

Recommended Posts

Boa tarde,

 

   Erro a tentar validar um xml do mdfe confome imagem em anexo.

   Já tentei reinstalar o componente mais atualizado e não deu certo.

Usei o código abaixo : 

  OpenDialog1.Title := 'Selecione o MDF-e';
  OpenDialog1.DefaultExt := '*-nfe.XML';
  OpenDialog1.Filter := 'Arquivos MDF-e (*-mdfe.XML)|*-mdfe.XML|Arquivos XML (*.XML)|*.XML|Todos os Arquivos (*.*)|*.*';
  OpenDialog1.InitialDir := MDFe.Configuracoes.Geral.PathSalvar;
  if OpenDialog1.Execute then
  begin
    MDFE.Manifestos.Clear;
    MDFE.Manifestos.LoadFromFile(OpenDialog1.FileName);
    MDFE.Manifestos.Valida;
    if MDFE.Manifestos.Items[0].Alertas <> '' then
      MemoDados.Lines.Add('Alertas: '+MDFE.Manifestos.Items[0].Alertas);
    showmessage('MDF-e validado!');
  end;

post-17707-0-68720100-1386777904_thumb.j

Link para o comentário
Compartilhar em outros sites

Não está funcionando. Blz... entendi.. poderia ser  mico do ano.. mas o xml que estou testando está correto.

O validador altera o xml que está lendo e fala que está errado.

 

Abaixo a tag com a informação da placa antes de validar com o componente.

 
<veicTracao>
<placa>CLU3503</placa>
 
Agora apos validar.
 
 <veicPrincipal>
  <placa/>
Editado por Marco.barros
Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde Marco,

 

Note que o componente possui uma propriedade chamada VersaoDF que aceita os valores ve100 e ve100a.

 

Se você esta realizando testes utilize a versão 1.00a  e consequentemente os schemas para esta versão.

 

Ocorreu uma mudança entre uma versão e outra.

 

Antes a TAG era veicPrincipal agora é veicTracao.

 

Se esta gerando o XML com a TAG veicPrincipal isso significa que o seus fontes estão desatualizados.

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

Italo, boa tarde,

   Imaginei que fosse algo do tipo. Mas cheguei a remover o componente da pasta onde foi instalado e do delphi XE2, baixei o exe ACBrInstall.exe configurei a instalação conforme arquivo ini abaixo e não alterou.

  Tem alguma sugestão para que possa ter certeza que está atualizado corretamente?

[CONFIG]
DiretorioInstalacao=C:\ACBr
DelphiVersao=Delphi XE2
Plataforma=Win32
FecharTortoise=1
InstalarCapicom=1
InstalarOpenSSL=1
UtilizarOpenSSL=0
DestinoDLL=0
CopiarTodasDLLs=0
C++Builder=0
[PACOTES]
synapse.dpk=1
ACBrComum.dpk=1
ACBrDiversos.dpk=1
ACBrSerial.dpk=0
ACBrTCP.dpk=0
ACBr_TEFD.dpk=0
ACBr_Boleto.dpk=0
ACBr_Sintegra.dpk=0
ACBr_SPED.dpk=0
ACBr_PAF.dpk=0
ACBrOpenSSL.dpk=1
ACBrCapicom.dpk=1
PCN2.dpk=1
ACBr_NFe2.dpk=1
ACBr_CTe.dpk=0
ACBrNFeDanfeFRpkg.dpk=0
ACBr_BoletoFC_FR.dpk=0
ACBrCTeDacteFRpkg.dpk=0
ACBrNFeDanfeQRpkg.dpk=0
ACBrNFeDanfeRV.dpk=0
ACBrCTeDacteQRpkg.dpk=0
ACBr_BoletoFC_Quick.dpk=0
ACBrNFeDanfeRVCodeBase.dpk=0
ACBr_NFSe.dpk=0
ACBr_MDFe.dpk=1
ACBr_LFD.dpk=0
ACBrNFeDanfeRLpkg.dpk=0
ACBr_BoletoFC_Fortes.dpk=0
ACBrNFSeDanfseRLpkg.dpk=0
ACBrNFSeDanfseFRpkg.dpk=0
ACBrNFSeDanfseQRpkg.dpk=0
Link para o comentário
Compartilhar em outros sites

  • Consultores

Marco,

 

Ao gerar o XML do MDF-e a TAG sai como veicPrincipal ou veicTracao?

 

O correto é veicTrancao, a validação já outra história.

 

A validação depende dos schemas.

 

Se você configurou o componente para a versão 1.00a, os schemas a serem utilizados estão no arquivo:

 

PL_MDFe_100a_pre (correcao).zip

 

pasta ...\Exemplos\ACBrMDFe\Delphi\Schemas\V100

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

Outro detalhe... alterei o RNTRC para uma valor menor que 8 caracteres.. informou corretamente. Mas quando alterei a tara de inteiro para fracionado.. não reportou falha.. O que poderia ser?

Em outro programa avulso(EditiX) .. reporta corretamente cvc-type.3.1.3: The value '60.12' of element 'tara' is not valid.

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa noite Marco,

 

Analisando os schemas notei que a TAG tara é tratada como string, sendo assim: 10 ou 10.0 é aceito pelo schema.

 

Onde você alterou a tara de inteiro para fracionado?

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

Bom dia Italo,

    Abri um xml que gerei pelo editor free chamado EditiX 2010. Neste editor, tem como adicionar o Shema e verificar o documento.

   Este editor consegue enxergar alteração que fiz no valor da tara.. isto foi bom porque o Sefaz estava retornando o erro, mas não era claro qual era o erro.

   Se pegar a expressão no  xsd  e testar no validador http://rubular.com/ (gratuito).. também consegue testar a expressão do xds assim consegue verificar os valores.

   Mas agora imagina um usuario final.. tentando testar o xml?rssr

Link para o comentário
Compartilhar em outros sites

  • 1 mês depois ...
  • Este tópico foi criado há 3704 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.