Condizioni di notifica
Questo evento viene notificato dal sistema durante il caricamento di un documento da XML mediante la funzione LoadFromXML.
Utilizzo consigliato
Normalmente questo evento viene gestito quando occorre personalizzare il caricamento del documento da XML. Può essere utile farlo, per esempio, se il formato dell'XML è diverso da quello che avrebbe l'XML se fosse generato dal sistema per mezzo della funzione SaveToXML. L'evento permette, infatti, dato il nome di un nodo dell'XML di indicare al sistema a quale classe corrisponde.
Argomenti
Nome Interno | Parametro di output stringa. Rappresenta il nome della classe che occorre caricare utilizzando il nodo XML il cui nome è stato comunicato mediante il parametro Tag Esterno. |
Tag Esterno | E' una stringa che contiene il nome del nodo XML che il sistema sta caricando. |
Cancel | Parametro di output booleano. Se impostato a True segnala al sistema di interrompere il caricamento del documento da XML. |
Esempio di codice
// *************************************************
// Fired when this document is being loaded from XML
// *************************************************
event Categorie.OnLoadXMLEntity(
inout string InternalName // Internal children document name (class name)
string ExternalTag // External XML name used to tag this entity
inout boolean Cancel // Set to TRUE to stop loading the document
)
{
// Traduco l'XML in inglese
if ExternalTag = Categories
{
InternalName := Categorie
}
}
// Fired when this document is being loaded from XML
// *************************************************
event Categorie.OnLoadXMLEntity(
inout string InternalName // Internal children document name (class name)
string ExternalTag // External XML name used to tag this entity
inout boolean Cancel // Set to TRUE to stop loading the document
)
{
// Traduco l'XML in inglese
if ExternalTag = Categories
{
InternalName := Categorie
}
}
- Il sistema notifica questo evento per rispondere alla seguente domanda: "Dato il nodo XML chiamato NOMENODO, quale documento devo caricare utilizzando quel nodo?". Normalmente, se il documento XML è stato salvato dal sistema, tutti i nodi del documento XML hanno un nome uguale al nome della classe che occorre caricare a partire dal nodo stesso. Se, però, il documento XML non è stato creato dal sistema, è possibile, tramite questo evento, indicare al sistema la classe la cui istanza occorre caricare a partire dai nodi presenti nel documento XML.
- Qualora il documento possegga una o più collection figlie l'evento viene notificato anche sui documenti figli per permettere la personalizzazione della procedura di caricamento degli stessi. In questo caso l'evento viene notificato alla classe il cui nome (senza spazi) coincide con il nome del nodo XML figlio di quello utilizzato per il caricamento del documento.
Ultima modifica: 23/03/2021 / Validità: da 6.5.2680