COM in WinCC OA

COM steht für Component Object Model, eine Spezifikation für die Entwicklung modularer Softwarekomponenten, die von jeder COM-kompatiblen Anwendung verwendet werden können. COM-Komponenten lassen sich ohne Probleme in solche Anwendungen integrieren und können gar während der Laufzeit aus einer Anwendung entfernt werden. COM-Komponenten können in einer Vielzahl unterschiedlicher Sprachen programmiert werden, wenngleich dafür meist C++ zum Einsatz kommt. Die Spezifikationen OLE, ActiveX und DirectX basieren auf der COM-Technologie.

Durch COM, eine als Industriestandard anerkannte Technologie, können Anwendungen ihre Objekte für Entwicklungsprogramme, Makrosprachen und andere Anwendungen, die Automatisierung unterstützen, offenlegen. Ein Tabellenkalkulationsprogramm kann z.B. eine Tabelle, ein Diagramm, eine Zelle oder einen Zellbereich offenlegen, wobei alle Objekte einen jeweils anderen Objekttyp haben. Ein Textverarbeitungsprogramm kann Objekte wie eine Anwendung, ein Dokument, einen Absatz, einen Satz, ein Lesezeichen oder eine Auswahl offenlegen.

Wenn eine Anwendung COM unterstützt, so kann auf die offengelegten Objekte zugegriffen und diese auch geändert werden, indem Sie Methoden für das Objekt aufrufen oder dessen Eigenschaften abrufen und festlegen.

Beim Datenaustausch verwendet Excel die COM Komponente, während WinCC OA einen eigenen Manager verwendet.

Der ComManager beinhaltet vier COM-Objekte, die für unterschiedliche Aufgaben verantwortlich sind.

Das ComManager-Objekt kapselt einen vollständigen WinCC OA Manager und bietet Zugriff auf die Datenpunkte von WinCC OA, wobei die Funktionen an den entsprechenden Funktionen im Ctrl-Script angelehnt sind.

Das ReportExt-Objekt ist eine Erweiterungen des ComManager-Objekts, speziell für den Excel Report. Hierauf wird nicht näher eingegangen.

Über das ProjAdmin- und das ProjAdminAuto-Objekt kann auf Informationen über installierte WinCC OA Projekte zugegriffen werden, wobei letzteres auch in typlosen Scriptsprachen, wie zum Beispiel vbScript, verwendet werden kann.