Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Composition Setup
import.css=/download/attachments/3279126062824/newLayouttecnologia.css
Portuguese

XmlGetChild
Pagetitle
XmlGetChild

Expand ALL

Função:

XmlGetChild


Retorna

um

elemento

filho

da

estrutura.

Sintaxe

Bloco de código
collapsefalse
XmlGetChild( <
oParent>
 oParent >, <
nChild> ) --> oRet
 nChild > )

Parâmetros

/Elementos

Nome

Tipo

Descrição

Obrigatório

Referência

oParent

Objeto

bloco de código

Indica o nó no qual será utilizado como base para obter um nó filho.

X


nChild

Numérico

numérico

Indica o índice do nó que desejamos obter.

X


Retorno

Nome

Tipo

Descrição

oRet

(

objeto

)

Retorna o objeto que representa o filho da estrutura, de acordo com o índice passado no parâmetro <nChild>

.

Observações

  • 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
  • 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 nodos filhos com a xmlDelNode.Usando o comando SAVE criamos um arquivo teste.xml ao final da execução do programa.*/
  • Se for usado como retorno o mesmo objeto passado em <oParent>, seu conteúdo será substituído pelo conteúdo do elemento procurado, não sendo possível recuperar a informação anterior.

Exemplos

Bloco de código
languagecpp
themeEclipse
linenumberstrue
collapsefalse
#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
XmlGetChild( oScript:_PEDIDO
, 
XmlChildCount( oScript:_PEDIDO )) // Agora vou apagar um node if !XmlDelNode( oScript , "_ITEM" ) conout("Nao foi possivel apagar o nodo") EndIf //
5 )

//Tranforma o Objeto XML em arquivo
//

SAVE oScript XMLFILE "\teste.xml"


Return 
oScriptStatic
oScript

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

Veja também