Aufbau des ScriptWizard

Innerhalb dieses Kapitels findet sich eine Beschreibung des grundlegenden Aufbaus des ScriptWizard. Hierbei werden die Hauptbestandteile des Wizards näher beschrieben und im Weiteren auf detailliertere Erklärungen in folgenden Kapiteln verwiesen. Ebenso finden sich innerhalb dieses Kapitels Erklärungen zu wiederkehrenden Elementen auf welche innerhalb der Funktionen bzw. Animationen des ScriptWizards verwiesen wird.

Abbildung 1. Übersicht - ScriptWizard

Aufbau

Der Aufbau des ScriptWizards wird in zwei Bereiche unterteilt. Zum Einen die Übersicht über vorhandene Funktionen und deren Inhalte sowie zum Anderen die Konfigurationsmöglichkeiten für das Erstellen bzw. Erweitern der bestehenden Funktionen.

Übersicht - Funktionen

Innerhalb der Übersicht der Funktionen ist es möglich, zwischen den, innerhalb des Panels oder Grafikobjektes enthaltenen Funktionen zu wechseln und deren Inhalte zu bearbeiten.

Abbildung 2. Übersicht - Funktion

Auswahlliste - Funktionen

Die Auswahlliste der Funktionen ermöglicht die Auswahl aller innerhalb des Objektes oder Panels deklarierten Funktionen. Durch die Auswahl einer Funktion werden alle darin enthaltenen Funktionselemente (Funktionen, Animationen, etc.) innerhalb der entsprechenden Übersicht angezeigt.

Abbildung 3. Auswahlliste - Funktionen

Beispiel

In der vorherigen Abbildung wurde die "Initialize" Funktion gewählt. Diese enthält zwei Variablendeklarationen (MyVariable und MyTargetVariable).

Hinweis

Neue Funktionselemente bzw. Animationen werden immer in die momentan gewählte Funktion eingefügt!

Übersicht - Animationen / Funktionen

Die Übersicht der Funktionselemente enthält alle Funktionselemente, welche innerhalb der Funktion vorhanden sind und beim Aufruf der Funktion ausgeführt werden. Hierbei kann es sich um Funktionen, Animationen oder Bedingungen handeln.

Abbildung 4. Übersicht Funktionsinhalte

Funktion hinzufügen

Ermöglicht das Einfügen einer benutzerdefinierten Funktion. Siehe Benutzerdefinierte Funktionen für mehr Informationen bezüglich der Erstellung von benutzerdefinierten Funktionen.

Funktion bearbeiten

Ermöglicht das Bearbeiten des innerhalb der Übersicht gewählten Funktionselementes. Alternativ kann das Funktionselement auch mittels eines Doppelklicks bearbeitet werden.

Funktion nach oben / unten verschieben

Ermöglicht es Funktionselemente innerhalb der momentan gewählten Funktion nach oben bzw. unten zu verschieben, um so die Reihenfolge des Ablaufes zu verändern.

Hinweis

Variablendeklarationen sind von der Reihenfolge ausgenommen. Diese werden immer zu Beginn der Funktion ausgeführt, unabhängig von der tatsächlichen Position innerhalb der Übersicht.

Funktion löschen

Löscht das momentan in der Übersicht gewählte Funktionselement.

Verfügbare Konfigurationsmöglichkeiten

Der ScriptWizard stellt eine Vielzahl an Funktionalitäten zur Verfügung die sich in den nachfolgenden Registerkarten befinden.

Abbildung 5. Übersicht - Optionen

Hinweis

Sollte der ScriptWizard nicht über das "Initialize"-Ereignis (Init) geöffnet werden, so steht nur ein reduzierter Umfang an Funktionen zur Verfügung. Es ist so nicht möglich, einen neuen DPConnect anzulegen sowie einen Klickrahmen für ein Faceplate zu erstellen.

Abbildung 6. Übersicht - Optionen (außerhalb Initialize)

Connect *

