Zusätzliche Information

API-Dokumentation

Die Homepage der API Doxygen-Dokumentation ist <wincc_oa_path>/api/docu/index.html.

Migration

Überprüfen Sie die Anforderungen für die API-Entwicklung für die verwendete Version. Bestehende API-Projekte müssen konvertiert und mit dem entsprechenden Compiler kompiliert werden, um die API-Anforderungen zu erfüllen:

So konvertieren Sie ein API-Projekt von VC++ 12.0 oder VC++ 14.0 auf VC++ 14.1:

Öffnen Sie die alte .sln - Datei mit Visual Studio 2017. Die Projektdateien werden automatisch nach sln bzw. .vcxproj konvertiert.

Zusätzliche Ressourceninformationen

Durch die Verwendung der Datei VersInfo.rc können dem kompilierten Objekt zusätzliche Informationen, wie z.B. Dateibeschreibungen, hinzugefügt werden.

CONTROL-Erweiterungen und Versionsnummer-Prüfung

Der Controller prüft einen Versions-String aus der CtrlExtension (DLL, so) gegen seinen eigenen Versions-String. Eine CONTROL-Erweiterung muss einen Versions-String liefern. Dafür gibt es zwei Makros:CTRL_EXTENSION_VERSION und das CTRL_EXTENSION (class, funcList). Die BaseExternHdl.hxx definiert diese Makros. Eine vorhandene CONTROL-Erweiterung muss mindestens eines von den Makros in eine .cxx-Datei hinzufügen, damit sie mit der aktuellen WinCC OA-Version verwendet werden kann. Die Implementierung der newExternHdl()-Funktion ist nicht mehr notwendig. CTRL_EXTENSION (class, funcList) enthält auch CTRL_EXTENSION_VERSION.

Es muss nur die XXXExternHdl.cxx-Datei nach der Definition der fnList wie folgt geschrieben werden:

CTRL_EXTENSION(myClassNam, fnList)

Zeitwerte und Variablen

Für die Zeitwerte und Variablen ist folgendes zu beachten:

  • Laufzeitwerte/Alarme können mit einer Genauigkeit von bis zu Nanosekunden erstellt werden.
  • Historische Datenbanken behalten die korrekte Reihenfolge bei, speichern aber nur bis zu Millisekunden, d.h. sie verwerfen die Teile mit höherer Genauigkeit.
  • Der Vergleich von Zeitvariablen berücksichtigt nur Millisekunden. Zeitvariablen, die sich nur im Mikrosekunden- oder Nanosekundenbereich unterscheiden, würden von den eingebauten Vergleichsmethoden als gleichwertig angesehen.