Ereignis erstellen
Wenn Sie kein geeignetes vorhandenes Ereignis finden, können Sie ein eigenes erstellen.
Vorbereitungen
Warum und wann dieser Vorgang ausgeführt wird
Prozedur
- Navigieren zu Alle > Systemrichtlinie > Events > Registry, Und wählen Sie dann aus Neu .
-
Füllen Sie die Felder des Formulars aus.
Tabelle : 1. Abschluss Des Ereignisregistrierungsformulars Feld Beschreibung Ereignisname Name Ihres neuen Ereignisses. Tabelle Datenbanktabelle für dieses Ereignis. Hinweis:In der Liste werden nur Tabellen und Datenbankansichten angezeigt, die sich im selben Umfang wie das Ereignis befinden.Warteschlange Name der Warteschlange, in die das Ereignis platziert wird, wenn es ausgelöst wird. Verwenden Sie nur Kleinbuchstaben, keine Leerzeichen und keine Sonderzeichen außer Unterstrich (_). Beispiel: My_Queue . Weitere Informationen finden Sie unter .
Priorität Reihenfolge, in der Nachrichten verarbeitet werden. Niedrigere Werte haben eine höhere Priorität. Hinweis:Die Systemeigenschaft com.Glide.sysevent.Priority.enabled ist standardmäßig aktiviert. Wenn Sie sie deaktivieren, erfolgt die Ereignisverarbeitung nicht nach Priorität.Zugriff für Anrufer Einstellungen für eingeschränkten Anruferzugriff. - Anruferbeschränkung: Anrufe an die Ressource müssen manuell genehmigt werden.
- Anrufernachverfolgung: Anrufe an die Ressource werden automatisch genehmigt.
Ausgelöst von Name der Business-Regel, die das Ereignis ausführt. Dieses Feld dient nur als Referenz und wird von keinem Prozess verwendet. Stellen Sie sicher, dass genügend Informationen vorhanden sind, um Ihr Ereignis erneut zu finden. Beschreibung Kurze Beschreibung des Zwecks des Ereignisses. - Klicken Sie auf Business-Regeln Zugehöriger Link.
-
Wenn Sie ein Ereignis für eine Basissystemtabelle erstellen, wählen Sie die vorhandene Ereignis-Business-Regel für die Tabelle aus.
Wählen Sie beispielsweise aus sc request eventsBusiness-Regel zum Erstellen eines anwenderdefinierten Anforderungsereignisses.
-
Wenn Sie eine vorhandene Ereignis-Business-Regel aktualisieren, fügen Sie der eine neue Bedingung hinzu Skript .
Das folgende Beispielskript fügt ein hinzu request.commentedEreignis mit der SYS-ID des Anwenders als parm1 und dem Anwendernamen des Anwenders für parm2.
if (current.operation() != 'insert' && current.comments.changes()) { gs.eventQueue('request.commented', current, gs.getUserID(), gs.getUserName()); } -
Wenn Sie ein Ereignis für eine anwenderdefinierte Tabelle erstellen, erstellen Sie eine neue Business-Regel, die nach Datenbankvorgängen ausgeführt wird.
Diese Business-Regel definiert beispielsweise mehrere Ereignisse für eine anwenderdefinierte Anwendung namens Marketingereignisse.
Tabelle : 2. Beispiel für eine Business-Regel für ein Ereignis Feld Wert Name Teilnehmerereignisse Tabelle Teilnehmer [x_snc_Marketing_ev_attendee] Anwendung Marketingereignisse Erweitert Ausgewählt Wann nach Einfügen Ausgewählt Aktualisieren Ausgewählt Löschen Ausgewählt Skript Anwenderdefiniertes Skript hinzufügen, das:- Überprüft auf eine oder mehrere Bedingungen im aktuellen Datensatz.
- Ruft die Methode gs.eventQueue() auf und gibt einen Ereignisnamen an.
Siehe Codebeispiel.
Hinweis:Wenn Sie hinzufügen Filterbedingungen , Rollenbedingungen , Oder a Bedingung Wert, verifiziert, ob die Business-Regel erwartungsgemäß ausgeführt wird.(function executeRule(current, previous /*null when async*/) { //This function will be automatically called when this rule is processed. //Add event when attendee inserted if(current.operation() == 'insert' && current.marketing_event.changes()) { gs.eventQueue('x_snc_marketing_ev.attendee.added', current, current.marketing_event, current.email); } //Add event when marketing event changes if(current.operation() == 'update' && current.marketing_event.changes()) { gs.eventQueue('x_snc_marketing_ev.attendee.deleted', previous, previous.marketing_event, previous.email); gs.eventQueue('x_snc_marketing_ev.attendee.added', current, current.marketing_event, current.email); } //Add event when attendee deleted if(current.operation() == 'delete') { gs.eventQueue('x_snc_marketing_ev.attendee.deleted', current, current.marketing_event, current.email); } })(current, previous); - Registrieren Sie das Ereignis.