Auslöser bedingt ausführen

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 2 Minuten Lesedauer
  • MetricBase Löst die Ausführung basierend auf einer einzelnen Metrik aus. Bedingungsskripts stellen zusätzliche Anforderungen fest, die bestimmen, ob ein Auslöser einen Flow auslöst.

    Vorbereitungen

    Erforderliche Rolle: Administrator

    Warum und wann dieser Vorgang ausgeführt wird

    Bedingungsskripts werden ausgeführt, wenn die Bedingungen für einen Auslöser erfüllt sind, bevor der Auslöser jedoch ausführt Workflow-StudioFlow. Auf diese Weise können Bedingungsskripts verhindern, dass Auslöser Flows ausführen, auch wenn Auslöserbedingungen erfüllt sind. Beispielsweise schwanken Daten häufig im Laufe der Zeit. Kleine Fluktuationen können unerwünschte, doppelte auslösende Ereignisse verursachen. Ein Bedingungsskript kann diese fehlerhafte Duplizierung verhindern.

    Bedingungsskripts werden manchmal auch als Moderatorskripts bezeichnet.

    Bedingungsskripts geben immer zurück Wahr (Auslöser) oder Falsch (Nicht auslösen). Informationen zum Schreiben dieser Skripts finden Sie unter Skripting in ServiceNow Grundlagenan. Informationen zum Experimentieren mit Skripts finden Sie unter Machen Sie sich mit vertraut MetricBase APIsan.

    Prozedur

    1. Navigieren zu Alle > MetricBase > MetricBase-Auslöser > Auslösebedingungsskriptan.
    2. Wählen Sie Neu.
    3. Füllen Sie die Felder im Formular aus.
      Feld Beschreibung
      Name Name für das Bedingungsskript.
      Anwendung Umfang des Bedingungsskripts. Der Wert, Global , Bedeutet, dass die Aktion für alle Anwendungen gilt.
      Beschreibung Erklärung der Funktion des Bedingungsskripts. Wann wird „wahr“ oder „falsch“ zurückgegeben?
      Skript Feld zum Eingeben des JavaScript. Lassen Sie es zurückgeben Wahr Zum Ausführen eines Flows.
    4. Schreiben Sie das Bedingungsskript.

      Denken Sie beim Schreiben eines Skripts an die bedingten Anweisungen (für welche Fälle es ausgeführt werden soll und für welche Fälle es nicht sollte). Wenn alle auswerten Wahr , Das Skript gibt zurück Wahr Und der Flow wird ausgeführt, andernfalls nicht. Das folgende Beispielskript löst einen Flow aus, wenn eine Drohne auf niedriger Höhe (definiert durch Ebene 1) zu schnell reist. Das Beispiel zeigt einen typischen Ansatz zum Schreiben eines Bedingungsskripts.

      1. Ruft die Auslöserdefinition ab, die als Filterfunktionsparameter übergeben wird.
      2. Datensatz abrufen ( Aktuell ), die das auslösende Ereignis verursacht, übergeben als Filterfunktionsparameter.
      3. Ruft die Zeit aus dem Datensatz ab, zu der die Auslöserbedingungen erfüllt waren, und wird als Filterfunktionsparameter übergeben.
      4. Ruft die Auslöserebene ab, die als Filterfunktionsparameter übergeben wird.
      5. Verwenden Sie diese Parameter, um zurückzugeben Wahr Wenn die Auslöserbedingungen der Ebene 1 erfüllt sind und Travel_State Entspricht Reisen oder Geschwindigkeit.
        function filter(/*GlideRecord*/ triggerDefinition, /*GlideRecord*/ current, /*GlideDateTime*/ start, /*int*/ level) {
        	// retrieve current travel state of drone
        	var travel_state = String(current.travel_state);
        	
        	// the drone is traveling at a significant speed, and the altitude just went below the threshold 
        	if (((travel_state === 'traveling') || (travel_state === 'speeding')) && (level === 1)){
        		return true; //process this trigger
        	}
        	
        	return false; // don't process this trigger
        }
        
      Hinweis:
      Bedingungsskripts müssen schnell ausgeführt werden.
    5. Wählen Sie Absenden.

    Nächste Maßnahme

    Verwenden Workflow-StudioBis Ordnen Sie einem Auslöser einen Flow zu . Beim Konfigurieren eines Flows können Sie ein von Ihnen erstelltes Bedingungsskript auswählen.
    Abbildung : 1. Fügen Sie einer Auslöserdefinition in ein Bedingungsskript hinzu Workflow-Studio
    Fügen Sie einer Auslöserdefinition ein Bedingungsskript hinzu.

    Sie können auch ein Bedingungsskript einem Auslöser-Flow in zuordnen MetricBaseTabelle für Auslöser-Flows [sys_flow_metric_trigger]. Wenn Sie hier einem Auslöser-Flow ein Bedingungsskript zuordnen, wird es in nicht angezeigt Workflow-Studio, Wird jedoch weiterhin mit dem Auslöser ausgeführt.

    Abbildung : 2. Ordnen Sie ein Bedingungsskript in zu MetricBaseFlows Auslösen
    Ordnen Sie ein Bedingungsskript in der MetricBase-Auslöser-Flows-Tabelle zu