SA0102: 外部からのプログラム/FB 変数へのアクセス
プログラムまたは機能ブロックのローカル変数への外部アクセスを決定します。
理由: CODESYS プログラムまたは機能ブロックのローカル変数への外部読み取りアクセスを有効にします。これは、データのカプセル化(データの非表示)の原則に違反し、IEC61131-3規格に準拠していません。
重要性:中
例 91. 例
PROGRAM PLC_PRG
VAR
iCounter : INT;
afb_Instance : AFB;
bfb_Instance : BFB;
END_VARiCounter := 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_VARMETHOD 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_VARiLocal := iLocal + 1;
での出力 メッセージ ビュー:
SA0102: プログラム/FB変数「iLocal」への外部からのアクセス