RESETVID
La specifica '@RESETVID esegue l'operazione di aggiornamento di tutti i controlli di una videata od in alternativa di un particolare controllo. Con il termine aggiornamento di un controllo si intende:
- nel caso di controllo edit, l'esecuzione della decodifica del controllo con la valutazione dell'eventuale condizionamento;
- nel caso di controllo label, Groupbox, la valutazione dell'eventuale condizionamento;
- nel caso di griglia, viene eseguito il caricamento del controllo preservando le informazioni di posizionamento relative alla prima riga visualizzata ed alla posizione del cursore;
- nel caso di albero, viene eseguire il caricamento dell'albero. L'operazione di aggiornamento dei controlli indicati è immediata, quindi non richiede il rientro sulla specifica '@IVA. Avvertenza! A partire dalla versione 22.5 di ambiente la specifica viene implementata per il suo utilizzo con la gestione degli identificativi dei controlli attiva. Pertanto è consigliabile l'utilizzo della nuova sintassi disponibile ed evitare l'uso della sintassi di seguito riportata. DesktopWeb
Parametri
| Parametro | Definizione | I/O | Versione traduttore | SMP | |
|---|---|---|---|---|---|
| VID | Stringa | ||||
| TIT | Variabile | ||||
| ID | Stringa | ||||
| VAR | Variabile | ||||
| PARZIALE | Intero | ||||
| TABELLA | |||||
| INIDEC | Intero | ||||
| MANTIENIPOSIZIONE | Intero | ||||
| POSPREDEFINITO | Intero | ||||
| TOTALI | Intero | ||||
| CELLA | Variabile | ||||
| RIGA | Intero | ||||
| RIGACORRENTE | Intero | ||||
| RESETCOLDINAMICHE | Intero | ||||
| IGNORAINRIGA | Intero | 28.3 | |||
| REBIND | Intero |
VID
La specifica '@RESETVID esegue l'operazione di aggiornamento di tutti i controlli di una videata od in alternativa di un particolare controllo. Con il termine aggiornamento di un controllo si intende:
- nel caso di controllo edit, l'esecuzione della decodifica del controllo con la valutazione dell'eventuale condizionamento;
- nel caso di controllo label, Groupbox, la valutazione dell'eventuale condizionamento;
- nel caso di griglia, viene eseguito il caricamento del controllo preservando le informazioni di posizionamento relative alla prima riga visualizzata ed alla posizione del cursore;
- nel caso di albero, viene eseguire il caricamento dell'albero. L'operazione di aggiornamento dei controlli indicati è immediata, quindi non richiede il rientro sulla specifica '@IVA. Avvertenza! A partire dalla versione 22.5 di ambiente la specifica viene implementata per il suo utilizzo con la gestione degli identificativi dei controlli attiva. Pertanto è consigliabile l'utilizzo della nuova sintassi disponibile ed evitare l'uso della sintassi di seguito riportata. DesktopWeb
TIT
[TitoloVideata] Permette di modificare il titolo della videata definita nel parametro VID o comunque della videata corrente. TitoloVideata: può essere una costante o una variabile di tipo alfanumerico.
ID
Definisce la variabile o la costante di programma che contiene l'identificatore univoco del controllo.
Viene utilizzato dall'ambiente per gestire le personalizzazioni effettuate durante l'esecuzione del programma.
VAR
Identifica il nome del controllo su cui deve essere eseguito l'aggiornamento.
PARZIALE
[FlagResetParziale] Attributo che consente di eseguire una operazione di aggiornamento parziale, nel caso di aggiornamento di una griglia. FlagResetParziale: può essere una costante o una variabile di tipo intero. Valori possibili: <tabella> Valore Descrizione 0 il controllo verrà completamente aggiornato 1 il controllo verrà parzialemente aggiornato </tabella> Se è presente la sola parola chiave 'PARZIALE' questo parametro assume il valore '1'.
Parametro con valori ammessi, si possono utilizzare i seguenti valori:
| Valore | Descrizione |
|---|---|
0 | il controllo verrà completamente aggiornato |
1 | il controllo verrà parzialemente aggiornato |
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.
INIDEC
[FlagIniDec] Permette di eseguire l'aggiornamento della videata con la variabile ZINIDEC impostata ad 1. FlagIniDec: Può essere una costante o una variabile di tipo intero.
MANTIENIPOSIZIONE
[Desktop]
Nel caso di controllo griglia avanzata è possibile indicare di mantenere la posizione corrente, sia in termini di riga che di prima riga visualizzata. Il parametro è utilizzabile solo in presenza del parametro ID e se ID si riferisce all'identificativo di una griglia.
[Web]
In caso di controllo Planner è possibile indicare di mantenere la posizione corrente del planner ed evitare l'aggiornamento di tutto il componente, aggiornando i soli appuntamenti.
POSPREDEFINITO
[FlagSiNo] Nel caso di controllo griglia avanzata è possibile indicare l'aggiornamento del solo posizionamento predefinito. Il parametro è utilizzabile solo in presenza del parametro ID e se ID si riferisce all'identificativo di una griglia.
TOTALI
[FlagTotali] Esegue l'aggiornamento delle sole celle delle righe di totale presenti sulla griglia. L'operazione trasferisce il contenuto delle variabili associate alle celle di totale dalla memoria al video. In caso di griglia avanzata, se presenti i totali automatici, la '@RESETVID aggiorna automaticamente tutti i totali di tutti i gruppi visualizzati. Per utilizzare il parametro TOTALI è essenziale anteporre il parametro VAR con il nome della griglia. FlagTotali: Può essere una costante o una variabile di tipo intero.
CELLA
[NomeCella] Nel caso di controllo griglia è possibile indicare anche la cella che si intende aggiornare; la cella apparterrà alla riga corrente. Il nome riferisce la variabile associata alla cella mediante la specifica '@DEFCELL. Il parametro è utilizzabile solo in presenza del parametro ID e se ID si riferisce all'identificativo di una griglia.
RIGA
[FlagSiNo] Abilitando il parametro, si blocca l'eventuale azione INRIGA della griglia avanzata per tutto il processo di resetting. Questo perché alcune griglie, a fronte di aggiornamenti complessi eseguono l'azione in riga 2/3 volte inutilmente. Attenzione, il blocco deve avvenire solo se al termine dell'azione è presente una DEFVIDPOS sulla griglia stessa, altrimenti di potrebbe andare incontro all'errata valorizzazione delle variabili della griglia stessa. FlagSiNo: Può essere una costante o una variabile di tipo intero.
RIGACORRENTE
Nel caso di controllo griglia è aggiornare implicitamente la riga corrente. Il parametro è utilizzabile solo in presenza del parametro ID e se ID si riferisce all'identificativo di una griglia.
RESETCOLDINAMICHE
[FlagSiNo] Nel caso di controllo griglia avanzata vengono rimosse e ricaricate le colonne dinamiche. Il parametro sostituisce quello omonimo presente sulla '@DEFGRID che prevedeva l'uscita e il rientro in videata per ricaricare le colonne. FlagSiNo: Può essere una costante o una variabile di tipo intero.
Parametro con valori ammessi, si possono utilizzare i seguenti valori:
| Valore | Descrizione |
|---|---|
0 | Mantieni la stessa definizione delle colonne ad ogni ricaricamento della videata |
1 | Elimina le colonne della griglia permettendo la modifica della loro definizione ad ogni ricaricamento della videata |
IGNORAINRIGA
[FlagSiNo] Abilitando il parametro, si blocca l'eventuale azione INRIGA della griglia avanzata per tutto il processo di resetting. Questo perché alcune griglie, a fronte di aggiornamenti complessi eseguono l'azione in riga 2/3 volte inutilmente. Attenzione, il blocco deve avvenire solo se al termine dell'azione è presente una DEFVIDPOS sulla griglia stessa, altrimenti di potrebbe andare incontro all'errata valorizzazione delle variabili della griglia stessa. FlagSiNo: Può essere una costante o una variabile di tipo intero.
REBIND
[FlagRebinding] Permette di indicare se rieffettuare l'associazione tra i controlli video e le rispettive proprietà degli oggetti. E' indispensabile utilizzarlo quando si cambia il riferimento dell'oggetto esposto a video. Permette anche di rieseguire il lazy loading delle proprietà a video quando necessario. <tabella> ATTENZIONE, per effettuare il REBIND sulla griglia di input avanzata (AIG) è necessario itilizzare il metodo specifico <Griglia>.Rebind(<collezione>). Questo perché il modello dati della griglia è esplicito e differente rispetto ai controlli base di una videata. Di conseguenza il suo REBIND deve essere esplicito </tabella> FlagRebinding: Può essere una costante o una variabile di tipo intero.
Esempi
Esempio
'@DEFVID DIM[35,140] NOME[Videata] ID["IDVIDEATA"] TIT["Titolo Videata"] IDRUNTIME[IdRuntimeVar] RIBBON[IDRIBBON["RIBBONBAR"]]
'@DEFRIBBONBAR NOME[RIBBON] IDRIBBONBAR["RIBBONBAR"] _
CATEGORIA[ID["Azioni"] TIT["AZIONI"] _
GRUPPO[ID["GRP1"] TIT["Navigazione"] _
BOTTONE[ID["SYS_EXIT"] AZIONE[Exit()]] _
BOTTONE[ID["SYS_EXIT_ESC"] AZIONE[Exit()] INVISIBILE[1]] _
BOTTONE[ID["SYS_DETAIL"] AZIONE[Detail()] INVISIBILE[1]] _
BOTTONE[ID["BTN_RESET_EDIT"] AZIONE[ResetEdit()] INVISIBILE[1]] _
BOTTONE[ID["BTN_RESET_GRID"] AZIONE[ResetGrid()] INVISIBILE[1]] _
BOTTONE[ID["BTN_RESET_VID"] AZIONE[ResetVid()] INVISIBILE[1]]]]
'@DEFGRIDPANEL NOME[GridPanel] ID["GridPanel"] _
RIGA[ALTEZZA[0.5] LAYOUT[#FISSO]] _
RIGA[ALTEZZA[1] LAYOUT[#DINAMICO]] _
RIGA[ALTEZZA[33] LAYOUT[#DINAMICO]] _
RIGA[ALTEZZA[0.5] LAYOUT[#FISSO]] _
COLONNA[LUNGHEZZA[0.5] LAYOUT[#FISSO]] _
COLONNA[LUNGHEZZA[139] LAYOUT[#DINAMICO]] _
COLONNA[LUNGHEZZA[0.5] LAYOUT[#FISSO]]
'@DEFEDIT VAR[TextVar] ID["EDIT_TEXT"] POS[1,1] DIM[1,1] RET[1,1] FMT[TESTO[100]] _
GRID[COL[2] RIGA[2] COLDIN[1] RIGADIN[1]]
'@DEFQUERYGRID NOME[QRYGRID] _
ID["QRYGRID"] _
QUERYOBJECT[QueryObject] _
RET[2,1] POS[1,1] DIM[1,1] _
GRID[COL[2] RIGA[3] COLDIN[1] RIGADIN[1]]
'@ENDGRIDPANEL NOME[GridPanel]
'@RUNVID
...
' Richiamo videata di dettaglio con aggiornamento griglia
'@SRP Detail()
' ...Codice per esecuzione dettaglio...
' ...Richiamo videata di dettaglio...
' In questo caso è necessario specificare la videata interessata,
' Perchè la videata di dettaglio è ancora viva,
' Quindi ci sono due videate su cui si può eseguire '@RESETVID
' Quando sono presenti sia VID che ID, VID rappresenta l'IDRUNTIME della videata
'@RESETVID VID[IdRuntimeVar] ID["QRYGRID"]
Return
...
' Reset campo di input
'@SRP ResetEdit()
'@RESETVID VID[IdRuntimeVar] ID["EDIT_TEXT"]
Return
...
' Reset griglia da query
'@SRP ResetGrid()
'@RESETVID VID[IdRuntimeVar]ID["QRYGRID"]
Return
...
' Reset di tutti i controlli della videata
'@SRP ResetVid()
' Quando è presente solo il parametro VID, quest'ultimo rappresenta il nome della videata
'@RESETVID VID[Videata]
Return