Validar xml

291 views
Skip to first unread message

Gilvan Muniz

unread,
Oct 22, 2016, 8:49:55 PM10/22/16
to NFePHP
Pessoal boa Noite!

Por favor.
  
   Estou caminhando no meu projeto, já consigo emitir xml e assinar. Mas não valida o xml apresenta vários erros de layout que não entendo porque estou usando todos os dados conforme uso no emissor gratuito que ainda uso até hoje. Onde encontro os padrões para bater com o xsd de comparação que está no projeto da nfephp?

* Anexo uma xml que gerei para teste e abaixo resultado da tentativa de validar: Exempo: o serie 001 uso exatamente assim no emissor gratuito.

Eita !?! Tem bicho na linha ....

Elemento 'serie': [Erro 'Layout'] O valor '001' não é aceito para o padrão. '0|[1-9]{1}[0-9]{0,2}'. 
Elemento 'serie': '001' não é um valor válido 'TSerie'. 
Elemento 'nNF': [Erro 'Layout'] O valor '000000005' não é aceito para o padrão. '[1-9]{1}[0-9]{0,8}'. 
Elemento 'nNF': '000000005' não é um valor válido 'TNF'. 
Elemento 'dhSaiEnt': [Erro 'Layout'] O valor '22/10/16 22:08:22-02:00' não é aceito para o padrão. '(((20(([02468][048])|([13579][26]))-02-29))|(20[0-9][0-9])-((((0[1-9])|(1[0-2]))-((0[1-9])|(1\d)|(2[0-8])))|((((0[13578])|(1[02]))-31)|(((0[1,3-9])|(1[0-2]))-(29|30)))))T(20|21|22|23|[0-1]\d):[0-5]\d:[0-5]\d([\-,\+](0[0-9]|10|11):00|([\+](12):00))'. 
Elemento 'dhSaiEnt': '22/10/16 22:08:22-02:00' não é um valor válido 'TDateTimeUTC'. 
Elemento 'IE': [Erro 'Layout'] O valor '00107643600-43' não é aceito para o padrão. '[0-9]{2,14}|ISENTO'. 
Elemento 'IE': '00107643600-43' não é um valor válido 'TIe'. 
Elemento 'cMun': [Erro 'Layout'] O valor '' não é aceito para o padrão. '[0-9]{7}'. 
Elemento 'cMun': '' não é um valor válido 'TCodMunIBGE'. 
Elemento 'cEAN': [Erro 'Layout'] O valor '1' não é aceito para o padrão. '[0-9]{0}|[0-9]{8}|[0-9]{12,14}'. 
Elemento 'cEAN': '1' não é um valor válido. 
Elemento 'NCM': [Erro 'Layout'] O valor '1' não é aceito para o padrão. '[0-9]{2}|[0-9]{8}'. 
Elemento 'NCM': '1' não é um valor válido. 
Elemento 'EXTIPI': [Erro 'Layout'] O valor '1' não é aceito para o padrão. '[0-9]{2,3}'. 
Elemento 'EXTIPI': '1' não é um valor válido. 
Elemento 'CFOP': [Erro 'Layout'] O valor '1' não é aceito para o padrão. '[1,2,3,5,6,7]{1}[0-9]{3}'. 
Elemento 'CFOP': '1' não é um valor válido. 
Elemento 'cEANTrib': [Erro 'Layout'] O valor '1' não é aceito para o padrão. '[0-9]{0}|[0-9]{8}|[0-9]{12,14}'. 
Elemento 'cEANTrib': '1' não é um valor válido. 
Elemento 'nFCI': [Erro 'Layout'] O valor '1' não é aceito para o padrão. '[A-F0-9]{8}-[A-F0-9]{4}-[A-F0-9]{4}-[A-F0-9]{4}-[A-F0-9]{12}'. 
Elemento 'nFCI': '1' não é um valor válido 'TGuid'. 
Elemento 'ICMS': Elemento filho faltando. Era esperado um de ( ICMS00, ICMS10, ICMS20, ICMS30, ICMS40, ICMS51, ICMS60, ICMS70, ICMS90, ICMSPart ). 
Elemento 'vProd': [Erro 'Layout'] O valor '' não é aceito para o padrão. '0|0\.[0-9]{2}|[1-9]{1}[0-9]{0,12}(\.[0-9]{2})?'. 
Elemento 'vProd': '' não é um valor válido 'TDec_1302'. 
31161007455482000113550010000000051000000107-nfe.xml

emde...@gmail.com

unread,
Oct 23, 2016, 8:12:32 PM10/23/16
to NFePHP
Boa Noite Gilvan

