Von VBA zu.net. Die zenon Vielfalt an Programmierschnittstellen



Ähnliche Dokumente
Perceptive Document Composition

MetaQuotes Empfehlungen zum Gebrauch von

Verwendung des IDS Backup Systems unter Windows 2000

OP-LOG

Robot Karol für Delphi

Handbuch. Artologik EZ-Equip. Plug-in für EZbooking version 3.2. Artisan Global Software

PCC Outlook Integration Installationsleitfaden

Softwaren Engineering I

TTS - TinyTimeSystem. Unterrichtsprojekt BIBI

Stammdaten Auftragserfassung Produktionsbearbeitung Bestellwesen Cloud Computing

ARAkoll 2013 Dokumentation. Datum:

JetSym. Programmierung in Hochsprache ST nach IEC We automate your success.

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

ERPaaS TM. In nur drei Minuten zur individuellen Lösung und maximaler Flexibilität.

Content Management System mit INTREXX 2002.

Lizenzen auschecken. Was ist zu tun?

Kurzfassung der Studienarbeit

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv

Die Lernumgebung des Projekts Informationskompetenz

Terminabgleich mit Mobiltelefonen

Tipps und Tricks zu Netop Vision und Vision Pro

Code wiederverwenden: Objektorientierte Programmierung (OOP) sinnvoll nutzen Roland Wagner Automatisierungstreff IT & Automation 2015

Internet Explorer Version 6

Datenübernahme von HKO 5.9 zur. Advolux Kanzleisoftware

2. Einrichtung der ODBC-Schnittstelle aus orgamax (für 32-bit-Anwendungen)

Was ist neu in Sage CRM 6.1

SANDBOXIE konfigurieren

Softwaretests in Visual Studio 2010 Ultimate Vergleich mit Java-Testwerkzeugen. Alexander Schunk Marcel Teuber Henry Trobisch

BRAND APPS WHITEPAPER MOBILE MARKEN- UND KUNDENBINDUNG

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Dominik Stockem Datenschutzbeauftragter Microsoft Deutschland GmbH

Microsoft Office 365 Kalenderfreigabe

C++11 C++14 Kapitel Doppelseite Übungen Musterlösungen Anhang

! " # $ " % & Nicki Wruck worldwidewruck

Windows XP Jugendschutz einrichten. Monika Pross Molberger PC-Kurse

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite.

Lokale Installation von DotNetNuke 4 ohne IIS

Hinweis, sofern Sie Probleme beim Download der Excel-Dateien für das LIOS-Makro haben:

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

R-BACKUP MANAGER v5.5. Installation

Innerhalb der Entwicklungsebene werden Makros in einem sog. zu einer Arbeitsmappe gehörenden Modul gespeichert.

Ist Excel das richtige Tool für FMEA? Steve Murphy, Marc Schaeffers

Downloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler

Übungen zur Softwaretechnik

Qt-Projekte mit Visual Studio 2005

Installation der SAS Foundation Software auf Windows

Wie richten Sie Ihr Web Paket bei Netpage24 ein

Was ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit,

Elexis-BlueEvidence-Connector

Thema: Microsoft Project online Welche Version benötigen Sie?

Inhalt. 1 Übersicht. 2 Anwendungsbeispiele. 3 Einsatzgebiete. 4 Systemanforderungen. 5 Lizenzierung. 6 Installation. 7 Key Features.

bizsoft Rechner (Server) Wechsel

Zentrale Produktionsüberwachung in der Automobilindustrie. Information als Produktionsfaktor

Einführung in PHP. (mit Aufgaben)

ASP Dokumentation Dorfstrasse 143 CH Kilchberg Telefon 01 / Telefax 01 / info@hp-engineering.com

Vermeiden Sie es sich bei einer deutlich erfahreneren Person "dranzuhängen", Sie sind persönlich verantwortlich für Ihren Lernerfolg.

Die Software für Visualisierung und Analyse von Strukturinformationen aus EDM- und PDM-Systemen.

2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Lernziele:

Erstellen eigener HTML Seiten auf ewon

4D Server v12 64-bit Version BETA VERSION

Office 365 Partner-Features

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Multimedia im Netz. Wintersemester 2011/12. Übung 10. Betreuer: Verantwortlicher Professor: Sebastian Löhmann. Prof. Dr.

