Gli script di background presentano tre procedure predefinite per la gestione degli eventi, le cui dichiarazioni sono generate automaticamente alla creazione di un nuovo script:

 

         OnInitialize

         OnTimer

         OnTerminate

 

È inoltre possibile definire nuove procedure standard (routine o funzioni) che possono essere richiamate dal codice contenuto nelle procedure speciali.

 

 

Procedura OnInitialize

 

La procedura OnInitialize è una procedura predefinita che viene invocata (eseguita) una sola volta, all’avvio del motore script. Inserire in questa procedura le porzioni di programma che devono essere eseguite solo all’avvio del sistema, ad esempio istruzioni di inizializzazione.

All’interno della procedura OnInitialize viene utilizzata l’istruzione Period per specificare il periodo di esecuzione della procedura ciclica OnTimer. Period riceve come argomento l’intervallo tra una chiamata della procedura OnTimer e la successiva, espresso in millisecondi.

 

 

Procedura OnTimer

 

La procedura predefinita OnTimer viene eseguita ciclicamente fino alla chiusura del sistema. L’intervallo tra due esecuzioni successive è specificato dall’istruzione Period, impostata durante l’esecuzione della procedura OnInitialize.

Inserire all’interno della procedura OnTimer il codice che deve essere eseguito ciclicamente per l’intero periodo di attività del sistema.

Alla chiusura del motore script viene portata a termine l’ultima iterazione della procedura, quindi viene interrotto il ciclo di reiterazione e il controllo passa alla procedura OnTerminate.

 

Nota: la procedura OnTimer gestisce automaticamente l’interblocco della chiamata se l’esecuzione precedente non è stata ultimata, evitando problemi di rientro.

 

 

Procedura OnTerminate

La procedura OnTerminate viene invocata al termine dell’ultima iterazione della procedura OnTimer, in seguito alla richiesta di chiusura del motore script, ed è eseguita una sola volta.

Inserire in questa procedura le porzioni di codice che devono essere eseguite all’arresto del sistema di supervisione.

 

 


Attenzione!
L’esecuzione della procedura OnTerminate viene effettuata alla chiusura del Gestore Script: se il gestore script viene chiuso manualmente, l’esecuzione della procedura non coincide con la chiusura del sistema di supervisione ma con quella del modulo!