CONTROL

Control Schlüsselwörter

Beachten Sie, dass WinCC OA ab Version 3.16 neue Control-Schlüsselwörter reserviert (z.B. new oder delete, siehe Variablen und Konstanten) bzw. verwendet (z.B. struct oder class, siehe Control++) werden. Beim Nachziehen von älteren Projekten auf 3.18 kann es daher zu Problemen kommen, falls Sie diese Schlüsselwörter, beispielsweise als Variablennamen, definiert haben. In diesem Fall müssen Sie alle Panels & Scripts anpassen, in denen diese Schlüsselwörter falsch verwendet werden.

Skriptausführung

Ab Version 3.18 werfen Funktionen in den nachfolgenden Fällen einen Syntaxfehler, welcher das Ausführen des Skripts verhindert:

  • Funktionen, welche als void deklariert wurden, aber einen Rückgabewert liefern.
  • Funktionen, welche einen deklarierten Rückgabewert haben, aber keine Rückgabe liefern.

getFileNames() - dir-Parameter

Seit WinCC OA -Version 3.16 P001 kann für den dir-Parameter der Funktion getFileNames() nur noch ein Verzeichnispfad angegeben werden. Bei Angabe eines Dateipfades liefert die Funktion nur einen leeren String, da ein Dateipfad kein gültiges Verzeichnis ist.

CNS-Funktionen mit Wildcards

SQL-Abfragen – "." vor UserName

Beginnend mit Version 3.20 wurde die Syntaxprüfung von SQL-Abfragen verbessert, wodurch es nun bei einer invaliden Angabe von Benutzernamen (UserName ohne "." als Prefix) zu einer Fehlermeldung kommt.

Dieses Verhalten wurde in früheren Versionen nicht explizit geprüft.

Fehlerhafte Angabe des Benutzernamens

sQuery = "SELECT 'UserName:_online.._value' FROM '*' WHERE _DPT = "_Ui"";

Korrekte Syntax der SQL-Abfrage

sQuery = "SELECT '.UserName:_online.._value' FROM '*' WHERE _DPT = "_Ui"";