SA0119: Objektorientierte Funktionalität

Funktion

Ermittelt die Verwendung objektorientierter Funktionalitäten, wie beispielsweise:

  • Funktionsbaustein-Deklarationen mit EXTENDS oder IMPLEMENTS
  • Eigenschaften- und Schnittstellendeklarationen
  • Verwendung des THIS- oder SUPER-Zeigers

Begründung

Nicht alle Systeme unterstützen Objektorientierte Programmierung. Der Code wird leichter portierbar, wenn auf Objektorientierung verzichtet wird.

Wichtigkeit

Niedrig

Beispiele:

Schnittstelle I_Sample:

INTERFACE I_Sample                                  // => SA0119

Funktionsbaustein FB_Base:

FUNCTION_BLOCK FB_Base IMPLEMENTS I_Sample          // => SA0119

Funktionsbaustein FB_Sub:

FUNCTION_BLOCK FB_Sub EXTENDS FB_Base               // => SA0119

Methode FB_Sub.SampleMethod:

METHOD SampleMethod : BOOL                          // no error

Get-Funktion der Eigenschaft FB_Sub.SampleProperty:

VAR                                                 // => SA0119 
END_VAR

Set-Funktion der Eigenschaft FB_Sub.SampleProperty:

VAR                                                 // => SA0119 
END_VAR