Árvore de páginas

Versões comparadas

Chave

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

...

Portuguese

Pagetitle
XmlGetChild
XmlGetChild

Função: XmlGetChild

Retorna um elemento filho da estrutura.

XmlGetChild ( < oParent>, < nChild> ) --> oRet

 

NomeTipoDescriçãoObrigatórioReferência
oParentObjetoIndica o nó no qual será utilizado como base para obter um nó filho.X 
nChildNuméricoIndica o índice do nó que desejamos obter.X 

 

oRet
    (objeto)
  • Retorna o objeto que representa o filho da estrutura, de acordo com o índice passado no parâmetro <nChild>.
  • Ao especificar um elemento qualquer do objeto para a função, na qual irá usar como base para retornar o nó filho indicado pelo segundo parâmetro passado para a função.
  • Pode-se utilizar essa função para alterar o posicionamento do objeto, para algum nó filho do atual, na estrutura do objeto XML - EXtensible Markup Language (Linguagem extensível de formatação).
/*No exemplo seguinte usamos a função para nos posicionar no nodo &ltitens> e, em seguida apagamos todos os nodosnós filhos 
com a xmlDelNode. Usando o comando SAVE criamos um arquivo teste.xml ao final da execução do programa.*/
#INCLUDE "TOTVS.CH"
#INCLUDE "XMLXFUN.CH"
User Function ExeXML1()
Local cError := ""
Local cWarning := ""
Local oScript
Local cFile := ""

//a partir do rootpath do ambiente
cFile := "\xml\pedido.xml"

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

// Agora vou apagar um node
if !XmlDelNode( oScript , "_ITEM" )
conout("Nao foi possivel apagar o nodo")
EndIf

// Tranforma o Objeto XML em arquivo
// SAVE oScript XMLFILE "\teste.xml"

Return oScriptStaticoScript

Static Function GeraXML() // Script XML a gerar objeto
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