Á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: XmlDelNode

Exclui um nó de um objeto XML - eXtensible Markup Language (Linguagem extensível de formatação).

XmlDelNode( < oParent>, < cNode> ) --> lRet

 

NomeTipoDescriçãoObrigatórioReferência
oParentObjetoIndica o nó pai do elemento que será excluído.X 
cNodeCaracterIndica o nome real do elemento do nó que será excluído.X 

 

lRet
    (logico)
  • Retorna verdadeiro (.T.), se encontrar um elemento e excluí-lo; caso contrário, falso (.F.).

Essa função excluirá todos os nós que contém o nome igual ao nó informado para ser excluído a partir do nó indicado para pesquisa. Para isso, informa-se através de parâmetro um elemento do objeto que contém a estrutura do XML (um nó qualquer). Este não precisa ser obrigatoriamente a raiz da estrutura. Em seguida, deve-se informar o nome do nó que deseja excluir, pois a função procurará, recursivamente, a partir do nó informado, o elemento que possui o nome do nó que será excluído dentro da estrutura.

Importante
Não use essa função, pois ela modifica a estrutura do objeto XML, apresentando comportamentos indesejados após a remoção do elemento.

 

/* Neste exemplo, criamos uma string contendo o xml, em seguida parseamos ele, e agora vamos deletar um nodo do objeto
retornado pela xmlParser, note que no exemplo passei o nodo '<Itens>' como raiz da estrutura a ser pesquisada e
queremos deletar o nodo '<Item>', que é elemento de '<Itens>'. A função XmlDelNode tem como objetivo deletar todos os
elementos '<Item>' que encontrar dentro da estrutura passada para inicio da pesquisa. */

#INCLUDE "PROTHEUS.CH"
#INCLUDE "XMLXFUN.CH"

User Function getObjXML()
Local cError := ""
Local cWarning := ""
Local oXml := NIL

//Gera o Objeto XML
oXml := XmlParser( GeraXML(), "_", @cError, @cWarning )

if !XmlDelNode( oXml:_PEDIDO, "_DATA" )
conout("Nao foi possivel excluir")
EndIf

// Tranforma o Objeto XML em arquivo ou string
// Grava o arquivo em um diretório \xml a partir do rootPath
SAVE oXml XMLFILE "\teste.xml"
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>2</Quantidade>"
cScript += " <Preco>50.00</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