UPDATEDBDATA
PRIMA FORMA: Esegue l'aggiornamento dei record della tabella, selezionati mediante il criterio indicato dal parametro SELEZIONI[]. Ogni campo indicato dagli attributi ASSEGNA[] è aggiornato in base alla relativa formula. È necessario specificare almeno un attributo ASSEGNA[].
SECONDA FORMA: Esegue l'aggiornamento di un singolo record individuato dal parametro IND[]. I campi aggiornati sono quelli elencati nel parametro CAMPI[] oppure indicati senza formula dagli attributi ASSEGNA[]. In questo caso i valori dei campi sono dati dalle variabili di memoria ad essi associati (le usuali variabili delle tabelle). Se non viene indicato né il parametro ASSEGNA[], né il parametro CAMPI[], vengono aggiornati tutti i campi della tabella.
TERZA FORMA: Esegue l'aggiornamento dei record della tabella utilizzando come criterio di selezione dei record una query. Ogni campo indicato dagli attributi ASSEGNA[] è aggiornato in base alla relativa formula.
Nel caso in cui sia presente il parametro VIRTUALE[], la '@UPDATEDBDATA esegue l'aggiornamento sulla tabella o sulla struttura dinamica in memoria a seconda del valore del parametro VIRTUALE[] stesso.
Parametri
| Parametro | Definizione | I/O | Versione traduttore | SMP | |
|---|---|---|---|---|---|
| TABELLA | |||||
| IND | |||||
| TIPOREC | |||||
| TUTTIGRUPPI | Intero | ||||
| GRUPPO | Stringa | ||||
| VIRTUALE | Intero | ||||
| SELEZIONI | |||||
| SELEZIONIESTESE | |||||
| NUMRECORD | Long | ||||
| ERRORE | |||||
| CAMPI | |||||
| ASSEGNA | |||||
| APPENDICE | Stringa | ||||
| IDQUERY | Long | ||||
| RECORD | Classe | ||||
| OGGETTO | Classe | ||||
| VINCOLI | Intero |
TABELLA
Nome del DFX da cui reperire le caratteristiche della tabella, se sono indicati il dizionario dati e la sua versione fa riferimento la 'fotografia' del DFX alla determinata versione del dizionario dati indicata.
TIPOREC
Tipo record della tabella. Se omesso si utilizza il primo (o unico) tipo record definito per la tabella.
TUTTIGRUPPI
Se indicato, il filtro sul campo speciale DBGruppo per selezionare solo le righe del gruppo indicato in BCContextInfo.GetGruppo non viene effettuato.
Parametro con valori ammessi, si possono utilizzare i seguenti valori:
| Valore | Descrizione |
|---|---|
0 | No |
1 | Si |
GRUPPO
Definisce per il database il valore del campo speciale DBGruppo dei record da identificare nella tabella.
VIRTUALE
Il parametro permette la sovrapposizione tra la gestione delle tabelle su DB e la gestione delle tabelle in Struttura Dinamica.
Parametro con valori ammessi, si possono utilizzare i seguenti valori:
| Valore | Descrizione |
|---|---|
0 | la specifica gestisce il normale accesso alla tabella del DataBase. |
1 | la specifica gestisce l'accesso alla Struttura Dinamica in memoria, struttura definita con lo stesso nome del DFX della tabella. |
2 | la specifica gestisce solo l'accesso alla Struttura per le operazioni di LETTURA, mentre vengono gestiti sia il DB che la Struttura per le operazioni di SCRITTURA/CANCELLAZIONE |
SELEZIONI
Indica una o più condizioni che se verificate fanno sì che il record sia selezionato
L'utilizzo del parametro implica l'utilizzo del parametro ASSEGNA
L'utilizzo del parametro esclude l'utilizzo dei parametri: CAMPI, ERRORE
SELEZIONIESTESE
Indica una o più condizioni che richiedono una sintassi estesa rispetto quanto possibile dal parametro SELEZIONI[]
L'utilizzo del parametro esclude l'utilizzo del parametro ERRORE
NUMRECORD
Variabile numerica che riceve il numero di record aggiornati.
ERRORE
Indica un'azione da eseguire nel caso in cui sia stata raggiunta la fine/inizio del file, nel caso in cui siano terminati i record che soddisfano i filtri indicati nel parametro SELEZIONI[] o nel caso in cui l'archivio non esista.
CAMPI
Elenco dei campi da leggere. Utilizza la sintassi standard per definire un elenco di campi. Se non indicato, sono letti tutti i campi.
L'utilizzo del parametro esclude l'utilizzo del parametro SELEZIONI
ASSEGNA
Permette di indicare per un campo della tabella la formula di valorizzazione, indicando il campo, l'operatore di assegnazione (=) e l'espressione per valorizzare il campo.
APPENDICE
È il carattere di appendice che si vuole dare al nome delle variabili lette dall'archivio indicato (es.: APPENDICE['X']).
IDQUERY
Indica la sorgente dei dati per l'operazione di aggiornamento. I record letti dalla query sono aggiornati sulla tabella di origine. L'indicazione del parametro IDQUERY[] non consente l'indicazione dei parametri IND[], SELEZIONI[] e SELEZIONIESTESE[].
OGGETTO
Indica il nome della variabile di tipo oggetto contenente la riga della tabella da aggiornare.
L'utilizzo del parametro esclude l'utilizzo del parametro _RECTABELLA
VINCOLI
Permette di abilitare la gestione della profilazione se la tabella è soggetta a un vincolo di tipo elenco, inserendo in modo automatico delle clausole SQL da parte dell'ambiente, per filtrare gli elementi della tabella.
Parametro con valori ammessi, si possono utilizzare i seguenti valori:
| Valore | Descrizione |
|---|---|
0 | No |
1 | Si |
Esempi
Definizione
'@UPDATEDBDATA TABELLA[BLDFAMIGLIA] _
TIPOREC[FAM] _
IND[0 \COD = ""\] _
SELEZIONI[FAMCOD$ = "01"] _
ASSEGNA[FAMCOD$ = "10"] _
ASSEGNA[FAMDES$ = "Famiglia 10"]
Definizione in un ciclo
While ZENDFIL = 0
'@GETDBDATA TABELLA[BLDCLIFOR] _
TIPOREC[CF] _
IND[0 \COD = 0\] _
SELEZIONI[CFCOD < 6 AND CFRS1$ > ""]
If ZENDFIL = 1 Then ExitSr
CFRS1$ = FNUP$(CFRS1$)
'@UPDATEDBDATA TABELLA[BLDCLIFOR] _
TIPOREC[CF] _
IND[0 \COD = \] _
CAMPI[RS1]
EndWhile
Definizione con parametro QUERY
'@UPDATEDBDATA TABELLA[BLDFAMIGLIA] _
TIPOREC[FAM] _
QUERY[QueryObject] _
ASSEGNA[FAMDES$ = newFamDes]