Um eine automatische Reaktion auf Wertänderungen innerhalb des Panels zu ermöglichen, können mit Hilfe des ScriptWizards DPConnects durchgeführt werden. Diese werden direkt einer Variable zugewiesen und ermöglichen so mittels dieser ein entsprechendes Verhalten (Änderungen der Farbe, Bewegungen, Rotationen,..) innerhalb der Funktion umzusetzen. Für mehr Details bezüglich er Registerkarte siehe: Datenpunkt Verbindungen

Animationen

Innerhalb der "Animationen"-Registerkarte finden sich alle Animationen, die mittels des ScriptWizards verwendet werden können, um Grafikobjekte visuell zu verändern. Diese Animationen umfassen das Aktivieren bzw. Deaktivieren, das Rotieren oder das Bewegen von Grafikobjekten. Für eine detaillierte Auflistung aller verfügbaren Animationen siehe Animationen.

Abbildung 7. Animationen

Funktionen

Innerhalb der "Funktionen"-Registerkarte finden sich alle Funktionsbausteine, welche mittels des ScriptWizards verwendet werden können, um Teile einer Funktion zu erstellen. Diese Bausteine umfassen unter Anderem das Deklarieren von Variablen, die Ausführungen von Berechnungen oder das Einfügen von Bedingungen. Für eine detaillierte Auflistung aller verfügbaren Funktionsbausteine siehe Funktionen.

Abbildung 8. Funktionen

$-Parameter

Um das mittels des ScriptWizard erstellte Panel flexibel mit verschiedenen Datenpunkten verwenden zu können, besteht die Möglichkeit, die entsprechenden Verweise mittels eines $-Parameters variabel zu gestalten. Innerhalb der Registerkarte $-Parameter ist es möglich, diese direkt zu definieren und für die anschließende Verwendung innerhalb der ScriptWizard Funktionen und Animationen vorzubereiten. Für mehr Details bezüglich der Registerkarte $-Parameter siehe: $-Parameter (ScriptWizard).

Klickrahmen für Faceplate *

Für das Erstellen eines Faceplates mittels des ScriptWizards ist es möglich, den entsprechenden Klickrahmen für das Objekt mittels Drag'N Drop zu platzieren. Dieser enthält die grundlegenden Konfigurationen für die Verwendung als Anzeige für den Status, den Modus sowie Alarme. Ebenso stellt er die Möglichkeit des Aufschaltens eines Faceplates zur Verfügung. Diese kommt vor allem für die Verwendung innerhalb der Simple Symbols zu tragen.

Abbildung 9. Klickrahmen für Faceplate

Hinweis

* = Nur innerhalb eines Initialize Ereignisses vorhanden

Dialog: Änderungen übernehmen

Sollten Sie Änderungen an Funktionen oder Animationen vorgenommen haben und diese noch nicht mittels der Schaltfläche "Übernehmen" gespeichert haben, erscheint folgender Dialog bei Betätigung der "OK" Schaltfläche des ScriptWizard Panels.

Abbildung 10. Dialog - Änderungen übernehmen

Dieser Dialog erlaubt es Ihnen, Ihre Änderungen zu übernehmen (Drücken Sie "Ja"), zu verwerfen (Drücken Sie "Nein") oder nochmals zu überprüfen (Drücken Sie "Abbrechen").

Subpanels des ScriptWizard

Nachfolgend eine Beschreibung diverser Panels, welche innerhalb des ScriptWizards an unterschiedlichen Punkten mehrfach Verwendung finden.

Benutzerdefinierte Funktionen

Um Funktionselemente und Animationen besser unterteilen zu können, oder um auf Bedingungen innerhalb des Programmablaufes zu reagieren, können mit Hilfe des ScriptWizards benutzerdefinierte Funktionen erstellt werden.

Diese werden innerhalb der Funktionsübersicht angezeigt und können so mit entsprechenden Inhalten (Animationen bzw. Funktionselemente) befüllt werden. Um eine neue benutzerdefinierte Funktion anzulegen, wird innerhalb des ScriptWizards mittels der Schaltfläche (Funktion Hinzufügen) das Übersichtspanel für benutzerdefinierte Funktionen geöffnet.

Abbildung 11. Übersicht - Benutzerdefinierte Funktionen

Funktion hinzufügen