APIS Benutzertreffen Tipps und Tricks vom APIS Support

pro4controlling - Whitepaper [DEU] Whitepaper zur CfMD-Lösung pro4controlling Seite 1 von 9

Virtual Private Network

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Datenbank-Verschlüsselung mit DbDefence und Webanwendungen.

Daten fu r Navigator Mobile (ipad)

Objektorientierte Programmierung für Anfänger am Beispiel PHP

VB.net Programmierung und Beispielprogramm für GSV

Installation SQL- Server 2012 Single Node

Anleitungen zum KMG- -Konto

Tutorial Windows XP SP2 verteilen

Ablaufbeschreibung für das neu Aufsetzen von Firebird und Interbase Datenbanken mit der IBOConsole

1. Zuerst muss der Artikel angelegt werden, damit später die Produktvarianten hinzugefügt werden können.

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

Anwendungsbeispiele. Neuerungen in den s. Webling ist ein Produkt der Firma:

3 Windows als Storage-Zentrale

Windows Server 2012 Manageability and Automation. Module 1: Standards Based Management with Windows Management Framework - Robust Automation

THEMA: "SAS STORED PROCESSES - SCHNELL GEZAUBERT" HELENE SCHMITZ

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

Lizenzierung von SharePoint Server 2013

Über die Internetseite Hier werden unter Download/aktuelle Versionen die verschiedenen Module als zip-dateien bereitgestellt.

Anleitung zum Extranet-Portal des BBZ Solothurn-Grenchen

Verwendung des Terminalservers der MUG

Professionelle Seminare im Bereich MS-Office

mobilepoi 0.91 Demo Version Anleitung Das Software Studio Christian Efinger Erstellt am 21. Oktober 2005

ANYWHERE Zugriff von externen Arbeitsplätzen

Einführungskurs MOODLE Themen:

Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können.

Installationsanleitung für CashPro im Mehrbenutzerzugriff/Netzwerkbetrieb

Wiederherstellen der Beispieldatenbanken zum Buch Microsoft Project 2010

Anleitung über den Umgang mit Schildern

Herzlich Willkommen bei der nfon GmbH

Lizenzierung von SharePoint Server 2013

Transkript:

Von VBA zu.net Die zenon Vielfalt an Programmierschnittstellen 1

Inhalt Von VBA zu.net... 1 zenon Programming Interface... 3 Vom Erweitern zum automatischen Engineering... 4 VBA versus VSTA... 6 Das bringt.net:... 7 Resümee... 9 Mehr zum Thema VBA und VSTA... 10 2

Von VBA zu.net Die zenon Vielfalt an Programmierschnittstellen Automatisierungen anpassen, auf Kundenwünsche zuschneiden, an unterschiedlichste Bedingungen adaptieren es gibt viele Wege, dies zu erreichen. Von direkter Programmierung in der SPS über Skripte bis zu externen Tools reichen die Möglichkeiten. COPA-DATA unterstützt mit zenon schon lange möglichst viele Wege der Individualisierung und folgt der Philosophie, dass Automatisierer ihren eigenen Wegen und Vorlieben folgen sollen. Entsprechend groß ist die Vielfalt der Schnittstellen: So ist VBA bereits seit 1999 als Programmierschnittstelle in zenon enthalten. Die Process Control Engine (PCE) bietet Anwendern die Möglichkeit, zyklische Abläufe in VB Script oder Java Script zu programmieren. Sie eignet sich besonders für lang andauernde Funktionen, die im Hintergrund ablaufen, wie etwa Export-Funktionen, und unterstützt im Gegensatz zu VBA auch Multithreading. Mit der integrierten IEC 61131-3 SCADA-Logic straton greift man direkt aus zenon steuernd auf den Prozess zu. Und seit der Version 6.50 beherrscht zenon auch.net. zenon Programming Interface Das zenon Programming Interface öffnet den Weg zu externen Tools, auch zu.net. COPA-DATA ist zwar nicht der erste Hersteller von Automatisierungssoftware mit einem.net-interface. Allerdings hat COPA-DATA als einer der ersten Softwarehersteller überhaupt VSTA (Visual Studio Tools for Applications) vollständig in sein Produkt integriert. zenon Anwender profitieren so von starken Vorteilen bei Sicherheit und Komfort. VSTA basiert auf der professionellen Programmierumgebung von Microsoft, dem Visual Studio, und stellt das gesamte.net Framework in einer integrierten, professionellen Umgebung zur Verfügung. Diese tiefgreifende Integration ermöglicht nicht nur den Zugriff auf zenon Laufzeitsysteme von externen.net- Applikationen oder deren direkte Einbindung in die Oberfläche der Automatisierungslösung. Sie schafft es auch, zwei scheinbar gegensätzliche Philosophien zu vereinen: Parametrieren versus programmieren. Mit zenon werden Automatisierungsprojekte fehlerresistent und schnell parametriert; Programmierung ist im Programm selbst nicht nötig. Gleichzeitig erlaubt VSTA den beliebigen Aus- und Umbau von zenon und schafft so umfassende Flexibilität bei der Entwicklung von Speziallösungen. 3