Todos Estes erros, foi por que passou paramentros inválidos para o XML.
Sugiro que de uma olhada no manual da NF-e.
Segue Link:

www.nfe.fazenda.gov.br/portal/exibirArquivo.aspx?conteudo=URCYvjVMIzI=


Abraços

Flag King

unread,
Oct 24, 2016, 10:35:04 AM10/24/16
to NFePHP
Gilvan, vc precisa tratar os dados antes de jogá-los na API NFePHP. Todos os erros ali mostrados estão bem explicados. Basta vc ir corrigindo um a um.

Por exemplo:


Elemento 'IE': '00107643600-43' não é um valor válido 'TIe'. 


Este erro está te mostrando, em princípio, que a IE não está em um formato válido [não pode ter o traço].  Então vc precisa tratar esta informação, pra que ela seja retornada assim: "0010764360043".


Abraço;


Flag

Fabio Jonas Zech

unread,
Oct 24, 2016, 1:20:36 PM10/24/16
to NFePHP
Aproveitando também estou com problemas na validação do IE, mas no meu caso informei certo:

[xMotivo] => Rejeicao: IE do emitente nao informada

mas é um emitente que não tem IE então informei:

<IE>00000000000000</IE>

E não sai disso

Flag King

unread,
Oct 24, 2016, 1:23:05 PM10/24/16
to NFePHP
Neste caso, até onde lembro, você precisa informar nos parâmetros de configuração que não tem IE. No NfePHP ainda não testei, mas no meu ERP antigo, o parâmetro pra amitentes sem IE não era "0000000", o correto era "ISENTO".


Flag

Gilvan Muniz

unread,
Oct 24, 2016, 9:08:16 PM10/24/16
to nfe...@googlegroups.com
Por favor gente, eu não entendi o que o significado dos []{} para poder tratar os elementos. 

Por favor um Help! 

Em 24 de outubro de 2016 15:23, Flag King <flagki...@gmail.com> escreveu:
Neste caso, até onde lembro, você precisa informar nos parâmetros de configuração que não tem IE. No NfePHP ainda não testei, mas no meu ERP antigo, o parâmetro pra amitentes sem IE não era "0000000", o correto era "ISENTO".


Flag

--
--
Você recebeu esta mensagem porque está inscrito no Grupo "NFePHP".
Para Postar: nfe...@googlegroups.com
Para Sair do Grupo: nfephp+unsubscribe@googlegroups.com
Link: http://groups.google.com.br/group/nfephp?hl=pt-BR
-------
Repositório: https://github.com/nfephp-org/nfephp
---
Você recebeu essa mensagem porque está inscrito em um tópico no grupo "NFePHP" dos Grupos do Google.
Para cancelar inscrição nesse tópico, acesse https://groups.google.com/d/topic/nfephp/Uc4mk0ozZ7Y/unsubscribe.
Para cancelar inscrição nesse grupo e todos os seus tópicos, envie um e-mail para nfephp+unsubscribe@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.

Gilvan Muniz

unread,
Oct 25, 2016, 6:04:40 AM10/25/16
to nfe...@googlegroups.com

Galera obrigado. Acabei entendendo aqui já estou tratando e está dando certo. Muito obrigado mesmo.

Lara Gallassi

unread,
Feb 7, 2018, 6:46:02 AM2/7/18
to NFePHP
Cara, como você conseguiu resolver o problema
"Elemento 'ICMS': Elemento filho faltando. Era esperado um de ( ICMS00, ICMS10, ICMS20, ICMS30, ICMS40, ICMS51, ICMS60, ICMS70, ICMS90, ICMSPart )."
Os outros erros todos eu já resolvi, só falta esse e estou quebrando um pouco a cabeça rs.

Daniel Viana

unread,
Feb 8, 2018, 12:41:21 PM2/8/18
to nfe...@googlegroups.com
Cola aqui a parte do item do XML.

--
--
Você recebeu esta mensagem porque está inscrito no Grupo "NFePHP".
Para Postar: nfe...@googlegroups.com
Para Sair do Grupo: nfephp+unsubscribe@googlegroups.com
Link: http://groups.google.com.br/group/nfephp?hl=pt-BR
-------
Repositório: https://github.com/nfephp-org/nfephp
---
Você recebeu essa mensagem porque está inscrito no grupo "NFePHP" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para nfephp+unsubscribe@googlegroups.com.

Para mais opções, acesse https://groups.google.com/d/optout.



--
Daniel Viana'
Reply all
Reply to author
Forward
0 new messages