English
Instant Developer Foundation Documentazione
  • Reference Librerie
  • Librerie Componenti
  • XML Node
  • Gestione Nodi Figli

Get Next Node

funzione link

Scopo

Ritorna un oggetto XMLNode che rappresenta il primo nodo figlio non ancora visitato del nodo corrente. Ritorna Null Object se non ci sono nodi figli ancora da visitare. Di solito questa funzione viene usata all'intero di un ciclo While per scandire i nodi figli del nodo corrente.

Sintassi

XMLNode ProssimoNodo = null // Leggo il prossimo nodo
// 
ProssimoNodo := XMLNode.GetNextNode()

Argomenti

Questa funzione non ha argomenti.

Valore di ritorno

Viene ritornato un oggetto XMLNode contenente il prossimo nodo figlio non ancora visitato.

Esempio di codice

// *********************************************************
// Explain which processing is carried out by this procedure
// *********************************************************

public void XMLDocument.Importa0(
  XMLNode Sorgente // Nodo XML da cui leggere
  MyXMLItem Padre  // INDE Item in cui inserire i figli
)
{
  // Finché trovo degli oggetti contenuti nella sorgente aggiungo figli
  // all'oggetto padre

  while Sorgente.HasNextNode()
  {
    MyXMLItem NuovoOggetto = new() // 
    XMLNode Nodo = null            // 
    // 
    Nodo := Sorgente.GetNextNode()
    // 
    // Scrivo nel debug il codice XML che sto leggendo

    EsempiGL.DTTLogMessage(Nodo.ToString(), ??, ??)
    // 
    // Se sto leggendo un oggetto di tipo item

    if Nodo.Name() = item AND Nodo.IsElement()
    {
      NuovoOggetto.Nome := Nodo.GetAttribute(Nome)
      NuovoOggetto.Descrizione := Nodo.GetAttribute(Descrizione)
      Padre.ItemsFigli.Add(NuovoOggetto)
    }
    // 
    // Se è un nodo di tipo commento lo scrivo nel debug

    if Nodo.Type() = XML Comment Type
    {
      EsempiGL.DTTLogMessage(Nodo.Value(), ??, ??)
    }
    // 
    // Se il sorgente è di tipo text scrivo nel debug il testo contenuto

    if Nodo.IsText()
    {
      EsempiGL.DTTLogMessage(Nodo.Value(), ??, ??)
    }
    // 
    if Nodo.HasNextNode()
    {
      this.Importa0(Nodo, NuovoOggetto)
    }
  }
  Padre.Loaded := True
  Padre.ItemsFigli.Loaded := True
}
  • La funzione ritorna il prossimo nodo non visitato dell'oggetto XMLNode, cercandolo solo tra i figli di primo livello.

Ultima modifica: 23/03/2021 / Validità: da 6.5.2680

Vedi Anche

  • XML Node

Hai trovato utile l'articolo?

Grazie per il feedback!

Ti serve altro aiuto?

Consulta il Forum