Árvore de páginas

Você está vendo a versão antiga da página. Ver a versão atual.

Comparar com o atual Ver Histórico da Página

« Anterior Versão 2 Próxima »

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 '<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
Advanced Protheus 6.09 , Advanced Protheus 7.10 , Microsiga Protheus 8.11 , Protheus 10 , TOTVS Application Server 10

 

  • Sem rótulos