Vorhandene Software durch.net-applikationen zu erweitern, ist kein Problem. Das gelingt im Prinzip mit jeder Software, die sich für externe Zugriffe öffnet. Die entscheidende Frage ist aber: Wie einfach und sicher lässt sich die programmierte Erweiterung in ein Prozessleitsystem oder HMI integrieren? zenon macht es mit seinem Automation Interface Programmierern leicht, die bei Erweiterungen immer wieder auftauchenden Problemstellungen elegant zu meistern: Wie kann man die Erweiterung an einzelne Prozessvariablen koppeln und dabei sicher stellen, dass sich Erweiterung und Leitsystem nicht gegenseitig überschreiben? Wie wird auf einen Alarm im Leitsystem reagiert? Wie werden die Benutzerrechte im HMI und in der Erweiterung koordiniert? Das zenon Programming Interface stellt.net aber auch VBA zenon Objekte und Funktionen zur Verfügung und ermöglicht so den direkten Zugriff auf zenon Funktionalitäten. Die VSTA-Integration bringt Projektanten noch einen weiteren elementaren Nutzen: automatisches Engineering. Vom Erweitern zum automatischen Engineering VBA und VSTA eigenen sich beide gut, um spezielle Funktionen oder Oberflächen zu einem Programm hinzuzufügen. zenon arbeitet auch gut mit externen Programmen, die in anderen Sprachen geschrieben werden, zusammen. So lassen sich Standardfunktionalität mit Extras, wie einer speziellen Eingabemaske, oder sehr individueller Benutzerführung erweitern. COPA-DATA baut in der Regel Kundenwünsche auch in reguläre Versionen ein, ganz nach dem Motto: Lieber einfach parametrieren als aufwändig programmieren. Denn funktionelle Erweiterungen über externe Programme verfügen nicht automatisch über zenon Prinzipien wie volle Netzwerkfähigkeit, integrierte Redundanz oder umfassende Benutzerverwaltung. Sie verursachen zudem oft höheren Wartungsaufwand, sind fehleranfälliger und mindern manchmal die Performance. Manchmal ist Skripting aber sogar sehr erwünscht und der beste Weg zu schneller und sicherer Automatisierung. Seine Vorteile zeigen sich primär im Bereich Editor-Automatisierung, also beim automatischen Engineering. Das umfangreiche zenon Programming Interface steht im Editor seit Version 6 (2003) zur Verfügung und wurde dafür ständig erweitert und an neue Möglichkeiten angepasst. 4

Sowohl Runtime- als auch Editor-Funktionalitäten stehen zur Auswahl. Zu den wichtigsten Editorfunktionen zählen die Möglichkeiten, Prozessbilder und Bildelemente zu erstellen, Schablonen, Alarme, das Verwalten von externen Dateien, die Erstellung von Variablen und Typen oder das Benutzer- Management mit seiner strengen Zugriffsverwaltung. Abbildung 1: zenon Programming Interface: Übersicht zenon Programming Interface als PDF Kunden berichten von Einsparungen von bis zu 98% der Engineeringzeit durch automatisches Erstellen von Projekten. Das Engineering wird mit diesen Methoden schneller, garantiert fehlerfrei und macht das Leben der Ingenieure spürbar einfacher. Auch, weil sich Standards über den Einsatz von Wizards sehr einfach definieren und implementieren lassen. Lange war VBA die Standard Programmiersprache zur Erweiterung von zenon bis mit Version 6.50.NET in großem Umfang integriert wurde. VSTA hat VBA nicht abgelöst. Beide Entwicklungsumgebungen existieren parallel in zenon. Es bleibt dem Anwender überlassen, sich zu entscheiden, welches Tool für seine Absichten besser geeignet ist. 5

