You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
1.2 KiB
31 lines
1.2 KiB
Validação
|
|
---------
|
|
A validação dos arquivos de nota fiscal são controladas pelo módulo validacao.
|
|
|
|
>>> from pynfe.processamento import validacao
|
|
|
|
A classe Validacao é utilizada para validar os tanto arquivos xml quanto documentos
|
|
etree. Não há problemas em utilizar list-comprehension com a mesma pois ela implementa
|
|
um cache simples.
|
|
|
|
>>> validador = validacao.Validacao()
|
|
>>> nfe_caminho = 'tests/xml/NFe.xml'
|
|
>>> nfe_assin_caminho = 'tests/xml/NFe_assinada.xml'
|
|
>>> nfe_inval_caminho = 'tests/xml/NFe_falhaSchema.xml'
|
|
>>> validador.validar_xml(nfe_caminho, validacao.XSD_NFE)
|
|
True
|
|
>>> from lxml import etree
|
|
>>> validador.validar_etree(etree.parse(nfe_caminho), validacao.XSD_NFE)
|
|
True
|
|
>>> validador.validar_xml(nfe_assin_caminho, validacao.XSD_NFE_PROCESSADA)
|
|
True
|
|
>>> validador.validar_xml(nfe_inval_caminho, validacao.XSD_NFE)
|
|
False
|
|
|
|
Note que o schema utilizado para validação contra o xml é definido por variáveis
|
|
globais presentes no módulo. São elas:
|
|
|
|
- XSD_NFE : valida nfe's não certificadas
|
|
- XSD_NFE_PROCESSADA : valida nfe's certificadas
|
|
- XSD_PD_CANCELAR_NFE : valida um pedido de cancelamento de nfe
|
|
- XSD_PD_INUTILIZAR_NFE : valida um pedido de inutilização de nfe
|