Árvore de páginas

Versões comparadas

Chave

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

...

Portuguese

Pagetitle
XmlNewNode
XmlNewNode

Função: XmlNewNode

Wiki Markup
Cria um novo nó a partir de um ponto qualquer no XML -  EXtensible Markup Language \(Linguagem extensível de formatação\). Sintaxe \[code\] XmlNewNode \( <oParent>, <cElementName>, <cRealName>, <cType> \) --> Nil \[code\]

Sintaxe

Bloco de código
collapsefalse
XmlNewNode( <
oParent>
 oParent >, <
cElementName>
 cElementName >, <
cRealName>
 cRealName >, <
cType> ) --> Nil
 cType > )

Parâmetros

 

Nome

Tipo

Descrição

Obrigatório

Referência

oParent

Objeto

objeto

Indica o local onde será inserido o novo nó XML.

X

 

cElementName

Caracter

caractere

Indica o nome do elemento (nó) no XML.

X

 

cRealName

Caracter

caractere

Indica o nome real do nó XML.

X

 

cType

Caracter

caractere

Indica o tipo de nó XML que será criado.

X

 

 

Nil (Nulo)

Observações

  • O novo nó será adicionado como filho no nó passado por parâmetro, no qual serão informados também os
seus dados
  • seus dados, tais como:
    RealName
,

  • ElementName
e

  • Type.
Bloco de código
languagecpp
themeEclipse
linenumberstrue
collapsefalse
  
/*
Neste exemplo criamos o xml através da função GeraXML, parseamos ele através da xmlParser retornando o objeto xml.


  Em seguida visualizamos o objeto retornado e usamos a funçao xmlChildCount retornando a quantidade de elementos no


  objeto contendo o xml. No Nosso exemplo a função irá retornar 5 elementos.Agora usaremos a xmlNewNode, especificando


  que o novo nodo será adicionado como filho de '<pedido>', logo depois acessamos o nodo e acrecentamos um texto para


  ele. obs: o resultado disso no xml será <exemplo1>Exemplo Microsiga</exemplo1>


  Após a criação do nodo, a xmlChildCount irá retornar 6 indicando que o nó foi inserido.
*/


  #INCLUDE "TOTVS.CH"


  #INCLUDE "XMLXFUN.CH"


  User Function getObjXML()


  Local cError   := ""


  Local cWarning := ""


  Local cXML := ""


  Local oXml := NIL



  //Gera o Objeto XML


  oXml := XmlParser( GeraXML(), "_", @cError, @cWarning )



  //verifica quantos elementos possuo


  conout( XmlChildCount( oXml:_PEDIDO ) )



  // Criando um node


  XmlNewNode(oXml:_PEDIDO, "Exemplo1", "Exemplo1", "NOD" )



  //setando o CONTEUDO do meu nodo ""


  oXml:_PEDIDO:Exemplo1:Text := "Exemplo Microsiga"



  //verifica quantos elementos possuo depois da inserção


  conout( XmlChildCount( oXml:_PEDIDO ) )



  // Tranforma o Objeto XML em string


  //SAVE oXml XMLSTRING cXML



  Return oXml



  // função para gerar uma string contendo um xml


  Static Function GeraXML()


  Local cScript := '<?xml version="1.0" encoding="UTF-8"?>'


  cScript += "<pedido>"


  cScript += "  <NomeCliente>Microsiga Software S/A</NomeCliente>"


  cScript += "  <Endereco>Av. Braz Leme</Endereco>"


  cScript += "  <Numero>1361</Numero>"


  cScript += "  <Data>22-03-2005</Data>"


  cScript += "  <Itens>"


  cScript += "    <Item>"


  cScript += "      <Produto>Prothues</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
 

Abrangência

Advanced Protheus 6.09 ,

Advanced Protheus 7.10 , Microsiga Protheus 8.11 , Protheus 10 , TOTVS Application Server 10

 

, ByYou Application Server

Veja também