PlaybookExperience – Scoped

  • Freigeben Version: Washingtondc
  • Aktualisiert 1. Februar 2024
  • 7 Minuten Lesedauer
  • Die PlaybookExperience- API bietet Methoden für die Verarbeitung von Playbook-Ausführungen.

    Diese API erfordert das Plugin „Playbook Experience Core“ (com.glide.playbook_experience.config) und wird im Namespace sn_playbook bereitgestellt.

    Diese API erfordert mindestens ein Playbook in der Tabelle „Prozessdefinition“ [sys_pd_process_definition]. Um diese API zu verwenden, müssen Sie über die erforderlichen Rollen verfügen, um einen laufenden Prozess im Prozessautomatisierungs-Designer anzuzeigen und abzubrechen. Weitere Informationen finden Sie unter Prozessautomatisierungs-Designer.

    PlaybookExperience – cancelPlaybooksByParentRecord(GlideRecord parentRecord, String cancellingReason, String scopedName, String playbookExperienceId)

    Bricht Playbook-Ausführungen für einen bestimmten übergeordneten Datensatz ab.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    parentRecord GlideRecord Der übergeordnete Datensatz, für den Playbook-Ausführungen abgebrochen werden sollen. Der übergeordnete Datensatz kann ein beliebiger Datensatz mit Playbook-Ausführungen sein, z. B. ein Interaktionsdatensatz oder ein Onboarding-Falldatensatz.
    Stornierungsgrund Zeichenfolge Der Grund für den Abbruch der Playbook-Ausführungen.
    scopedName Zeichenfolge Optional. Der bereichsbezogene Name des abzubrechenden Playbooks. Der bereichsbezogene Name stammt aus der Tabelle „Prozessdefinition“ [sys_pd_process_definition] im Format scope.name. Wenn angegeben, werden nur Ausführungen dieses Playbooks für den angegebenen übergeordneten Datensatz abgebrochen. Wenn nicht angegeben, werden alle Ausführungen aller Playbooks für den angegebenen übergeordneten Datensatz abgebrochen.
    playbookExperienceId Zeichenfolge Optional. Sys_id des Playbook-Experience-Datensatzes in der Playbook-Experience-Tabelle [sys_playbook_experience], die für den Abbruch verwendet werden soll. Verwenden Sie diesen Parameter, wenn Sie benutzerdefinierte Aktivitätsstatuszuordnungen definiert haben. Weitere Informationen finden Sie unter Playbook-Aktivitätsstatuszuordnung.

    Standard: Sys_id des Global Playbook Experience-Datensatzes.

    Tabelle : 2. Ergebnisse
    Typ Beschreibung
    Objekt Objekt mit den abgebrochenen Playbook-Ausführungen und allen übersprungenen Playbook-Ausführungen, die nicht abgebrochen werden konnten.
    {
      "canceledPlaybookContext": [Array],
      "skippedPlaybookContext": [Array]
    }
    
    <Object>.abgebrochenPlaybookContext Liste der abgebrochenen Playbook-Ausführungen. Jede Playbook-Ausführung ist ein Objekt im Array.

    Datentyp: Array

    "canceledPlaybookContext": [
        {
          "can_read": Boolean,
          "canceled_by": "String",
          "cancellation_reason": "String",
          "errors": [Array],
          "parent_record": "String",
          "parent_table": "String",
          "playbook_id": "String",
          "playbook_table": "String",
          "scoped_name": "String",
          "state": {Object},
          "sys_id": "String",
          "title": "String"   
        }
    ]
    <Object>.abgebrochenPlaybookContext.can_read

    Kennzeichnung, die angibt, ob der aktuelle Benutzer den Playbook-Ausführungsdatensatz lesen kann. Der aktuelle Benutzer muss Lesezugriff auf den übergeordneten Datensatz haben, um den Playbook-Ausführungsdatensatz lesen zu können.

    Gültige Werte:
    • true: Der aktuelle Benutzer hat Lesezugriff auf den Playbook-Ausführungsdatensatz.
    • false: Der aktuelle Benutzer hat keinen Lesezugriff auf den Playbook-Ausführungsdatensatz.

    Datentyp: Boolesch

    <Object>.abgebrochenPlaybookContext.abgebrochen_by Benutzer-ID des Benutzers, der die Playbook-Ausführung abgebrochen hat.

    Datentyp: Zeichenfolge

    <Object>.abgebrochenPlaybookContext.cancellation_reason Der vom Benutzer eingegebene Abbruchgrund, der die Playbook-Ausführung abgebrochen hat.

    Datentyp: Zeichenfolge

    <Object>.abgebrochenPlaybookContext.errors Liste der Abbruchfehler. Jeder Fehler ist ein Objekt im Array.

    Datentyp: Array

    "errors": [
        {      
          "message": "String",
          "type": "String"  
        }
    ]
    <Object>.abgebrochenPlaybookContext.errors.message Die Fehlermeldung.

    Datentyp: Zeichenfolge

    <Object>.abgebrochenPlaybookContext.errors.type Typ des Fehlers.

    Datentyp: Zeichenfolge

    <Object>.abgebrochenPlaybookContext.parent_record Sys_id des übergeordneten Datensatzes, für den Playbook-Ausführungen abgebrochen wurden.

    Datentyp: Zeichenfolge

    <Object>.abgebrochenPlaybookContext.parent_table Der Name der Tabelle, aus der der übergeordnete Datensatz stammt.

    Datentyp: Zeichenfolge

    <Object>.abgebrochenPlaybookContext.playbook_id Sys_id des Playbooks aus der Tabelle „Prozessdefinitionen“ [sys_pd_process_definition].

    Datentyp: Zeichenfolge

    <Object>.abgebrochenPlaybookContext.playbook_table Der Name der Tabelle, aus der das Playbook stammt, im Allgemeinen die Tabelle „Prozessdefinitionen“ [sys_pd_process_definition].

    Datentyp: Zeichenfolge

    <Object>.abgebrochenPlaybookContext.scoped_name Der bereichsbezogene Name des Playbooks aus der Tabelle „Prozessdefinitionen“ [sys_pd_process_definition] im Format scope.name.

    Datentyp: Zeichenfolge

    <Object>.abgebrochenPlaybookContext.state Status der Playbook-Ausführung aus der Tabelle „Prozessausführungen“ [sys_pd_context].

    Datentyp: Objekt

    "state": {    
       "displayValue": "String",    
       "value": "String"
    }
    <Object>.abgebrochenPlaybookContext.state.displayValue Der Anzeigewert des Playbook-Ausführungsstatus.

    Datentyp: Zeichenfolge

    <Object>.abgebrochenPlaybookContext.state.value Der Wert des Playbook-Ausführungsstatus.

    Datentyp: Zeichenfolge

    <Object>.abgebrochenPlaybookContext.sys_id Sys_id der Playbook-Ausführung aus der Tabelle „Prozessausführungen“ [sys_pd_context].

    Datentyp: Zeichenfolge

    <Object>.abgebrochenPlaybookContext.title Die Bezeichnung der Playbook-Ausführung aus der Tabelle „Prozessausführungen“ [sys_pd_context].

    Datentyp: Zeichenfolge

    <Object>.übersprungenPlaybookContext Liste der übersprungenen Playbook-Ausführungen. Jede Playbook-Ausführung ist ein Objekt im Array. Beschreibungen der Objekteigenschaften finden Sie im Array canceledPlaybookContext.

    Datentyp: Array

    "skippedPlaybookContext": [
        {
          "can_read": Boolean,
          "canceled_by": "String",
          "cancellation_reason": "String",
          "errors": [Array],
          "parent_record": "String",
          "parent_table": "String",
          "playbook_id": "String",
          "playbook_table": "String",
          "scoped_name": "String",
          "state": {Object},
          "sys_id": "String",
          "title": "String"   
        }
    ]

    Dieses Beispiel zeigt, wie alle Ausführungen eines bestimmten Playbooks (in diesem Fall die Playbook-Experience-Demo) für einen bestimmten Interaktionsdatensatz abgebrochen werden. Um diese Methode in einer UI-Aktion oder Business Rule zu verwenden, übergeben Sie stattdessen das aktuelle Objekt als parentRecord.

    var parentRecord = new GlideRecordUtil().getGR("interaction", "d91742531b343010a26c98a1b24bcbe0");
    
    var cancellationReason = "Cancelling this playbook";
    
    // demo playbook from Process Automation Experience Demo store app
    var scopedName = "sn_pad_demo.playbook_experience_demo"; 
    
    // demo playbook experience from Process Automation Experience Demo store app
    var playbookExperienceId = "a56d8d93ff311010cc0853ea793bf1a6"; 
    	
    var cancelPlaybookReturn = sn_playbook.PlaybookExperience.cancelPlaybooksByParentRecord(parentRecord, cancellationReason, scopedName, playbookExperienceId);
    	
    
    gs.info(JSON.stringify(cancelPlaybookReturn, null, 2));

    Ausgabe:

    {
      "canceledPlaybookContext": [
        {
          "can_read": true,
          "sys_id": "d02782533d343010ac50ee17e75d3466",
          "scoped_name": "sn_pad_demo.playbook_experience_demo",
          "canceled_by": "admin",
          "playbook_table": "sys_pd_process_definition",
          "state": {
            "displayValue": "Pending Cancel",
            "value": "PENDING_CANCEL"
          },
          "title": "Playbook Experience Demo",
          "parent_record": "d91742531b343010a26c98a1b24bcbe0",
          "playbook_id": "0d35ee1807301010cc08d9630ad3002a",
          "cancellation_reason": "Cancelling this playbook",
          "parent_table": "interaction",
          "errors": []
        }
      ],
      "skippedPlaybookContext": []
    }

    PlaybookExperience – getPlaybooksForParentRecord(GlideRecord parentRecord)

    Ruft eine Liste von Playbook-Ausführungen für einen bestimmten übergeordneten Datensatz ab.

    Tabelle : 3. Parameter
    Name Typ Beschreibung
    parentRecord GlideRecord Der übergeordnete Datensatz, für den Playbook-Ausführungen abgerufen werden sollen. Der übergeordnete Datensatz kann ein beliebiger Datensatz sein, der Playbook-Ausführungen enthalten kann, z. B. ein Interaktionsdatensatz oder ein Onboarding-Falldatensatz.
    Tabelle : 4. Ergebnisse
    Typ Beschreibung
    Array Liste der Playbook-Ausführungen für den übergeordneten Datensatz. Jede Playbook-Ausführung ist ein Objekt im Array.
    [
        {
          "can_read": Boolean,
          "canceled_by": "String",
          "cancellation_reason": "String",
          "errors": [Array],
          "parent_record": "String",
          "parent_table": "String",
          "playbook_id": "String",
          "playbook_table": "String",
          "scoped_name": "String",
          "state": {Object},
          "sys_id": "String",
          "title": "String"   
        }
    ]
    <Array>.can_read

    Kennzeichnung, die angibt, ob der aktuelle Benutzer den Playbook-Ausführungsdatensatz lesen kann. Der aktuelle Benutzer muss Lesezugriff auf den übergeordneten Datensatz haben, um den Playbook-Ausführungsdatensatz lesen zu können.

    Gültige Werte:
    • true: Der aktuelle Benutzer hat Lesezugriff auf den Playbook-Ausführungsdatensatz.
    • false: Der aktuelle Benutzer hat keinen Lesezugriff auf den Playbook-Ausführungsdatensatz.

    Datentyp: Boolesch

    <Array>.abgebrochen_by Benutzer-ID des Benutzers, der die Playbook-Ausführung abgebrochen hat. Leer, wenn das Playbook nicht storniert wird.

    Datentyp: Zeichenfolge

    <Array>.cancellation_reason Der vom Benutzer eingegebene Abbruchgrund, der die Playbook-Ausführung abgebrochen hat. Leer, wenn das Playbook nicht storniert wird.

    Datentyp: Zeichenfolge

    <Array>.Fehler Liste der Fehler. Jeder Fehler ist ein Objekt im Array.

    Datentyp: Array

    "errors": [
        {      
          "message": "String",
          "type": "String"  
        }
    ]
    <Array>.errors.message Die Fehlermeldung.

    Datentyp: Zeichenfolge

    <Array>.Fehler.Typ Typ des Fehlers.

    Datentyp: Zeichenfolge

    <Array>.übergeordneter_Datensatz Sys_id des übergeordneten Datensatzes.

    Datentyp: Zeichenfolge

    <Array>.parent_table Der Name der Tabelle, aus der der übergeordnete Datensatz stammt.

    Datentyp: Zeichenfolge

    <Array>.playbook_id Sys_id des Playbooks aus der Tabelle „Prozessdefinitionen“ [sys_pd_process_definition].

    Datentyp: Zeichenfolge

    <Array>.playbook_table Der Name der Tabelle, aus der das Playbook stammt, im Allgemeinen die Tabelle „Prozessdefinitionen“ [sys_pd_process_definition].

    Datentyp: Zeichenfolge

    <Array>.scoped_name Der bereichsbezogene Name des Playbooks aus der Tabelle „Prozessdefinitionen“ [sys_pd_process_definition] im Format scope.name.

    Datentyp: Zeichenfolge

    <Array>.Status Status der Playbook-Ausführung aus der Tabelle „Prozessausführungen“ [sys_pd_context].

    Datentyp: Objekt

    "state": {    
       "displayValue": "String",    
       "value": "String"
    }
    <Array>.state.displayValue Der Anzeigewert des Playbook-Ausführungsstatus.

    Datentyp: Zeichenfolge

    <Array>.state.value Der Wert des Playbook-Ausführungsstatus.

    Datentyp: Zeichenfolge

    <Array>.sys_id Sys_id der Playbook-Ausführung aus der Tabelle „Prozessausführungen“ [sys_pd_context].

    Datentyp: Zeichenfolge

    <Array>.Titel Die Bezeichnung der Playbook-Ausführung aus der Tabelle „Prozessausführungen“ [sys_pd_context].

    Datentyp: Zeichenfolge

    Dieses Beispiel zeigt, wie Playbook-Ausführungen für einen bestimmten Interaktionsdatensatz abgerufen werden. Um diese Methode in einer UI-Aktion oder Business Rule zu verwenden, übergeben Sie stattdessen das aktuelle Objekt als parentRecord.

    var parentRecord = new GlideRecordUtil().getGR("interaction", "148776e5818d7410f87701eb89fdc824");
    var playbook = sn_playbook.PlaybookExperience.getPlaybooksForParentRecord(parentRecord);
    gs.info(JSON.stringify(playbook, null, 2));
    

    Ausgabe:

    [
      {
        "can_read": true,
        "sys_id": "bd87bae50b8d7410807a8ffed6d0909e",
        "scoped_name": "sn_pad_demo.playbook_experience_demo",
        "canceled_by": "",
        "playbook_table": "sys_pd_process_definition",
        "state": {
          "displayValue": "In Progress",
          "value": "IN_PROGRESS"
        },
        "title": "Playbook Experience Demo",
        "parent_record": "148776e5818d7410f87701eb89fdc824",
        "playbook_id": "0d35ee1807301010cc08d9630ad3002a",
        "cancellation_reason": "",
        "parent_table": "interaction",
        "errors": []
      }
    ]
    

    PlaybookExperience – parentRecordContainsPlaybook(GlideRecord parentRecord, String scopedName)

    Überprüft, ob für einen übergeordneten Datensatz Playbook-Ausführungen vorhanden sind.

    Tabelle : 5. Parameter
    Name Typ Beschreibung
    parentRecord GlideRecord Der übergeordnete Datensatz, in dem nach Playbook-Ausführungen gesucht werden soll. Der übergeordnete Datensatz kann ein beliebiger Datensatz sein, der Playbook-Ausführungen enthalten kann, z. B. ein Interaktionsdatensatz oder ein Onboarding-Falldatensatz.
    scopedName Zeichenfolge Optional. Der bereichsbezogene Name des Playbooks, nach dem gesucht werden soll. Der bereichsbezogene Name stammt aus der Tabelle „Prozessdefinition“ [sys_pd_process_definition] im Format scope.name. Wenn angegeben, wird nur nach Ausführungen dieses Playbooks gesucht. Wenn nicht angegeben, wird nach Ausführungen aller Playbooks gesucht.
    Tabelle : 6. Ergebnisse
    Typ Beschreibung
    Boolean

    Kennzeichnung, die angibt, ob der übergeordnete Datensatz über Playbook-Ausführungen verfügt.

    Gültige Werte:
    • true: Übergeordneter Datensatz verfügt über Playbook-Ausführungen.
    • false: Übergeordneter Datensatz enthält keine Playbook-Ausführungen.

    Dieses Beispiel zeigt, wie Sie überprüfen können, ob ein bestimmter Interaktionsdatensatz Ausführungen eines bestimmten Playbooks enthält (in diesem Fall die Playbook-Experience-Demo). Um diese Methode in einer UI-Aktion oder Business Rule zu verwenden, übergeben Sie stattdessen das aktuelle Objekt als parentRecord.

    var parentRecord = new GlideRecordUtil().getGR("interaction", "148776e5818d7410f87701eb89fdc824");
    
    // demo playbook from Process Automation Experience Demo store app
    var scopedName = "sn_pad_demo.playbook_experience_demo"; 
    
    var hasPlaybooks = sn_playbook.PlaybookExperience.parentRecordContainsPlaybook(parentRecord, scopedName);
    gs.info(hasPlaybooks);

    Ausgabe:

    true

    PlaybookExperience – triggerPlaybook(String scopedName, GlideRecord parentRecord)

    Initiiert ein Playbook für einen übergeordneten Datensatz.

    Tabelle : 7. Parameter
    Name Typ Beschreibung
    scopedName Zeichenfolge Der bereichsbezogene Name des zu initiierenden Playbooks. Der bereichsbezogene Name stammt aus der Tabelle „Prozessdefinition“ [sys_pd_process_definition] im Format scope.name.
    parentRecord GlideRecord Der übergeordnete Datensatz, für den ein Playbook initiiert werden soll. Der übergeordnete Datensatz kann ein beliebiger Datensatz sein, der Playbook-Ausführungen enthalten kann, z. B. ein Interaktionsdatensatz oder ein Onboarding-Falldatensatz.
    Tabelle : 8. Ergebnisse
    Typ Beschreibung
    Zeichenfolge Sys_id der Playbook-Ausführung aus der Tabelle „Prozessausführungen“ [sys_pd_context], die für den übergeordneten Datensatz erstellt wurde. NULL, wenn eine Playbook-Ausführung nicht erfolgreich erstellt wurde.

    Dieses Beispiel zeigt, wie ein Playbook für einen bestimmten Interaktionsdatensatz initiiert wird. Um diese Methode in einer UI-Aktion oder Business Rule zu verwenden, übergeben Sie stattdessen das aktuelle Objekt als parentRecord.

    var parentRecord = new GlideRecordUtil().getGR("interaction", "148776e5818d7410f87701eb89fdc824");
    
    // demo playbook from Process Automation Experience Demo store app
    var scopedName = "sn_pad_demo.playbook_experience_demo"; 
    
    var playbookExecution = sn_playbook.PlaybookExperience.triggerPlaybook(scopedName, parentRecord);
    gs.info(playbookExecution);
    

    Ausgabe:

    f059958267cdb410952864f0fed358cc