Skip to main content

Attributo: call_after_init

Importante

VAR_INPUT le dichiarazioni in funzioni o metodi che utilizzano questo attributo portano a errori di compilazione. Motivo: in questo caso le variabili di input sono sconosciute al momento del richiamo, che si verifica implicitamente durante la modifica online.

Nota

Questa funzionalità è supportata dalla versione del compilatore 3.4.1.0.

L'effetto di questo pragma è che un metodo viene chiamato implicitamente dopo l'inizializzazione di un'istanza di blocco funzione. Per motivi di prestazioni è necessario aggiungere l'attributo sia al blocco funzione che al metodo nella sua prima riga sopra la parte di dichiarazione.

Un metodo con questo pragma è chiamato dopo il FB_Init metodo e dopo che il valore della variabile di un'espressione di inizializzazione è stato valido nella dichiarazione di istanza.

Sintassi:

{attribute 'call_after_init'}

Richiamo: prima riga sopra la parte di dichiarazione del metodo e del blocco funzione

Esempio 257. esempio

Definizione

{attribute 'call_after_init'}
FUNCTION_BLOCK FB_DoIt
... <functionblock definition>

{attribute 'call_after_init'}
METHOD FB_AfterInit
... <method definition>

La dichiarazione implementa la seguente dichiarazione nella successiva elaborazione del codice:

fbDoIt : FB_DoIt := (in1 := 99);

Elaborazione del codice

fbDoIt.FB_Init();
fbDoIt.in1 := 99;
fbDoIt.FB_AfterInit();

Ciò consente una reazione all'inizializzazione definita dall'utente in FB_AfterInit.