Scopo
Aggiunge un messaggio personalizzato alle informazioni raccolte dal sistema di debug. Può essere utilizzata per aggiungere informazioni utili a capire il funzionamento dell'applicazione in fase di sviluppo.
Sintassi
Applicazione.DTTLogMessage(testo messaggio, numero messaggio, tipo)
Argomenti
Testo messaggio | E' una stringa contenente il testo del messaggio da aggiungere al debug. |
Numero messaggio | E' un numero rappresentante il messaggio mostrato nel debug. E' un parametro opzionale il cui valore predefinito è 999. |
Tipo | Rappresenta il tipo di messaggio mostrato, appartenente alla lista valori DTTMessageTypes. |
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
optional boolean loop = 0 // Vero per resettare ad ogni ciclo il nodo XM...
)
{
// Se devo trovare un loop fermo il debug a 10 iterazioni
if loop
{
EsempiGL.DTTMaxLoopCycles := C10
}
//
// Finché trovo degli oggetti contenuti nella sorgente aggiungo figli
// all'oggetto padre
while Sorgente.HasNextNode()
{
MyXMLItem NuovoOggetto = new() //
XMLNode Nodo = null //
string s = "" //
//
Nodo := Sorgente.GetNextNode()
//
// Scrivo nel debug da descrizione del codice XML che sto leggendo
EsempiGL.DTTLogMessage(Nodo.ToString(), ??, ??)
//
// Scrivo nel debug il testo contenuto nel nodo XML
EsempiGL.DTTLogMessage(Nodo.SaveToString(), ??, ??)
//
// Se sto leggendo un oggetto di tipo item
if Nodo.Name() = item AND Nodo.IsElement()
...
//
// 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()
...
//
// Se devo causo volontariamente un loop
if loop
...
}
Padre.Loaded := True
Padre.ItemsFigli.Loaded := True
}
// 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
optional boolean loop = 0 // Vero per resettare ad ogni ciclo il nodo XM...
)
{
// Se devo trovare un loop fermo il debug a 10 iterazioni
if loop
{
EsempiGL.DTTMaxLoopCycles := C10
}
//
// Finché trovo degli oggetti contenuti nella sorgente aggiungo figli
// all'oggetto padre
while Sorgente.HasNextNode()
{
MyXMLItem NuovoOggetto = new() //
XMLNode Nodo = null //
string s = "" //
//
Nodo := Sorgente.GetNextNode()
//
// Scrivo nel debug da descrizione del codice XML che sto leggendo
EsempiGL.DTTLogMessage(Nodo.ToString(), ??, ??)
//
// Scrivo nel debug il testo contenuto nel nodo XML
EsempiGL.DTTLogMessage(Nodo.SaveToString(), ??, ??)
//
// Se sto leggendo un oggetto di tipo item
if Nodo.Name() = item AND Nodo.IsElement()
...
//
// 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()
...
//
// Se devo causo volontariamente un loop
if loop
...
}
Padre.Loaded := True
Padre.ItemsFigli.Loaded := True
}
- La procedura DTTLogMessage può essere utilizzata per scrivere nel debug informazioni che normalmente non vengono memorizzate, come ad esempio il numero di figli di una Collection dopo l'esecuzione della procedura che la popola, oppure il valore delle proprietà Inserted e Updated di un IDDocument subito prima del salvataggio.
- Specificando il numero del messaggio è possibile separare in gruppi distinti i vari messaggi inseriti nel debug. Mediante la DTTHideMessage è possibile nascondere tutti i messaggi identificati da un certo numero.
Ultima modifica: 23/03/2021 / Validità: da 6.5.2680