Business Rules und Skripteinbindungen

  • Freigeben Version: Washingtondc
  • Aktualisiert 1. Februar 2024
  • 2 Minuten Lesedauer
  • Business Rules sind serverseitige Aktionen, die während CRUD-Vorgängen (Erstellen, Lesen, Aktualisieren, Löschen) für Instanzdatensätze ausgeführt werden können.

    Einige bewährte Vorgehensweisen bei der Verwendung von Geschäftsregeln sind:

    • Halten Sie die Geschäftsregeln klein und spezifisch.
    • Vermeiden Sie es, die Business Rules des Basissystems zu ändern.
    • Verwenden Sie Skripteinbindungen anstelle von globalen Business Rules.
    • Verwenden Sie Skripts nur bei Bedarf.
    • Speichern Sie wiederverwendbare Skriptlogik in einer Skripteinbindung.
    • Verwenden Sie Abfragen, um die innerhalb einer Business Rule verarbeiteten Datensätze zu beschränken.
    • Vermeiden Sie vom Client aufrufbare Business Rules, um die Effizienz beim Ausführen von Client- Skriptszu verbessern.
    • Verwenden Sie immer eine Bedingung mit Geschäftsregeln, um zu steuern, wann die Geschäftsregel ausgeführt wird. Das Ausführen von Business Rules mit Bedingungen kann auch beim Debuggen helfen. Business Rules werden selten ohne Bedingungen ausgeführt.

    Business Rules können so konfiguriert werden, dass sie vor oder nach einem Datenbankvorgang ausgeführt werden. Sie können auch so konfiguriert werden, dass sie asynchron und vor dem Anzeigen eines Formulars oder dem Ausführen einer Abfrage ausgeführt werden.

    Wert Wird ausgeführt Wann zu verwenden Beispiel
    Vor Synchron vor dem Datenbankvorgang Legen Sie im Rahmen des Speichervorgangs Werte für das aktuelle Objekt fest oder aktualisieren Sie sie. Validieren und brechen Sie die Ausführung bei Bedarf ab. Ein Entwickler möchte den Status des aktuellen Datensatzes basierend auf einer anderen Eingabe in diesem Datensatz festlegen.
    Nach Synchron nach dem Datenbankvorgang Lösen Sie Events und Benachrichtigungen nach der Datenbankaktualisierung aus, um auf das vorherige Objekt zuzugreifen oder etwas in der richtigen Reihenfolge auszuführen. Aktualisieren Sie andere zugehörige Datensätze als die Basistabelle, die aktualisiert wird, um auf das vorherige Objekt zuzugreifen oder etwas in der richtigen Reihenfolge auszuführen. Ein Entwickler möchte Werte aus dem aktuellen Datensatz in untergeordnete Datensätze kaskadieren.
    Async Wird nach Abschluss des Datenbankvorgangs als separater Prozess asynchron ausgeführt Die Ausführung des durch die Regel ausgelösten Prozesses kann eine Weile dauern. Wenn der Benutzer, der den Vorgang ausgelöst hat, die Ausgabe nicht sofort benötigt. Lösen Sie Events, Benachrichtigungen oder zugehörige Datensatzaktualisierungen aus, wenn kein Zugriff auf die vorherigen Werte des Datensatzes oder eine bestimmte Reihenfolge von Aktionen erforderlich ist. Ein Entwickler muss einen externen Prozess auslösen, der eine Weile dauern oder eine große Anzahl von Datensätzen aktualisieren kann.
    Bildschirm Wird jedes Mal ausgeführt, wenn das entsprechende Formular angezeigt wird Wird verwendet, um serverseitige Objekte für clientseitige Skripts verfügbar zu machen. Ein Entwickler möchte Informationen über einen Benutzer, der dem aktuellen Datensatz zugeordnet ist, in das g_scratchpad-Objekt schreiben, um es in einem clientseitigen Skript zu verwenden.
    Hinweis:
    current.update()sollte nicht in Business Rules verwendet werden. Die Verwendung von current.update()löst einen zusätzlichen Datenbankvorgang aus, der doppelte Benachrichtigungen, rekursive Schleifen usw. verursachen kann.

    Verwenden Sie Skripteinbindungen, um JavaScript-Funktionen und -Klassen zur Verwendung durch Serverskripts zu speichern. Jede Skripteinbindung definiert entweder eine Objektklasse oder eine Funktion, die in allen serverseitigen Skripts wiederverwendet werden kann.

    Speichern Sie Code, der möglicherweise an anderer Stelle verwendet werden muss, in einer Skripteinbindung. Rufen Sie die Skripteinbindung aus einer Business Rule, einer UI-Aktion, einem Workflow-Skript, einer Scripted REST API usw. auf. Anstatt eine Business Rule aus einer UI-Aktion oder eine UI-Aktion aus einer Scripted REST API aufzurufen, fügen Sie den Code in eine Skripteinbindung ein und rufen die Skripteinbindung von beiden Stellen auf.

    Das Beibehalten von Funktionen in einer Skripteinbindung ermöglicht das Testen der Funktion, bevor die Funktion in anderen Skriptbereichen bereitgestellt wird, wodurch die Gesamtentwicklungs- und Testzeit reduziert wird.

    Weitere Informationen finden Sie unter Geschäftsregeln.