Die Logik eines Business Objekts wird über Skriptfunktionen implementiert. Jedes Business Objekt kann beliebig viele Funktionen enthalten. Klicken Sie auf das Symbol ‘Funktionen bearbeiten’.
Sie werden zur Übersicht der Funktionen des Business Objekts weitergeleitet. Dort können Sie auf die Funktionsdetails zugreifen, eine Funktion bearbeiten, testen, kopieren oder löschen.
Um eine neue Funktion hinzuzufügen, klicken Sie auf das ‘+’.
Das Erstellen einer Funktion umfasst das Schreiben einer Methode über JavaScript und das Bearbeiten von Parametern. Im Skripteditor können Sie Logik programmieren, die im Process Designer aufgerufen werden kann.
Der Inhalt entspricht dem inneren Teil einer JavaScript-Funktion. Mit anderen Worten: Ihr Hauptcodeblock darf nicht in eine separate Funktionsdefinition eingeschlossen sein, sondern befindet sich im Top-Level-Kontext. Es ist dennoch möglich, Sub-Funktionen über Ihrem Hauptcodeblock zu definieren.
Es hat sich bewährt, Ihren Hauptcodeblock in einen Try-Catch-Block einzuschließen, um mögliche Fehler zu behandeln.
Betrachten wir ein typisches Hello-World-Beispiel:
Legen Sie den Funktionsnamen oben im Editor fest.
In der Symbolleiste oben haben Sie verschiedene Möglichkeiten:
- Rückgängig (Strg+Z)
- Wiederherstellen (Strg+Y)
- Suchen (Strg+F)
- Suchen und Ersetzen
- Code formatieren
- Code validieren
- Einstellungen (Strg+,)
- Vollbild
Dieses Beispiel liest einen Namen, der dem Business Objekt als Eingabeparameter übergeben wird, verkettet ihn zu einer Begrüßungsnachricht und schreibt das Ergebnis in die Ausgabe.
Werfen Sie einen Blick auf den Try-Catch-Block, der den Hauptcodeabschnitt umgibt:
Wenn kein Fehler auftritt, wird der obere Teil des Codes innerhalb des „Try“-Abschnitts ausgeführt und gibt die Begrüßungsnachricht und output.success = true zurück. Die Funktion springt jedoch in den „Catch“-Abschnitt, wenn ein Fehler auftritt. In diesem Fall wird output.success = false gesetzt und die Fehlermeldung dem Parameter output.error zugewiesen.
Um die Skriptfunktion korrekt zu verwenden, müssen Sie dieselben Eingabe- und Ausgabeparameter hinzufügen, die Sie in der Payload verwendet haben. Diese Parameter werden in den Mapping-Dialogen im Process Designer angezeigt. Bitte beachten Sie die entsprechende Behandlung von Ein- und Ausgabe über die (JSON-)Objekte „Input“ und „Output”. Beide können beliebige Attribute tragen.
In diesem Beispiel trägt das Objekt “Input” das Attribut:
- input.name, um den eingefügten Namen zu lesen.
Das Objekt “Output” trägt die Attribute:
- output.message, um eine Begrüßungsnachricht zu senden.
- output.success (true/false), um anzugeben, ob die Skriptvorlage erfolgreich ausgeführt wurde.
- output.error, um die Ursache eines Fehlers im Fehlerfall zu enthalten.
Sie können die Parameteransicht maximieren, indem Sie auf die linke Pfeiltaste klicken.
Validieren
Sie können die Eingabe- und Ausgabeparameter im Backend validieren. Es validiert:
- Basistyp gegen Typsicherheit
- Domänentyp gegen Sicherheit und Einschränkungen
- Strukturen gegen Typsicherheit und zugrunde liegende Eigenschaftstypen
- Sammlungen gegen Typsicherheit und die zugrunde liegenden Typen/Eigenschaftskategorien
Wenn die Validierung nicht erfolgreich ist, wird der Client über alle fehlgeschlagenen Validierungen benachrichtigt, und sie wird gleichzeitig in das Business Objekt-Protokoll oder Systemprotokoll geschrieben.
Für jedes neue Business Objekt ist dieses Flag standardmäßig gesetzt.
Speichern und Testen
Beide Aktionen ‘Speichern’ (Strg + S) und ‘Speichern & Testen’ speichern Ihre Funktion und erstellen eine Version, wenn der Code geändert wurde.
‘Speichern & Testen’ ist nur für Server-Side Business Objekte verfügbar und öffnet direkt die Testansicht der Funktion Ihres Business Objekts.