Beim Hinzufügen neuer benutzerdefinierter Funktionen stehen mehrere Optionen zur Konfiguration der gewünschten Funktion zur Verfügung.

Abbildung 12. Neue benutzerdefinierte Funktion erstellen

Funktion

Ermöglicht es der Funktion einen Namen zu geben, sowie Parameter zu definieren.

Hinweis

Der Name einer Funktion muss eindeutig sein und darf nur einmal vergeben werden!

Parameter

Ein Parameter ist ein Übergabewert für die Funktion, welcher bei der späteren Verwendung der Funktion mit Werten befüllt werden muss.

Ein Parameter besteht aus folgenden Elementen:

  • Name => Der Name wird benötigt, um den Parameter adressieren zu können

  • Typ => Der Typ gibt an, welche Art von Wert der Parameter ist und wie dieser entsprechend weiter bearbeitet werden kann

  • Beschreibung => Die Beschreibung dient zur weiteren Unterscheidung beziehungsweise für die Erfassung von zusätzlichen Anmerkungen (optional)

Folgende Optionen stehen für die Parameter zur Verfügung:

=> Neuen Parameter hinzufügen

=> Ausgewählten Parameter nach oben verschieben

=> Ausgewählten Parameter nach unten verschieben

=> Ausgewählten Parameter löschen

Beschreibung

Die Beschreibung der Funktion dient dazu, um zusätzliche Erklärungen, Hinweise und eventuelle Warnungen zu vermerken (optional).

Speicherort

Der Speicherort gibt an, an welcher Stelle die benutzerdefinierte Funktion hinterlegt werden soll. Hier steht standardmäßig nur das "Panel" zur Verfügung. Dies speichert die definierten Funktionen innerhalb des SourceCodes des Panels. Dadurch kann nur innerhalb des Panels auf die Funktion zugegriffen werden.

Um eine Funktion innerhalb einer eigenen Library zu speichern muss diese unter "< WinCC_OA_Proj >\libs\Scriptwizard\" abgelegt werden. Auf diese kann auch von anderen Panels zugegriffen werden und ermöglicht so bestimmte Funktionen an verteilten Positionen zu verwenden.

Achtung

Der Ordner "ScriptWizard" muss manuell unter "< WinCC_OA_Proj >\libs\" angelegt werden!

Funktion bearbeiten

Das Bearbeiten einer benutzerdefinierten Funktion entspricht dem Ablauf des Erstellens einer neuen benutzerdefinierten Funktion (vgl. Abschnitt oberhalb).

Hinweis

Der Name einer Funktion kann nicht bearbeitet werden!

Funktion löschen

Löscht die innerhalb der Übersicht für benutzerdefinierte Funktionen gewählte Funktion.

Bedingungen

Um logische Bedingungen vereinfacht zu erstellen, gibt es innerhalb des ScriptWizard ein eigenes Panel für Bedingungen. Dieses listet alle verfügbaren Variablen und $-Parameter auf und stellt logische Operatoren zur Verfügung. Mittels dieser Elemente lassen sich die benötigten Bedingungen einfach per Mausklick zusammenstellen.

Anwendung findet dieses Panel zum Beispiel bei folgenden Animationen: Grafikobjekt aktiv/inaktiv setzen, Grafikobjekt sichtbar/unsichtbar setzen

Hinweis

Für komplexere Bedingungen kann die Eingabe auch manuell erfolgen. Es erfolgt jedoch nur eine Überprüfung der Syntax! Fehlerhafte Variablennamen oder fehlerhafte Bedingungen werden nicht korrigiert!

Abbildung 13. Panel für das Erstellen einer Regel

Beispiel

Folgende Bedingung ist wahr (TRUE), wenn der Wert von MyVariable größer ist als 20 oder der Wert von MyTargetVariable ungleich 0 ist. Bedingung: "(MyVariable>20)||(MyTargetVariable!=0)"

Hierbei werden zwei Bedingungen mittels eines Oder ( "||" ) verknüpft, so dass die gesamte Bedingung wahr (TRUE) ist, sollte eine der beiden Bedingungen zutreffen.