DEFTIMER
Il timer è un oggetto assegnato ad una videata la quale, passato un determinato lasso di tempo impostato dal programmatore, deve scatenare una certa azione che dev'essere eseguita indipendentemente dalle attività 'interattive' della videata stessa.
Per l'attivazione, il timer necessita dei seguenti parametri:
- Il tempo da attendere prima di scatenare l'azione (in secondi)
- Azione da svolgere al termine del timer (Callback).
A fronte di un timer impostato, il sistema invia alla videata il messaggio WM_TIMER.
La videata lo intercetta, ed esegue le operazioni richieste nella callback.
La specifica '@DEFTIMER va collocata, a livello di sorgente BC, tra la '@DEFVID e la '@RUNVID.
Non attiva automaticamente il timer, ma ne imposta solo i parametri per la videata.
Il timer viene attivato in corrispondenza della '@RUNVID.
Web
- Per utilizzare la funzionalità è necessario abilitare la sessione custom
- Per interagire con l'UI è necessario farlo attraverso i websocker Builder Web (attivi di default sui siti) e attraverso comandi specifici (es. '@RESETVID / Metodi delle specifiche video ecc)
Parametri
| Parametro | Definizione | I/O | Versione traduttore | SMP | |
|---|---|---|---|---|---|
| SECONDI | Intero | ||||
| AZIONE | |||||
| DISABILITATO | Condizione | 29.0 | |||
| ERRORE | Intero |
SECONDI
Indica ogni quanto tempo deve essere eseguita la callback, espresso in secondi.
Costante o variabile di tipo intero.
AZIONE
Definisce l'azione da eseguire allo scadere della temporizzazione.
La chiamata deve essere eseguita mediante l'istruzione 'GOSUB'.
Non è possibile inserire in tale parametro le istruzioni 'GOTO', né inserire una o più operazioni semplici (assegnamenti) utilizzando il carattere ':' come separatore fra le istruzioni.
DISABILITATO
Disabilitazione del controllo.
Se il timer viene disabilitato non verrà più effettuata l'azione collegata.
Se impostato su #TRUE il controllo viene disabilitato.
Se il parametro non viene inserito il controllo è considerato abilitato.
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.
Esempi
Azione richiamata ogni minuto
'@DEFVID DIM[35,140] NOME[Videata] ID["IDVIDEATA"] TIT["Titolo Videata"]
'@DEFGRIDPANEL NOME[GridPanel] ID["GridPanel"] _
RIGA[ALTEZZA[0.5] LAYOUT[#FISSO]] _
RIGA[ALTEZZA[34] LAYOUT[#FISSO]] _
RIGA[ALTEZZA[0.5] LAYOUT[#FISSO]] _
COLONNA[LUNGHEZZA[0.5] LAYOUT[#FISSO]] _
COLONNA[LUNGHEZZA[139] LAYOUT[#DINAMICO]] _
COLONNA[LUNGHEZZA[0.5] LAYOUT[#FISSO]]
'Controlli di videata
'@ENDGRIDPANEL NOME[GridPanel]
' SECONDI può essere una costante o una variabile intera
'@DEFTIMER SECONDI[60] AZIONE[TimerCallBack()]
'@RUNVID
...
'@SRP TimerCallBack()
' Processo da eseguire allo scadere del timer
Return