Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Portuguese

Pagetitle
XmlNode2Arr
XmlNode2Arr

Função: XmlNode2Arr

Transforma em array um objeto (nó) da estrutura do XML - EXtensibleeXtensible Markup Language (Linguagem extensível de formatação).

XmlNode2Arr ( < oRoot>, < cNode2arra> cNode> ) --> lRet

 

NomeTipoDescriçãoObrigatórioReferência
oRootObjetoIndica o elemento (nó) que será utilizado como raiz para iniciar a busca do elemento a ser transformado em array.X 
cNode2arracNodeCaracterIndica o elemento procurado que será transformado em array na estrutura.X 

 

lRet
    (logico)
  • Retorna verdadeiro (.T.), se transformar em array; caso contrário, falso (.F.).

Ao informar um elemento (nó) da estrutura XML, através de parâmetro <oRoot> como raiz, a função irá procurar pelo nome do nó que será transformado em array (<cNode>) no nível informado em <oRoot>. A função não faz busca em outros níveis da estrutura do XML.

/* No exemplo seguinte, é demonstrado o simples uso da função XmlNode2Arr, em que pegamos o objeto
Xml e o tranformamostransformamos em um array. Em seguida gravamos esse objeto em arquivo .xml propriamente dito. */

#INCLUDE "TOTVS.CH"
#INCLUDE "XMLXFUN.CH"

User Function ExeXML()
Local cError := ""
Local cWarning := ""
Local oScript

//Gera o Objeto XML ref. ao script
oScript := XmlParser( GeraXML(), "_", @cError, @cWarning )

// Transforma node em uma array, no caso tranforma a estrutura para array
XmlNode2Arr( oScript:_PEDIDO, "_PEDIDO" )

// Tranforma o Objeto XML em arquivo
// Grava o arquivo em um diretório \xml a partir do rootPath
SAVE oScript XMLFILE "\teste.xml"

Return .T.

Static Function GeraXML()
Local cScript := '<?xml version="1.0" encoding="ISO-8859-1"?>'/*'<?xml version="1.0" encoding="UTF-8"?>'
cScript += "<pedido>"
cScript += "    <Nome_Cliente>Microsiga Software</Nome_Cliente>"
cScript += "    <Endereco>Av. Braz Leme</Endereco>"
cScript += "    <Numero>1361</Numero>"
cScript += "    <Data>22-03-2005</Data>"
cScript += "    <Itens>"
cScript += "        <Item>"
cScript += "            <Produto>Protheus</Produto>"
cScript += "            <Quantidade>1</Quantidade>"
cScript += "            <Preco>100.00</Preco>"
cScript += "        </Item>"
cScript += "        <Item>"
cScript += "            <Produto>ERP</Produto>"
cScript += "            <Quantidade>0</Quantidade>"
cScript += "            <Preco>0</Preco>"
cScript += "        </Item>"
cScript += "    </Itens>"
cScript += "</pedido>"
Return cScript
Advanced Protheus 6.09 , Advanced Protheus 7.10 , Microsiga Protheus 8.11 , Protheus 10 , TOTVS Application Server 10