Aktionen eFormulare
Welche Bedingungen müssen erfüllt sein, damit beim Abschluss eines eFormulars eine Aktion ausgelöst wird?
Vorwort
Ein eFormular kann nicht nur als Protokoll in den entsprechenden Vorlagen abgelegt werden, es ist auch möglich, weiterführende Aktionen damit auszulösen
So wird zum Beispiel in einem Prüfprotokoll vom Techniker festgelegt, dass weitere Aktionen notwendig sind.
Es sind auch mehrere Aktionen pro eFormular möglich, siehe auch Mehrere Aktionen ausführen
Wie geht es jetzt weiter?
Nachfolgend wird Schritt für Schritt erklärt, wie durch Aktivieren einer Option durch einen Techniker, automatisch ein Servicecall angelegt und an ein bestimmtes Team weitergeleitet wird.
Für die Einrichtung sind Kenntnisse zum eFormular Builder, sowie Berechtigungen für den Direktzugriff auf die esoffice Datenbank (esdbm) erforderlich.
Eine Aktion definieren
Nachfolgend wird dieses Beispiel verwendet:
Für ein Prüfprotokoll soll automatisch ein Servicecall angelegt werden, wenn der Techniker die Option Anlage nicht funktionsfähig! aktiviert (-> ).
Dieser Servicecall soll an das Team 1 (Serviceteam) weitergeleitet werden.
Es ist erforderlich die Aktionen auf Datenbankebene direkt in den Tabellen EFORMAKTION und EFORMAKTIONWERTE einzurichten.
Für das Beispiel reicht es, einen Hauptdatensatz in der Tabelle EFORMAKTION wie folgt anzulegen (Zum Anlegen der Daten per SQL-Skript im esdbm siehe auch SQL-Skript (Eine Aktion)):
In der Tabelle EFORMAKTIONWERTE legen Sie folgende Datensätze an:
Die Bedeutung der Werte ist folgende:
-
Wird RoutineNr 1 vom eFormular angesteuert, löse Aktion 1 aus.
-
Aktion 1 erstellt einen Servicecall mit dem Matchcode Mängel laut Protokoll und der Meldung Es wurden Mängel festgestellt. Bitte eFormular prüfen!.
-
Dieser Servicecall wird an das Team mit der Nummer 1 weitergeleitet.
Verbindung zwischen eFormular und Aktion herstellen
Zunächst wird im eFormular Builder selbst die interne ID des Feldes ermittelt, welches nachher die Aktion triggern soll. Öffnen Sie dazu den eFormular Builder die Eigenschaften der entsprechenden Option und kopieren die ID.
Öffnen Sie jetzt wieder auf Datenbankebene die Tabelle EFORMVORLAGE und wählen die Spalte Layout für das betreffende eFormular.
Zwischen die Zeilen </Page> und </PageList> fügen Sie folgende neue Zeile ein:
<Action xsi:type="CreateSvcCallAction" ElementId="3263d766-f19a-499b-8c6c-55c39879e631" RoutineNr="1" />
Diese beinhaltet die bereits in der Aktionstabelle definierte RoutinenNr 1 sowie die ElementId 3263d766-f19a-499b-8c6c-55c39879e631, die Sie zuvor im eFormular Builder ermittelt haben.
Anschließend schließen Sie den Memo Dialog mit einem Klick auf die Schaltfläche OK. Speichern Sie die Änderungen an dem Datensatz über das Diskettensymbol.
Die nachfolgenden SQL-Skripte werden benötigt, um die Tabellen EFORMAKTION und EFORMAKTIONWERTE passend zum Beispiel zu füllen.
SQL-Skript (Eine Aktion)
INSERT INTO EFormAktion (AKTIONIDNR, ROUTINENR, GSNR, AKTIONNR) VALUES ('1', '1', '1', '1');
INSERT INTO EFormAktionWerte (AKTIONWERTIDNR, AKTIONIDNR, TABELLE, FELDNAME, FELDWERT) VALUES ('2', '1', 'SERVCALL', 'MATCHCODE', 'Mängel laut Protokoll');
INSERT INTO EFormAktionWerte (AKTIONWERTIDNR, AKTIONIDNR, TABELLE, FELDNAME, FELDWERT) VALUES ('1', '1', 'SERVCALL', 'KDMELDUNG', 'Es wurden Mängel festgestellt. Bitte eformular prüfen!');
INSERT INTO EFormAktionWerte (AKTIONWERTIDNR, AKTIONIDNR, TABELLE, FELDNAME, FELDWERT) VALUES ('3', '1', 'SECAWRLG', 'TEAMNR', '1');
Sind alle Arbeiten abgeschlossen, wird in Zukunft bei dem veröffentlichten eFormular durch Aktivieren der Option Anlage nicht funktionsfähig, automatisch ein Servicecall mit den definierten Parametern angelegt und weitergeleitet.
Mehrere Aktionen ausführen
Es ist auch möglich mehrere Aktionen auszuführen.
Mehrere Aktionen definieren
Nachfolgend wird dieses Beispiel verwendet:
Aktion 1
Für ein Prüfprotokoll soll automatisch ein Servicecall angelegt werden, wenn der Techniker die Option Mängel laut Protkoll aktiviert (-> ). Dieser Servicecall soll an das Team 1 (Serviceteam) weitergeleitet werden.
Aktion 2
Für ein Prüfprotokoll soll automatisch ein Servicecall angelegt werden, wenn der Techniker die Option Änderung Ansprechpartner aktiviert (-> ). Dieser Servicecall soll an das Team 1 (Serviceteam) weitergeleitet werden.
Es ist erforderlich die Aktionen auf Datenbankebene direkt in den Tabellen EFORMAKTION und EFORMAKTIONWERTE einzurichten.
Für das Beispiel reicht es, einen Hauptdatensatz in der Tabelle EFORMAKTION wie folgt anzulegen (Zum Anlegen der Daten per SQL-Skript im esdbm siehe auch SQL-Skript (Mehrere Aktionen)):
In der Tabelle EFORMAKTIONWERTE legen Sie folgende Datensätze an:
Die Bedeutung der Werte ist folgende:
-
Wird RoutineNr 1 vom eFormular angesteuert, löse Aktion 1 aus.
-
Aktion 1 erstellt einen Servicecall mit dem Matchcode Mängel laut Protokoll und der Meldung Es wurden Mängel festgestellt. Bitte eFormular prüfen!.
-
Dieser Servicecall wird an das Team mit der Nummer 1 weitergeleitet.
-
Wird RoutineNr 2 vom eFormular angesteuert, löse Aktion 2 aus.
-
Aktion 2 erstellt einen Servicecall mit dem Matchcode Änderung Ansprechpartner und der Meldung Ansprechpartner haben sich geändert. Bitte eformular prüfen!.
-
Dieser Servicecall wird an das Team mit der Nummer 1 weitergeleitet.
Verbindung zwischen eFormular und Aktion herstellen
Zunächst wird im eFormular Builder selbst die interne ID des Feldes ermittelt, welches nachher die Aktion triggern soll. Öffnen Sie dazu den eFormular Builder die Eigenschaften der entsprechenden Option und kopieren die ID.
Öffnen Sie jetzt wieder auf Datenbankebene die Tabelle EFORMVORLAGE und wählen die Spalte Layout für das betreffende eFormular.
Zwischen die Zeilen </Page> und </PageList> fügen Sie folgende neuen Zeilen ein:
<Action xsi:type="CreateSvcCallAction" ElementId="2e21df2f-76d5-4328-8273-2dc00e6898df" RoutineNr="1" />
<Action xsi:type="CreateSvcCallAction" ElementId="77c8b574-b05a-4a41-a1f9-8028f87e61ff" RoutineNr="2" />
Diese beinhaltet die bereits in der Aktionstabelle definierte RoutineNr 1 sowie die ElementId 2e21df2f-76d5-4328-8273-2dc00e6898df, die Sie zuvor im eFormular Builder ermittelt haben. Für RoutineNr 2 wird die ElementId 77c8b574-b05a-4a41-a1f9-8028f87e61ff verwendet.
Anschließend schließen Sie den Memo Dialog mit einem Klick auf die Schaltfläche OK. Speichern Sie die Änderungen an dem Datensatz über das Diskettensymbol.
Die nachfolgenden SQL-Skripte werden benötigt, um die Tabellen EFORMAKTION und EFORMAKTIONWERTE passend zum Beispiel zu füllen.
SQL-Skript (Mehrere Aktionen)
INSERT INTO EFormAktion (AKTIONIDNR, ROUTINENR, GSNR, AKTIONNR) VALUES ('1', '1', '1', '1');
INSERT INTO EFormAktionWerte (AKTIONWERTIDNR, AKTIONIDNR, TABELLE, FELDNAME, FELDWERT) VALUES ('2', '2', 'SERVCALL', 'MATCHCODE', 'Mängel laut Protokoll');
INSERT INTO EFormAktionWerte (AKTIONWERTIDNR, AKTIONIDNR, TABELLE, FELDNAME, FELDWERT) VALUES ('1', '2', 'SERVCALL', 'KDMELDUNG', 'Es wurden Mängel festgestellt. Bitte eformular prüfen!');
INSERT INTO EFormAktionWerte (AKTIONWERTIDNR, AKTIONIDNR, TABELLE, FELDNAME, FELDWERT) VALUES ('3', '2', 'SECAWRLG', 'TEAMNR', '1');
INSERT INTO EFormAktionWerte (AKTIONWERTIDNR, AKTIONIDNR, TABELLE, FELDNAME, FELDWERT) VALUES ('4', '1', 'SECAWRLG', 'SERICELEVELNR', '1');
INSERT INTO EFormAktion (AKTIONIDNR, ROUTINENR, GSNR, AKTIONNR) VALUES ('2', '2', '1', '1');
INSERT INTO EFormAktionWerte (AKTIONWERTIDNR, AKTIONIDNR, TABELLE, FELDNAME, FELDWERT) VALUES ('6', '2', 'SERVCALL', 'MATCHCODE', 'Änderung Ansprechpartner');
INSERT INTO EFormAktionWerte (AKTIONWERTIDNR, AKTIONIDNR, TABELLE, FELDNAME, FELDWERT) VALUES ('5', '2', 'SERVCALL', 'KDMELDUNG', 'Ansprechpartner haben sich geändert. Bitte eformular prüfen!');
INSERT INTO EFormAktionWerte (AKTIONWERTIDNR, AKTIONIDNR, TABELLE, FELDNAME, FELDWERT) VALUES ('7', '2', 'SECAWRLG', 'TEAMNR', '1');
INSERT INTO EFormAktionWerte (AKTIONWERTIDNR, AKTIONIDNR, TABELLE, FELDNAME, FELDWERT) VALUES ('8', '2', 'SECAWRLG', 'SERICELEVELNR', '1');
Sind alle Arbeiten abgeschlossen, wird in Zukunft bei dem veröffentlichten eFormular durch Aktivieren der Option Mängel laut Protokoll und / oder Änderung Ansprechpartner, automatisch ein Servicecall mit den definierten Parametern angelegt und weitergeleitet.