Schnelleinstieg

enaio® 10.10 »

Ein Event wird von enaio® client oder enaio® server als Folge einer Benutzer-Aktion, einer Anwendungs-Situation oder einer Jobausführung gestartet und führt ein Skript aus.

Um Events nutzen zu können, müssen Lizenzen vorhanden sein sowie die nötigen Systemrollen vergeben werden.

Zu unterscheiden ist zwischen Client- und Server-Events:

Mit Hilfe von Events können Sie zum Beispiel beim Speichern einer Indexdatenmaske gezielt einige Felder, die der Benutzer leer gelassen hat, ergänzen lassen: Falls der Bearbeiter seinen Namen nicht in das Feld 'Bearbeiter' eingetragen hat, kann dies vor dem Speichern der Indexdatenmaske per Event automatisch geschehen. Hierfür können Sie das Event BeforeValidate nutzen.

Um ein derartiges Client-Event zu erstellen, öffnen Sie im Bereich 'Objektsuche' das Kontextmenü des Objekts und wählen den Eintrag Event hinzufügen:

Im Dialog Event hinzufügen wählen Sie nun den Eintrag BeforeValidate aus und bestätigen mit OK:

Daraufhin wird enaio® editor-for-events geöffnet. In diesem Editor geben Sie den VBScript-Code ein, der durch das Event BeforeValidate ausgeführt werden soll.

Im Editor geben Sie Folgendes ein:

if ActivePage.ASFields.Item("Bearbeiter").Value = "" then
    ActivePage.ASFields.Item("Bearbeiter").Value = GetEnvironment(3)
end if
ResultCode = 1
WriteToFile()

Um abzufragen, ob der Benutzer im Feld 'Bearbeiter' der Indexdatenmaske einen Eintrag gemacht hat oder nicht (Zeile 1), greift man auf den Wert des Felds über das Objekt ActivePage zu. Dieses Objekt ist ein Verweis auf das aktive Datenblatt der Indexdatenmaske.

Um auf ein konkretes Feld der Indexdatenmaske (hier das Feld 'Bearbeiter') zuzugreifen, kann man die Methode Item der Kollektion ASFields, die alle Felder der Maske beinhaltet, aufrufen. Um ein bestimmtes Feld der Indexdatenmaske anzusprechen, übergibt man dessen Bezeichnung als Parameter. Die Bezeichnungen der Felder einer Indexdatenmaske können in enaio® editor für alle Objekte eingesehen werden.

Falls kein Bearbeiter eingetragen wurde, wird der Benutzername des angemeldeten Benutzers ermittelt und in das Feld 'Bearbeiter' geschrieben (Zeile 2).

Das Ändern von Werten geschieht in der Übergabedatei. Damit die Änderungen aus der Übergabedatei vor dem Weiterführen der Aktion zurückgeschrieben und somit berücksichtigt werden, muss der Rückgabewert '1' geschrieben werden (Zeile 5).

Speichern Sie das Skript durch Klick auf Speichern.

Beim nächsten Aufruf der Indexdatenmaske greift das Skript bereits und fügt den Namen des Bearbeiters in das Feld ein, falls dieses Feld beim Speichern noch leer sein sollte.

Wenn Sie über Skripte auf Dialogelemente Bezug nehmen, die Sonderzeichen enthalten, können Fehler auftreten. Verwenden Sie in diesem Fall die internen Namen für Bezüge auf Dialogelemente.