OnCallEscalationTemplateSNC – Global

  • Freigeben Version: Zurich
  • Aktualisiert 31. Juli 2025
  • 2 Minuten Lesedauer
  • Die OnCallEscalationTemplateSNC Die Skripteinbindung bietet Methoden zum Anwenden von Eskalationsrichtlinienvorlagen auf Eskalationssätze.

    Weitere Informationen zum Eskalationsprozess finden Sie unter Defining On-Call Scheduling escalation process.

    Diese Skripteinbindung erfordert das Plugin „Bereitschaftsplanung“ (com.snc.on_call_Rotation).

    OnCallEscalationTemplateSNC: OnCallEscalationTemplateSNC()

    Instanziiert einen OnCallEscalationTemplateSNC Objekt.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    Keine

    In diesem Beispiel wird ein instanziiert OnCallEscalationTemplateSNC Objekt.

    var escTemp = new global.OnCallEscalationTemplateSNC();

    OnCallEscalationTemplateSNC – copyEscalationTemplatetoEscalationSet(Zeichenfolge templateSysId, Zeichenfolge eskalationSetSysId)

    Wendet eine Eskalationsrichtlinienvorlage auf einen Eskalationssatz an.

    Wenn die Vorlage auf den Eskalationssatz angewendet wird, werden Datensätze zur Eskalationsschritt-Definition in der Tabelle „Schichteskalationsschritt-Definition“ [cmn_Rota_esc_STEP_def] erstellt.

    Rufen Sie vor dem Aufrufen dieser Methode auf DeleteEscalationSetSteps() Methode zum Löschen vorhandener Eskalationsschrittdefinitionen. Wenn vorhandene Datensätze nicht zuerst gelöscht werden, gibt diese Methode einen Fehler zurück.

    Tabelle : 2. Parameter
    Name Typ Beschreibung
    templateSysId Zeichenfolge SYS_ID der Eskalationsrichtlinienvorlage in der Tabelle „Richtlinienvorlage für Rufbereitschaftseskalation“ [on_call_template_Eskalation_Policy].
    EskalationSetSysId Zeichenfolge SYS_ID des Eskalationssatzes in der Tabelle „Schichteskalationssatz“ [cmn_Rota_Eskalation_Set].
    Tabelle : 3. Rückgaben
    Typ Beschreibung
    Objekt
    Objekt mit Fehler- und Warnmeldungen. Wenn der Vorgang erfolgreich war, ist dieses Objekt leer.
    Hinweis:
    Wenn ein Fehler auftritt, wird der Vorgang beendet, und die Vorlage wird nicht angewendet. Wenn eine Warnung auftritt, wird der Vorgang fortgesetzt, und einige Datensätze werden noch erstellt.
    {
      "error": "String", 
      "warning": {Object} 
    }
    <Object>.Fehler Fehlermeldung.
    Mögliche Fehler:
    • Die sys_ID der Eskalationsrichtlinienvorlage ist nicht korrekt.
    • Sys_ID des Eskalationssatzes ist nicht korrekt.
    • Eskalationsschrittdefinitionen sind bereits im Eskalationssatz vorhanden.

    Datentyp: Zeichenfolge

    <Object>.Warnung Informationen zu Warnungen.

    Datentyp: Objekt

    {
      "message": "String", 
      "skipped_steps": [Array],
      "not_matching_steps": {Object},
    }
    <Object>.Warnung.Nachricht Warnmeldung.
    Mögliche Warnungen:
    • Dienstplanposition stimmt nicht mit den Dienstplänen in der Schicht überein
    • In der Eskalationsschritt-Vorlage sind keine Zielgruppen definiert

    Datentyp: Zeichenfolge

    <Object>.Warnung.Skipped_steps Indizes aller Eskalationsschritte, die übersprungen wurden (1-basiert).

    Datentyp: Array

    <Object>.warning.not_matching_steps Objekt mit Informationen zu Eskalationsschritten, für die keine Dienstpläne im Format verfügbar sind {"Schrittnummer":[Dienstplannummer]} .

    Beispiel: Wenn der Rückgabewert ist {"3":[3]} , Ist bei Eskalationsschritt drei der tertiäre Dienstplan nicht verfügbar.

    Datentyp: Objekt

    Dieses Beispiel wendet die Eskalationsrichtlinienvorlage „Dienstpläne rotieren“ auf den Service Desk – Standard-Eskalationssatz an. Das Rückgabeobjekt ist leer, da keine Fehler oder Warnungen vorhanden sind.

    var escSetSysId = "32820dc3eb422110249e8d835d5228c3";
    var templateSysId = "a89e2982eb592110249e8d835d522825";
    var escTemp = new global.OnCallEscalationTemplateSNC();
    
    // delete existing escalation step definitions before applying the template
    escTemp.deleteEscalationSetSteps(escSetSysId);
    
    var result = escTemp.copyEscalationTemplatetoEscalationSet(templateSysId, escSetSysId);
    gs.info(JSON.stringify(result));

    Ausgabe:

    {}

    In diesem Beispiel wird die Richtlinienvorlage „Dienstplaneskalation rotieren“ auf den Satz „Arbeitszeiten – Standard-Eskalation“ angewendet. In diesem Fall hat die Anwendungsentwicklungsschicht nur zwei Dienstpläne, die Vorlage versucht jedoch, einen dritten Dienstplan zuzuweisen. Da die Anzahl der Dienstpläne nicht übereinstimmt, wird eine Warnung ausgelöst. In der Tabelle „Schichteskalationsschritt-Definition“ [cmn_Rota_esc_STEP_def] werden noch zwei Datensätze erstellt.

    var escSetSysId = "e4f8f73deb562110249e8d835d522852";
    var templateSysId = "a89e2982eb592110249e8d835d522825";
    var escTemp = new global.OnCallEscalationTemplateSNC();
    
    // delete existing escalation step definitions before applying the template
    escTemp.deleteEscalationSetSteps(escSetSysId);
    
    var result = escTemp.copyEscalationTemplatetoEscalationSet(templateSysId, escSetSysId);
    gs.info(JSON.stringify(result));

    Ausgabe:

    {
       "warning": {
          "message": "Skipped copying templates for some of the steps since no audiences are defined",
          "not_matching_steps": {
             "3": [
                3
             ]
          },
          "skipped_steps": [
             "3"
          ]
       }
    }

    OnCallEscalationTemplateSNC – deleteEscalationSetSteps(Zeichenfolge eskalationSetSysId)

    Löscht alle Datensätze der Eskalationsschritt-Definition, die einem Eskalationssatz zugeordnet sind.

    Tabelle : 4. Parameter
    Name Typ Beschreibung
    EskalationSetSysId Zeichenfolge SYS_ID des Eskalationssatzes in der Tabelle „Schichteskalationssatz“ [cmn_Rota_Eskalation_Set].
    Tabelle : 5. Ausgabe
    Typ Beschreibung
    Keine

    In diesem Beispiel werden alle Eskalationsschrittdefinitionen gelöscht, die dem Service Desk – Standard-Eskalationssatz zugeordnet sind.

    var escSetSysId = "32820dc3eb422110249e8d835d5228c3";
    
    var escTemp = new global.OnCallEscalationTemplateSNC();
    
    escTemp.deleteEscalationSetSteps(escSetSysId);