SA0013: Deklarationen mit gleichem Variablennamen

Funktion

Ermittelt Variablen, die den gleichen Namen haben wie andere Variablen (Beispiel: globale und lokale Variablen mit gleichen Namen), oder wie Funktionen, Aktionen, Methoden oder Eigenschaften (Properties) innerhalb des gleichen Zugriffsbereichs.

Begründung

Gleiche Namen können beim Lesen des Codes verwirrend sein und sie können zu Fehlern führen, wenn unbeabsichtigt auf das falsche Objekt zugegriffen wird. Es wird empfohlen, Namenskonventionen zu verwenden, deren Einhaltung solche Situationen vermeidet.

Wichtigkeit

Mittel

PLCopen-Regel

N5/N9

Beispiele:

Globale Variablenliste GVL_App:

VAR_GLOBAL
    nVar  : INT;
END_VAR

Programm MAIN, welches eine Methode mit dem Namen Sample beinhaltet:

PROGRAM MAIN
VAR
    bVar    : BOOL;
    nVar    : INT;               // => SA0013
    Sample  : DWORD;             // => SA0013
END_VAR
.nVar := 100;                    // Writing global variable "nVar"
nVar  := 500;                    // Writing local variable "nVar"
METHOD Sample
VAR_INPUT
…