SA0112:参照変数 型の変数を検出します。 REFERENCE TO 理由:IEC61131-3規格では参照が許可されていません。 重要度:低 例 96 . 例 VAR ref_int : REFERENCE TO INT; ref_dw : REFERENCE TO DWORD; END_VAR での出力 メッセージ ビュー: SA0112: データ型 REFERENCE は許可されません
SA0113:データ型WSTRINGの変数 型の変数を決定します WSTRING 。 理由:すべてのシステムがそれをサポートしているわけではありません WSTRING 。クリックするとコードの移植性が高まります WSTRING 免除。 重要度: 低 例 97 . 例 VAR wstrTemp : WSTRING; END_VAR での出力 メッセージ ビュー: SA0113: データ型 WSTRI
SA0114:データ型LTIMEの変数 型の変数を検出します。 LTIME 理由:すべてのシステムがそれをサポートしているわけではありません LTIME 。クリックするとコードの移植性が高まります LTIME 免除。 重要度:低 例 98 . 例 VAR ltVar : LTIME; // SA0114 END_VAR での出力 メッセージ ビュー: SA0114: データ型 LTIME は許可さ
SA0115:データ型UNIONの宣言 の宣言を取得します UNION -データ型と型aの変数の宣言 UNION 。 根拠: IEC 61131-3 標準には共用体が含まれていません。共用体を使用しないとコードの移植が容易になります。 重要度:低 例 99 . 例 TYPE A_UNION: UNION lrTemp : LREAL; liTemp : LINT; END_UNION END_TY
SA0117:データ型BITの変数 データ型の変数宣言を検出します。 BIT (構造定義内で可能) 根拠: IEC 61131-3 規格にはデータ型が含まれていません。 BIT 。コードは、 BIT 。 重要度:低 例 100 . 例 TYPE Struct1 : STRUCT bitVar : BIT; iVar : INT; bVar : BOOL; END_STRUCT END_TYPE で
SA0119:オブジェクト指向機能 関数ブロック宣言などのオブジェクト指向機能の使用を決定します EXTENDS と IMPLEMENTS 、またはプロパティとインターフェイスの宣言。このルールは、他の61131-3システムに移植するコードを作成するときに役立ちます。 理由:すべてのシステムがオブジェクト指向プログラミングをサポートしているわけではありません。オブジェクト指向を使用しない場合、コー
SA0120:プログラム呼び出し プログラム呼び出しを決定します。 理由:IEC 61131-3規格によると、プログラムはタスク構成でのみ呼び出すことができます。プログラムを他の場所で呼び出さないと、コードの移植性が高まります。 重要度:低 例 102 . 例 PROGRAM prog_control VAR END_VAR ; PROGRAM PLC_PRG VAR END_VAR prog_c
SA0121: VAR_EXTERNAL 宣言がありません 関数ブロックで宣言されていないグローバル変数の使用を検出します。 VAR_EXTERNAL 理由:IEC 61131-3規格によると、グローバル変数へのアクセスは、 VAR_EXTERNAL -宣言は許可されています。 重要度:低 PLCopenルール:CP18 例 103 . 例 VAR_GLOBAL iGlob1 : INT; END
SA0122:式として定義された配列インデックス 配列インデックスを宣言するときの式の使用を検出します。 理由:すべてのシステムが式を配列境界として許可しているわけではありません。 重要度:低 例 105 . 例 PROGRAM PLC_PRG VAR CONSTANT c_iValue : INT := INT#15; END_VAR VAR arr : ARRAY [0..c_iValue +
SA0123:INI、ADR、またはBITADRの使用 の使用を決定します CODESYS Static Analysis -特定の演算子 INI 、 ADR と BITADR 。 理由: CODESYS -特定の演算子は、コードの移植性を妨げます。 重要度:低 例 106 . 例 PROGRAM PLC_PRG VAR uiTemp : UINT; TempVarInFUNC : DWORD;