Á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

Cria um novo nó a partir de um ponto qualquer no XML -  EXtensible Markup Language (Linguagem extensível de formatação).

XmlNewNode ( < oParent>, < cElementName>, < cRealName>, < cType> ) --> Nil

 

NomeTipoDescriçãoObrigatórioReferência
oParentObjetoIndica o local onde será inserido o novo nó XML.X 
cElementNameCaracterIndica o nome do elemento (nó) no XML.X 
cRealNameCaracterIndica o nome real do nó XML.X 
cTypeCaracterIndica o tipo de nó XML que será criado.X 

 

Nil (Nulo)

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

/*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 '&ltpedido><pedido>', logo depois acessamos o nodo e acrecentamos um texto para
ele. obs: o resultado disso no xml será &ltexemplo1&gtExemplo<exemplo1>Exemplo Microsiga</exemplo1&gtApósexemplo1>
Após a criação do nodo, a xmlChildCount irá retornar 6 indicando que o nodo 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 cXMLReturncXML

Return oXml

// função para gerar uma string contendo um xmlStaticxml
Static Function GeraXML()
Local cScript := '<?xml version="1.0" encoding="UTF-8"?>'
cScript += "&ltpedido><pedido>"
cScript += " &ltNomeCliente&gtMicrosiga<NomeCliente>Microsiga Software S/A</NomeCliente>"
cScript += " &ltEndereco&gtAv<Endereco>Av. Braz Leme</Endereco>"
cScript += " &ltNumero&gt1361<<Numero>1361</Numero>"
cScript += " &ltData&gt22<Data>22-03-2005</Data>"
cScript += " &ltItens><Itens>"
cScript += " &ltItem><Item>"
cScript += " &ltProduto&gtProthues<<Produto>Prothues</Produto>"
cScript += " &ltQuantidade&gt1<<Quantidade>1</Quantidade>"
cScript += " &ltPreco&gt100<Preco>100.00</Preco>"
cScript += " </Item>"
cScript += " &ltItem><Item>"
cScript += " &ltProduto&gtERP<<Produto>ERP</Produto>"
cScript += " &ltQuantidade&gt0<<Quantidade>0</Quantidade>"
cScript += " &ltPreco&gt0<<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