Einführung in die Workflow-Programmierung

In diesem Kapitel werden folgende Themen behandelt:

Programmieren von CM-Skripten

Wie Sie in den vorherigen Abschnitten gesehen haben, können ConSol-Workflows über die grafische Benutzeroberfläche des Process Designers ziemlich einfach eingerichtet werden. Um "echte Intelligenz" in die Workflows zu bringen, müssen Sie allerdings programmieren, d. h. ConSol CM-Workflow-Skripte schreiben, die in den Workflow-Aktivitäten und Bedingungen verwendet werden.

ConSol CM-Skripte werden in Groovy geschrieben. Sie sollten also zumindest ein Grundwissen dieser Programmiersprache haben. Da der Groovy-Code auf einer Java Virtual Machine ausgeführt wird, können Sie auch Java-Code schreiben. Wenn Sie also Java- oder Groovy-Entwickler sind, können Sie einfach lernen, mithilfe der ConSol CM-Groovy-API komplizierte Workflows zu erstellen.

Bitte wenden Sie sich an den CM-Vertrieb, wenn Sie an dem von ConSol angebotenen Groovy-Training Groovy in a Nutshell interessiert sind.

Im vorliegenden Handbuch verwenden wir Java-Stil und Groovy-Stil. Sie können entscheiden, welchem Stil Sie folgen möchten.

Einige kurze Beispiele für die Programmierung im Java- vs. Groovy-Stil

Wie oben erwähnt, müssen Sie für ConSol CM-Skripte Groovy verwenden. Der gleiche Inhalt kann möglicherweise auf unterschiedliche Art ausgedrückt oder programmiert werden. Die folgenden Abschnitte enthalten einige Hinweise und Beispiele für die Arbeit mit der Groovy-API.

Getter-Methoden können häufig ausgelassen werden

Die meisten Groovy-Objekte haben mehrere Getter-Methoden, mit denen Werte aus Objektattributen abgerufen werden. Sie können entweder die vollständigen Getter-Methoden oder die Kurzform verwenden. Siehe auch folgende Beispiele für Workflow-Skripte.

Anwendungsfall Java-gemäße Syntax (Langform) Groovy-Syntax (Kurzform)
Ticketthema abrufen String mysubject = ticket.getSubject() def mysubject = ticket.subject
Bearbeiter des Tickets abrufen Engineer myeng = ticket.getEngineer() def myeng = ticket.engineer
Hauptkontakt des Tickets abrufen Unit mymaincontact = ticket.getMainContact() def mymaincontact = ticket.mainContact
Wert eines bestimmten Benutzerdefinierten Feldes aus dem Ticket abrufen String myprio = ticket.get("helpdesk_fields", "prio") def myprio = ticket.get("helpdesk_fields.prio")
Unit-Typ des Hauptkontakts abrufen

Unit mycustomer = workflowApi.getPrimaryContact()

UnitDefinition myunitdef = mycustomer.getDefinition()

UnitDefinitionType mydeftype = myunitdef.getType()

def mycustomer = workflowApi.primaryContact

def myunitdef = mycustomer.definition

def mydeftype = mycustomer.definition.type

Der Zugriff auf Benutzerdefinierte Felder kann nicht abgekürzt werden, da es für diese Felder keine getter-Methoden gibt. Details über die Arbeit mit Daten aus Benutzerdefinierten Feldern finden Sie im Abschnitt Arbeiten mit Datenfeldern.

Setter-Methoden können häufig ausgelassen werden

Die meisten Groovy-Objekte haben mehrere Setter-Methoden, mit denen Werte für Objektattribute gesetzt werden. Sie können entweder die vollständigen Setter-Methoden oder die Kurzform verwenden. Siehe auch folgendes Beispiel für Workflow-Skripte.

Anwendungsfall Java-gemäße Syntax (Langform) Groovy-Syntax (Kurzform)
Ticketthema setzen ticket.setSubject("asd") ticket.subject = "asd"

CM API-Dokumentation

Für die ConSol CM-API steht eine Groovy API Doc zur Verfügung. Fragen Sie Ihren ConSol CM-Consultant oder -Vertriebsmitarbeiter nach der entsprechenden .jar-Datei.

Abbildung 113: ConSol CM Groovy API Doc

CM-Skripttypen in Workflows

In ConSol CM-Workflows werden Skripte in folgenden Kontexten verwendet:

Eine Erklärung über das Einfügen dieser Skripte finden Sie in den entsprechenden Abschnitten dieses Handbuchs.

Zusammenspiel von Skripten

Für jedes Workflow-Skript können Sie auswählen, ob der Code direkt im Workflow ausgeführt werden soll, oder ob das Skript im Admin Tool im Abschnitt Skripte gespeichert werden soll und aus dem Workflow-Skript aufgerufen werden soll. Siehe Abschnitt Speichern einiger Workflow-Skripte im Admin Tool.

Skripte in ConSol CM im Allgemeinen

Denken Sie daran, dass die Konfiguration und Programmierung mit dem Process Designer nur die "Hälfte der Intelligenz" Ihres ConSol CM-Systems darstellt. Viele Konfigurationen und Skripte werden im Admin Tool verwaltet. Informationen zu den Skripten finden Sie im Abschnitt über die Admin-Tool-Skripte des ConSol CM Administratorhandbuchs.