Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Comentário: Migration of unmigrated content due to installation of a new plugin
Composition Setup
import.css=/download/attachments/3279126062824/newLayouttecnologia.css
Portuguese

Pagetitle
XmlNode2ArrXmlNode2Arr

Colapse ALL Função:

XmlNode2Arr


Transforma

em

array

um

objeto

(nó)

da

estrutura

do

XML

-

EXtensible

eXtensible Markup

Language

(Linguagem

extensível

de

formatação).

Sintaxe

Bloco de código
collapsefalse
XmlNode2Arr( <
oRoot>
 oRoot >, <
cNode2arra> ) --> lRet
 cNode > )

Parâmetros

/Elementos

Nome

Tipo

Descrição

Obrigatório

Referência

oRoot

Objeto

objeto

Indica o elemento (nó) que será utilizado como raiz para iniciar a busca do elemento a ser transformado em array.

X

cNode2arra


cNode

Caracter

caractere

Indica 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.).


Observações

  • 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.

Bloco de código
languagecpp
themeEclipse
linenumberstrue
collapsefalse
 
  
/*No exemplo seguinte, é demonstrado o simples uso da função XmlNode2Arr, em que pegamos o 
objetoXml
objeto
  Xml e o 
tranformamos
transformamos 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 += "  
Microsiga Software"
  <Nome_Cliente>Microsiga Software</Nome_Cliente>"
  cScript += "  
Av
  <Endereco>Av. Braz 
Leme"
Leme</Endereco>"
  cScript += "  
1361"
  <Numero>1361</Numero>"
  cScript += "  
22
  <Data>22-03-
2005"
2005</Data>"
  cScript += "    <Itens>"

  cScript += "      
"
  <Item>"
  cScript += "        
Prothues"
    <Produto>Protheus</Produto>"
  cScript += "      
1"
      <Quantidade>1</Quantidade>"
  cScript += "      
100.00"
      <Preco>100.00</Preco>"
  cScript += "     
"
   </Item>"
  cScript += "    
"
    <Item>"
  cScript += "      
ERP"
      <Produto>ERP</Produto>"
  cScript += "         
0"
   <Quantidade>0</Quantidade>"
  cScript += "          
0"
  <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

Veja também