UPDATEXMLDATA
La specifica '@UPDATEXMLDATA permette di aggiornare un elemento e i suoi sottoelementi, lasciando invariata la parte rimanente di un file XML. L'elemento è individuato dall'attributo ELEMENTO ed eventualmente dalla condizione CHIAVE. L'attributo ACCODA permette di aggiungere l'elemento al file XML nel caso non venga trovato.
Parametri
| Parametro | Definizione | I/O | Versione traduttore | SMP | |
|---|---|---|---|---|---|
| TABELLA | Stringa | ||||
| BLOB | Blob | ||||
| ERRORE | Intero | ||||
| ELEMENTO | XmlElement | ||||
| CHIAVE | |||||
| ACCODA | Intero | ||||
| GES | Azione |
TABELLA
Indica il nome del file XML da aggiornare, completo di percorso.
L'utilizzo del parametro esclude l'utilizzo del parametro BLOB
BLOB
Consente di indicare la variabile di tipo BLOB in cui deve essere aggiornato il contenuto del file XML.
L'utilizzo del parametro esclude l'utilizzo del parametro TABELLA
ERRORE
Consente al programma di intercettare e gestire l'errore restituito dalla funzione.
Utilizzare uno dei metodi GetLastError*() della classe BCContextInfo per ottenere le informazioni dell'errore.
ELEMENTO
Identifica l'elemento da aggiornare.
CHIAVE
Definisce l'eventuale chiave di ricerca sull'elemento. La chiave di ricerca è basata sui valori correnti degli attributi (specificati con = nella '@DEFXMLDATA dell'elemento). Nel caso venga omesso, la specifica aggiorna il primo elemento individuato da ELEMENTO.
Attributo: nome dell'attributo che si vuole usare nella condizione di ricerca.
VarProg: variabile di programma che contiene il valore dell'attributo dell'elemento che si ricerca.
ACCODA
La presenza di quest'attributo definisce il comportamento della specifica se l'elemento da aggiornare non è trovato nel file XML. D'ufficio se l'elemento non è stato trovato, il file XML rimane invariato. Specificando quest'attributo la specifica aggiunge il nuovo elemento come ultimo elemento dell'elemento che lo contiene.
GES
[ScriviSottoElementi] Definisce la routine di scrittura dei sottoelementi (composti) che deve essere richiamata successivamente alla scrittura degli attributi dell'elemento a cui si riferisce.
Errori
| Codice | Descrizione |
|---|---|
| 22020 | Scrittura file XML. Attenzione! L'elemento XXX non e' stato definito tramite @DEFXMLDATA, e non verra' quindi aggiornato!. |
| 22021 | Impossibile avviare la scrittura su file XML: libreria MSXML4.dll non individuata |
| 22022 | Scrittura su file XML non eseguita. Il file esiste e non viene ricoperto. |
| 22023 | Attenzione! Impossibile creare il file XXX |
Esempi
Aggiornamento file XML
'@UPDATEXMLDATA TABELLA[FileXML] _
ELEMENTO[ARTICOLO] _
CHIAVE [IdArticolo=CODICE_ARTICOLO] _
GES[ScriviArticolo()]