Programların veya fonksiyon bloklarının lokal değişkenlerine harici erişimi tespit eder
Gerekçe: CODESYS programların veya fonksiyon bloklarının lokal değişkenlerine harici okuma erişimine izin verir. Bu, veri kapsülleme (verileri gizleme) ilkesiyle çelişir ve IEC 61131-3 standardına uygun değildir.
Önemliymiş: Orta
Örnek
PROGRAM PLC_PRG VAR iCounter : INT; afb_Instance : AFB; bfb_Instance : BFB; END_VAR iCounter := A_PRG.iLocal; // SA0102 iCounter := bfb_Instance.iLocal; // SA0102 A_PRG(); FUNCTION_BLOCK AFB VAR_INPUT END_VAR VAR_OUTPUT END_VAR VAR iLocal: INT; END_VAR METHOD METH : INT VAR_INPUT END_VAR iLocal := iLocal + 1; FUNCTION_BLOCK BFB EXTENDS AFB VAR_INPUT END_VAR VAR_OUTPUT END_VAR VAR END_VAR METHOD METH : INT VAR_INPUT END_VAR iLocal := iLocal + 1; PROGRAM A_PRG VAR iLocal: INT; END_VAR iLocal := iLocal + 1; --> SA0102: Access to program/fb variable 'iLocal' from the outside
Ayrıca bakınız