VBA versus VSTA VBA ist sehr leicht erlernbar und gut dokumentiert. Seine große Fangemeinde sorgt für umfangreiche Literatur und schnelle Hilfe bei offenen Fragen oder Problemen. Vor allem für kleinere Projekte eignet sich VBA sehr gut. Allerdings unterliegt VBA auch einigen Einschränkungen, die bei größeren Projekten zum Hindernis werden können. Ein grundlegendes Problem ist seine mangelhaft umgesetzte Objektorientierung. Eine Implementierungsvererbung fehlt komplett. Statt Code schnell und fehlerarm wiederzuverwenden, muss mehr Zeit und Geld in die Entwicklung gesteckt werden als erwünscht. So existiert in der VBA-Entwicklungsumgebung weder eine spezielle Syntax noch Code- Highlighting für Prozeduren. Dieses Manko wird mit der Verwendung der Entwicklungsumgebung des Visual Studios in VSTA behoben. Sicherheit VBA ist Single-Threaded-Software. Rechenintensive Anwendungen bremsen damit das System aus und die heute üblichen Mehrkernprozessoren können dann auch nicht zu mehr Tempo beitragen. Wer Benutzeroberfläche und Berechnungen in seperaten Threads laufen lassen möchte, um die Benutzerfreundlichkeit zu erhöhen und die Performance zu optimieren, findet bei VBA keine Unterstützung. Und: Wird ein VBA-Programm instabil, reißt es die Hostapplikation gleich mit. Für sensible Automatisierungsbereiche kann das schnell zum Problem werden. Dazu kommt, dass bereits die Programmierung erhöhten Aufwand verlangt, da keine globale Fehlerbehandlung bereit steht. Der Error Handler muss in jede Prozedur extra eingefügt werden. Probleme mit VBA sehen auch manche Sicherheitsverantwortlichen in Unternehmen. VBA erlaubt generell den Zugriff auf alle COM-Funktionalitäten. Damit kann auch Code ausgeführt werden, der nicht in unmittelbarem Zusammenhang mit der Hostapplikation steht. 6

VBA VSTA Erlernbarkeit Sehr einfach Einfach Im Internet verfügbare Hilfen (Dokumentation, Programm-beispiele, Foren, etc.) Vielfältig VSTA: Im Entstehen C#: Sehr viel zenon Forum Vorhanden Vorhanden Objektorientierung Eingeschränkt Vollständig Runtime-Zugriff Voll Voll, ausgenommen einige spezielle zenon Events Editor-Zugriff Voll Voll Zugriff vom Webclient Möglich Nicht möglich Entwicklungsumgebung Deployment Reload Sicherung Voll in zenon integriert Voll in zenon integriert Voll in zenon integriert Voll in zenon integriert Multithreading Nein Ja Sicherheit Eingeschränkt Gut Das bringt.net: Für viele Unternehmen und Programmierer ist.net bereits die zukunftssichere Variante, wenn es um die Entwicklung von Erweiterungen geht. Die Zahl der in.net gut ausgebildeten Programmierer wächst beständig. In zenon und seinem integrierten VSTA finden sie eine professionelle und vielfältige Umgebung. Das.NET-Framework soll die primäre Softwareplattform für die Entwicklung von Windows-Software werden und die klassische Win32-Programmierung ablösen. Sie verlangt aber auch grundlegende Kenntnisse zur objektorientierten 7

