Benutzerdefinierte Skripte – Überblick
Durch benutzerdefinierte Skripte lässt sich die Funktionalität der Software an bestimmten Schlüsselpunkten erweitern oder Aktionen auslösen. Dies wird durch benutzerdefinierte Skripte erreicht – dabei handelt es sich entweder um einzelne Skripte oder um Skriptprojekte (mehrere Skripte, die als Ganzes zusammen ausgeführt werden).
Innerhalb der Skriptumgebung hat ein Skript-Autor Zugriff auf zahlreiche gängige Prozeduren und/oder Funktionen vom Typ Pascal und/oder VBScript. Ein gängiges Beispiel wäre ein Ereignisskript, das bei der Trigger-Aktion „Ereignis beendet“ ausgeführt wird. Das Skript könnte verschiedene Bedingungen im Zusammenhang mit dem Vorgang prüfen, diese mit anderen Daten in der Datenbank abgleichen und, sofern bestimmte Bedingungen erfüllt sind, den Benutzer daran hindern, den Vorgang abzuschließen.
Im Wesentlichen folgt die benutzerdefinierte Skripterstellung demselben Ausführungsablauf wie die Workflow-Konfiguration, bietet jedoch einen detaillierteren Zugriff auf die verschiedenen Ausführungspunkte innerhalb des Ereignismodells, was eine feinere Steuerung oder Feinabstimmung von Ereignissen ermöglicht. Wenn eine Aufgabe mit den zahlreichen Werkzeugen der Workflow-Konfiguration nicht bewältigt werden kann, kommt IndySoft unter Umständen zu dem Schluss, dass benutzerdefinierte Skripte die beste Lösung sind, um eine bestimmte Workflow-Anforderung zu erfüllen.
Aufgrund der potenziellen Risiken bei der Erstellung benutzerdefinierter Skripte, der erforderlichen Programmierkenntnisse und des notwendigen Systemüberblicks ist der Zugriff auf die Software auf Mitarbeiter von IndySoft Services beschränkt. Dies wird im Rahmen des Supportvertrags nicht unterstützt und steht Endkunden nicht zum Kauf zur Verfügung.
Der vorübergehende Zugriff auf benutzerdefinierte Skripte während der Installation und Fehlerbehebung wird über einen „Antwortcode“ gesteuert, der eingegeben werden muss, bevor Skripte innerhalb einer IndySoft-Sitzung zum ersten Mal ausgeführt werden können. Nach dem Schließen der Skriptumgebungssitzung ist ein neuer Antwortcode erforderlich, um den Zugriff wiederherzustellen.
Fehlercodes können nur von einem IndySoft-Servicetechniker oder Supportmitarbeiter bereitgestellt werden, um bei der Fehlerbehebung im Zusammenhang mit skriptgesteuerten Funktionen des Produkts zu helfen.
Um eine Schnittstelle zum IndySoft-Kernsystem bereitzustellen, stellt die Skriptumgebung Dutzende von IndySoft-Prozeduren und -Funktionen zur Verfügung. Diese Prozeduren/Funktionen stellen der Skriptumgebung wichtige Funktionsmerkmale zur Verfügung, z. B. das Zurückgeben eines Feldwerts, das Setzen eines Feldwerts, das Aktualisieren eines Bildschirms, das Zurückgeben von Anmeldedaten usw.
Einzeilige Skripte sind seit mehreren Versionen ein fester Bestandteil des Ereignissystems in IndySoft (weniger verbreitete Anmeldeskripte wurden in Version 8x eingeführt) – und dieses Konzept wird in Version 9x und höher fortgeführt. Neben der Skripterstellung auf Ereignisebene gibt es sechs verschiedene Arten der Skripterstellung:
In den folgenden Abschnitten werden 6 verschiedene Arten von Skripten beschrieben:
·Ereignisskripte – bieten Zugriff auf Ereignisfelder/-details, werden an verschiedenen Stellen während des Ereignisassistenten ausgelöst
·Geräteskripte – bieten Zugriff auf Gerätefelder/-details, werden an verschiedenen Stellen während der Gerätebearbeitung auf dem Hauptbildschirm ausgelöst
·Vorlagenskripte – bieten Zugriff auf Vorlagenfelder/-details, werden an verschiedenen Stellen während der Vorlagenbearbeitung im Vorlageneditor ausgelöst
·Auftragssystem-Skripte – bieten Zugriff auf Felder/Details des Auftragssystems (Kostenvoranschlag, Arbeitsauftrag, Rechnungen), werden an verschiedenen Stellen während der Nutzung des Auftragssystems ausgelöst
·Anmeldeskripte – bieten Zugriff auf das aktuelle Anmeldeszenario, werden bei einer Passwortänderung bei der Anmeldung oder bei der Bearbeitung des Benutzers im Profilmanager ausgelöst
·Alarmskripte – bieten Zugriff auf zentrale Skriptfunktionen, die zum Erstellen komplexer Breakout-Skripte verwendet werden, werden beim Auslösen von Alarmen ausgelöst. Diese Skripte werden NICHT in der Datenbank gespeichert, sondern liegen als Dateien im IndySoft-Programmverzeichnis vor, benannt nach dem entsprechenden Alarm.
Jeder Skripttyp enthält einen eigenen Satz von IndySoft-Kernprozeduren/-Funktionen, die speziell auf die jeweilige Funktionalität zugeschnitten sind. Alle Skripttypen bieten zudem Zugriff auf eine zentrale IndySoft-Bibliothek mit Prozeduren und Funktionen, die Zugriff auf gängige Softwarefunktionen, Details und generischen Datenbankzugriff ermöglichen (Hooks in die Datenbank, die automatisch den in den Datenbankeinstellungen festgelegten Datenbankverbindungen folgen).
Es gibt vier Arten von Bibliotheken, in denen Sie nach verfügbaren Funktionen suchen können:
1. Pascal-Bibliothek: Benutzerdefinierte Skriptfunktionen – hierbei handelt es sich um eine Pascal-ähnliche Bibliothek mit gängigen Prozeduren und Funktionen, die für alle Skripttypen verfügbar ist.
2. VBScript-Bibliothek: Benutzerdefinierte Skriptfunktionen – hierbei handelt es sich um eine VBScript-ähnliche Bibliothek mit gängigen Prozeduren und Funktionen, die für alle Skripttypen verfügbar ist.
3. Allgemeine IndySoft-Prozeduren/Funktionen – diese generischen Prozeduren/Funktionen stehen auch in allen Skripting-Typen zur Verfügung. Diese Prozeduren/Funktionen ermöglichen einen schnellen Zugriff auf die IndySoft-Funktionalität.
4. Die für den Skripttyp spezifische Bibliothek mit Prozeduren und Funktionen. Welche Prozeduren und Funktionen letztendlich zur Verfügung stehen, hängt von der Art des Skripts ab. So stehen beispielsweise für Ereignisskripte auch die Prozeduren und Funktionen unter Ereignisskripte zur Verfügung. Für Ausrüstungsskripte stehen die Prozeduren/Funktionen unter Ausrüstungsskripte zur Verfügung usw.
Einzeilige Skripte folgen hinsichtlich ihrer Struktur stets der VBScript-Syntax, d. h. if...then-Anweisungen, while-Schleifen usw. Es gibt jedoch Dutzende weiterer, Pascal-ähnlicher Prozedur-Funktionen, die ebenfalls als praktische Hilfsmittel zur Verfügung stehen, d. h. DateToStr, FormatFloat usw. Projektbasierte Skripte sind noch flexibler – bei der Erstellung des Projekts wird der grundlegende Skriptsprache gewählt: entweder VBScript oder Pascal. So oder so stehen dieselben IndySoft-Kernprozeduren/-Funktionen zur Verfügung – wählen Sie einfach den Skriptstil, der Ihnen am vertrautesten ist.
Schließlich steht der IndySoft Project Editor für alle Skriptarten (mit Ausnahme von Alarmskripten) zur Verfügung – und ermöglicht noch komplexere Skripterstellung, einschließlich Formularentwurf und integrierter Fehlerbehebung.
Bevor Sie fortfahren, lesen Sie bitte den Hinweis zur Sicherheit.
Produktivitätstipp
Verwenden Sie das Skriptüberprüfungsprogramm (ScriptReview.exe), um Skripte aus einzelnen Dateien schnell zu überprüfen und zu bearbeiten.
