Retorna um ou mais nós da estrutura, de acordo com o nome do elemento procurado.
Sintaxe
XmlChildEx( < oParent >, < cProcura > )
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
---|---|---|---|---|
oParent | objeto | Indica o nó que será utilizado para iniciar a procura do elemento procurado. | X | |
cProcura | caractere | Indica o nome do elemento que será procurado. | X |
Retorno
Nome | Tipo | Descrição |
---|---|---|
xRet | qualquer | Retorna o objeto do nó, se a função encontrar apenas um elemento, ou um array de nós, se possuir mais de um elemento do mesmo nome; caso contrário, o retorno será nulo. |
Observações
- Ao especificar um elemento qualquer do objeto para a função, na qual será usado como base para busca apenas no primeiro subnível, a função retornará todos os nós filhos que encontrar.
- Essa função é útil para procurar um elemento filho quando existe mais de um elemento do mesmo tipo. <cProcura> deve ser o nome que está na propriedade REALNAME da estrutura do obejto XML, ou seja, será a string passada como 2º parâmetro na função XMLParser/XMLParserFile seguido do nome do elemento em maiúsculo.
- 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).
- 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
User Function Exemplo() #INCLUDE "TOTVS.CH" #INCLUDE "XMLXFUN.CH" User Function ExeXML() Local cError := "" Local cWarning := "" Local oXML //Gera o Objeto XML ref. ao script oXML := XmlParser( GeraXML(), "_", @cError, @cWarning ) //Adquiro o elemento oXML := XmlGetChild(oXML:_PEDIDO, 5) // pega o 5º elemento a partir do elemento PEDIDO, o conteúdo da tag "Itens" oXML := XmlChildEx(oXML, "_ITEM") varinfo("Array", oXML) // Tranforma o Objeto XML em arquivo SAVE oXML XMLFILE "\xml\teste.xml" Static Function GeraXML() // Script XML a gerar objeto 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>2</Quantidade>" cScript += " <Preco>50.00</Preco>" cScript += " </Item>" cScript += " </Itens>" cScript += "</pedido>" Return cScript Return
Abrangência
Veja também
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas