Attributo: hide
Importante
Utilizzando il pragma {attribute 'hide'} nascondere variabili e POU non ha l'effetto desiderato nella maggior parte dei casi. Invece, dovresti usare il file {attributo 'conditionalshow'}. pragma.
Il pragma impedisce che le variabili e le POU definite con esso vengano mostrate nel CODESYS interfaccia utente. Di conseguenza, puoi nascondere intenzionalmente questi identificatori senza limitare l'accesso. Questo può essere utile quando si sviluppano librerie.
Gestione della biblioteca
Debug
Assistente di input
Funzione "Elenca componenti".
Monitoraggio
Configurazione dei simboli
Le variabili o le POU definite con il pragma non sono né visibili nel Library Manager né sono suggerite nell'Input Assistant o nella funzione "List components". Il pragma impedisce che quelle variabili decorate vengano visualizzate nella configurazione dei simboli. Di conseguenza, non è possibile esportare questo tipo di variabili come simboli. Le variabili sono invisibili anche in modalità online e quindi i loro valori non possono essere monitorati. Inoltre, non puoi utilizzare alcuna funzionalità di debug e non hai alcun supporto durante il controllo dei bug.
Se tu, lo sviluppatore dell'applicazione, conosci il percorso esatto dell'istanza delle POU nascoste e delle variabili, puoi accedervi nel codice.
Sintassi:
{attribute 'hide'}
Inserisci posizione: per le variabili, sopra la riga con la dichiarazione delle variabili. Per le POU, nella prima riga.
Il blocco funzione FB_MyA contiene l'attributo pragma {attribute 'hide'} per nascondere la variabile locale xInvisibleIn.
FUNCTION_BLOCK FB_MyA
VAR_INPUT
iInA : INT;
{attribute 'hide'}
xInvisibleIn : BOOL;
xInit: BOOL;
END_VAR
VAR_OUTPUT
iOutA : INT;
END_VAR
VAR
iCounter : INT;
END_VARDue istanze del blocco funzione FB_MyA sono definiti nel programma principale.
PROGRAM PLC_PRG
VAR
fbMyA1, fbMyA2 : FB_MyA;
xVar2 : BOOL;
iVar1 : INT;
iVar2 : INT;
END_VAR
fbMyA1(iInA := 1, xInit := TRUE, xInvisibleIn := TRUE, iOutA => iVar1);
fbMyA2(iInA := 1, xInit := TRUE, iOutA => iVar2);Mentre un valore di input per fbMyA1 è ora implementata la funzione 'Elenca componenti', che si apre durante la digitazione fbMyA1. (nella parte attuativa del PLC_PRG), visualizza le variabili iInA, xInit, e iOutA, ma non la variabile nascosta xInvisibleIn.
FB_A è un blocco funzione della libreria HiddenFunctionality con lo spazio dei nomi predefinito HIDDEN. Per nascondere l'identificatore e il codice POU agli sviluppatori dell'applicazione, iniziare la dichiarazione della POU con l'attributo pragma {attribute 'hide'}. Per nascondere allo stesso modo le POU subordinate (azioni, metodi, proprietà e transizioni, iniziare anche le loro dichiarazioni con {attribute 'hide'}.
{attribute 'hide'}
FUNCTION_BLOCK FB_A
VAR_INPUT
END_VAR
VAR_OUTPUT
END_VAR
VAR
iA : INT;
iCount : INT;
iInvisible : INT;
END_VAR
{attribute 'hide'}
METHOD METH_Count : INT
VAR_INPUT
END_VAR
iCount := iCount + 1;
{attribute 'hide'}
METHOD METH_Invisible : BOOL
VAR_INPUT
END_VAR
iInvisible := iInvisible + 1;
{attribute 'hide'}
PROPERTY PUBLIC prop_iA : INTPer te come sviluppatore di applicazioni, tutte le POU sono invisibili. Puoi usarli solo se conosci il percorso dell'istanza.
PROGRAM PLC_PRG
VAR
fbHidden : HIDDEN.FB_A; // Hidden function block from library HiddenFunctionality
iCounter : INT;
END_VAR
fbHidden.METH_Invisible();
iCounter := fbHidden.iInvisible;In modalità online, non viene eseguito alcun monitoraggio.

Suggerimento
Con il {attributo 'hide_all_locals'} pragma, puoi nascondere tutte le variabili locali di una POU.