Mesmo antes, e desde que começamos a tratar notas fiscais eletrônicas(NFe) no Protheus, ocasionalmente, existe a necessidade de acessar dados, nos "nodes" de arquivos XML.
No exemplo abaixo, foram lidos o conteúdo dos campos xNome(nome do destinatário) e dEmi(data de emissão), num .XML de uma nota fiscal eletrônica :
# include "rwmake.ch"
# include "xmlxfun.ch"
user function fLexml()
local cError := cWarning := cDestinatario := cDataEmissao := "",;
cNomearq := "\NFE\XML\nomearquivonotafiscal.xml",;
oNotaxml := xmlparserfile(cNomearq, "", @cError, @cWarning)
if cError # "" .or. cWarning # ""
alert("Erro: " + cError + " - Aviso: " + cWarning )
else
cDestinatario := alltrim(oNotaxml:_nfeProc:_NFe:_infNFe:_dest:_xNome:Text)
cDataEmissao := alltrim(oNotaxml:_nfeProc:_NFe:_infNFe:_ide:_dEmi:Text)
msgalert("Destinatario: " + cDestinatario + " - Emissao: " + cDataEmissao )
endif
return nil
Note que foi criado o objeto oNotaxml com a função xmlparserfile.
Comentários
Postar um comentário