Programmierung, zu.net und zu C#/Visual Basic.NET. Im Vergleich zu COM/COM+ bringt.net wesentliche Vorteile mit sich: Objektorientierung.NET Framework-Klassen Plattformunabhängigkeit Speicherverwaltung einfache Weitergabe durch simples Kopieren oder Installation mit Wizards Konfiguration per XML statt Registryeinträge WPF (VSTA unterstützt das einbinden von WPF-Controls) Threading Sicherheit Die Sicherheitsaspekte werden bei VSTA komplett auf das.net-framework ausgelagert. VSTA-Applikationen laufen getrennt von der Host-Applikation in einem seperaten Thread. Sollte die Anwendung abstürzen, bietet das.net Framework erweiterte Möglichkeiten um die Hostapplikation davon unberührt und stabil weiterlaufen zu lassen. VSTA bietet insgesamt eine deutlich höhere Stabilität als VBA, von der Konzeption bis zur Ausführung des Codes. Fehlerhafter Code wird durch die konsequente Umsetzung des Exception Handlings zuverlässig abgefangen und kann so keine Abstürze externer Anwendungen hervorrufen. 8

Resümee Für einfache Skripte unterscheiden sich VSTA und VBA in der Performance nicht wesentlich. Bei komplexeren Erweiterungen ist VSTA in der Regel schneller, beispielsweise durch schnelleren Zugriff auf Datenbanken durch ADO.NET oder besserer Performance durch auslagen von Programm-Funktionen in einen Hintergrund-Thread. VBA ist leicht erlernbar und eignet sich sehr gut für kleine Projekte. Es verfügt bereits über eine große Fangemeinde und damit unzählige Programmbeispiele. VSTA punktet vor allem mit besserem Resourcenmanagement. Projekte, die viele Objekte und eine große Menge Arbeitsspeicher benötigen, profitieren deutlich von VSTA. Für neue Hostprogramme ist VSTA die bessere Wahl, da es mit Objektorientierung, höherer Sicherheit und einer umfangreicheren Entwicklungsumgebung aufwartet. Gegenüber externen Lösungen punktet das integrierte VSTA durch einfaches Handling und Null Euro Anschaffungskosten. Es ist bereits in zenon enthalten und damit auf jedem zenon Rechner einsatzbereit. Vor allem aber nutzt es alle in zenon integrierten Funktionalitäten für Sicherung, Deployment und Reload. Das heißt: Mit jeder Projektsicherung wird auch das VSTA-Projekt gesichert, mit dem zenon Remote Transport werden auch VSTA-Programme übertragen und wenn ein zenon Projekt online nachgeladen wird, wird auch das VSTA-Projekt automatisch nachgeladen. Die eingeschränkte Kompatibilität von VSTA zu VBA ist für zenon Anwender kein Problem. Sie haben ohnehin freie Wahl. VBA bleibt weiterhin Bestandteil von zenon und bestehende Makros müssen nicht in.net portiert werden. So können bestehende Projekte weiter auf VBA setzen und neue Projekte mit allen VSTA- Vorteilen ausgestattet werden. Beide profitieren von ihrer Integration in zenon gegenüber externen Anwendungen, die auf zenon zugreifen. 9

Mehr zum Thema VBA und VSTA Im COPA-DATA Forum und dem COPA-DATA Magazin Information Unlimited finden Sie umfangreiche Artikel zu VBA und VSTA. Zum Beispiel: Martin Stark in Information Unlimited 18: VSTA (.NET) in zenon 6.50 die (R)evolution? (Seite 55) Günther Haslauer in Information Unlimited 17 und 18:.NET Windows Form Controls in zenon [Teil 1] (Seite 26).NET Windows Form Controls in zenon [Teil 2] (Seite 56) VBA-Serien von Robert Ficker in Information Unlimited 13 bis 18: Standards für die Projektierung setzen (Standardisierung) (Seite 34) Bestehende Projektteile wieder verwenden (XML Import) (Seite 59) Automatisch projektieren mit Excel (Variablen anlegen) (Seite 46) Projekt Wizard mit Datenimport aus DB oder Datei (Seite 56) Picture Filter: Eine neue Schnittstelle im zenon Objektmodell (Seite 59) Forum auf der COPA-DATA-Website VSTA Forum auf der Website VBA Forum auf der Website 10

2010 Ing. Punzenberger COPA-DATA GmbH All rights reserved. Distribution and/or reproduction of this document or parts thereof in any form is permitted solely with the written permission of the COPA-DATA company. The technical data contained herein has been provided solely for informational purposes and is not legally binding. Subject to change, technical or otherwise. zenon and straton are both trademarks registered by Ing. Punzenberger COPA-DATA GmbH. All other brands or product names are trademarks or registered trademarks of the respective owner and have not been specifically earmarked. 1