Ermittelt Werte, die einer Enumerationsvariablen zugewiesen sind. Es dürfen nur definierte Enumerationskonstanten einer Enumerationsvariablen zugewiesen sein.
Begründung: Eine Variable vom Typ einer Enumeration sollte auch nur die vorgesehenen
Werte haben, ansonsten funktioniert Code, der diese Variable verwendet möglicherweise
nicht richtig.
Wir empfehlen, Enumerationen immer mit dem {attribute 'strict'}
zu verwenden. Dann prüft bereits der Compiler die korrekte Verwendung der Enumerationskomponenten.
Wichtigkeit: Hoch
Beispiel
TYPE COLOR : ( Red := 0, Green, Yellow ); END_TYPE PROGRAM PLC_PRG VAR eColor1: COLOR; END_VAR eColor1 := COLOR.Red; eColor1 := 1; // SA0034 --> SA0034: Enumerationswert anstelle 'INT#1' verwenden