PlaybookExperience : inclus dans le périmètre
L’API PlaybookExperience fournit des méthodes pour gérer les exécutions de playbook.
Cette API requiert le module d’extension Core de l’expérience de playbook (com.glide.playbook_experience.config) et est fournie dans l’espace de noms sn_playbook .
Cette API nécessite au moins un playbook dans la table Définition de processus [sys_pd_process_definition]. Pour utiliser cette API, vous devez disposer des rôles requis pour afficher et annuler un processus en cours dans Process Automation Designer. Pour plus d’informations, consultez Concepteur d’automatisation de processus.
PlaybookExperience : cancelPlaybooksByParentRecord(GlideRecord parentRecord, String cancellationReason, String scopedName, String playbookExperienceId)
Annule les exécutions de playbook pour un enregistrement parent donné.
| Nom | Type | Description |
|---|---|---|
| parentRecord | GlideRecord | Enregistrement parent pour lequel annuler les exécutions du playbook. L’enregistrement parent peut être n’importe quel enregistrement qui a des exécutions de playbook, tel qu’un enregistrement d’interaction ou un enregistrement de ticket d’intégration. |
| Motif de l’annulation | Chaîne | Motif de l’annulation des exécutions du playbook. |
| scopedName (en anglais seulement) | Chaîne | Facultatif. Nom défini dans le champ d’application du playbook à annuler. Le nom inclus dans le périmètre provient de la table de définition de processus [sys_pd_process_definition] au format scope.name. S’il est fourni, seules les exécutions de ce playbook sont annulées pour l’enregistrement parent donné. Si elle n’est pas fournie, toutes les exécutions de tous les playbooks sont annulées pour l’enregistrement parent donné. |
| playbookExperienceId | Chaîne | Facultatif. Sys_id de l’enregistrement de l’expérience de playbook dans la table Expérience de playbook [sys_playbook_experience] à utiliser pour l’annulation. Utilisez ce paramètre si vous avez défini des mappages d’état d’activité personnalisés. Voir Mappage de l’état de l’activité Playbook. Par défaut : Sys_id de l’enregistrement Expérience de playbook globale. |
| Type | Description |
|---|---|
| Objet | Objet contenant les exécutions de playbook annulées et toutes les exécutions de playbook ignorées qui n’ont pas pu être annulées. |
| <Object>.canceledPlaybookContext | Liste des exécutions de playbook annulées. Chaque exécution de playbook est un objet dans le tableau. Type de données : tableau |
| <Object>.canceledPlaybookContext.can_read | Marqueur indiquant si l’utilisateur actuel peut lire l’enregistrement d’exécution du playbook. L’utilisateur actuel doit avoir un accès en lecture à l’enregistrement parent pour pouvoir lire l’enregistrement d’exécution du playbook. Valeurs valides :
Type de données : booléennes |
| <Object>.canceledPlaybookContext.canceled_by | ID d’utilisateur de l’utilisateur qui a annulé l’exécution du playbook. Type de données : chaîne |
| <Object>.canceledPlaybookContext.cancellation_reason | Motif d’annulation saisi par l’utilisateur qui a annulé l’exécution du playbook. Type de données : chaîne |
| <Object>.canceledPlaybookContext.errors | Liste des erreurs d’annulation. Chaque erreur est un objet du tableau. Type de données : tableau |
| <Object>.canceledPlaybookContext.errors.message | Message d’erreur. Type de données : chaîne |
| <Object>.canceledPlaybookContext.errors.type | Le type d’erreur. Type de données : chaîne |
| <Object>.canceledPlaybookContext.parent_record | Sys_id de l’enregistrement parent pour lequel les exécutions du playbook ont été annulées. Type de données : chaîne |
| <Object>.canceledPlaybookContext.parent_table | Nom de la table dont provient l’enregistrement parent. Type de données : chaîne |
| <Object>.canceledPlaybookContext.playbook_id | Sys_id du playbook à partir de la table Définitions de processus [sys_pd_process_definition]. Type de données : chaîne |
| <Object>.canceledPlaybookContext.playbook_table | Nom de la table d’où provient le playbook, généralement la table Définitions de processus [sys_pd_process_definition]. Type de données : chaîne |
| <Object>.canceledPlaybookContext.scoped_name | Nom inclus dans le champ d’application du playbook issu de la table Définitions de processus [sys_pd_process_definition] au format scope.name.Type de données : chaîne |
| <Object>.canceledPlaybookContext.state | L’état de l’exécution du playbook depuis la table Exécutions du processus [sys_pd_context]. Type de données : objet |
| <Object>.canceledPlaybookContext.state.displayValue | Valeur d’affichage de l’état d’exécution du playbook. Type de données : chaîne |
| <Object>.canceledPlaybookContext.state.value | La valeur de l’état d’exécution du playbook. Type de données : chaîne |
| <Object>.canceledPlaybookContext.sys_id | Sys_id de l’exécution du playbook à partir de la table Exécutions du processus [sys_pd_context]. Type de données : chaîne |
| <Object>.canceledPlaybookContext.title | Étiquette de l’exécution du playbook issue de la table Exécutions du processus [sys_pd_context]. Type de données : chaîne |
| <Object>.skippedPlaybookContext | Liste des exécutions de playbook ignorées. Chaque exécution de playbook est un objet dans le tableau. Pour obtenir des descriptions des propriétés de l’objet, consultez le canceledPlaybookContext tableau. Type de données : tableau |
Cet exemple montre comment annuler toutes les exécutions d’un playbook spécifique (dans ce cas, la démo d’expérience de playbook) pour un enregistrement d’interaction donné. Pour utiliser cette méthode dans une action d’interface utilisateur ou une règle métier, transmettez plutôt l’objet actuel en tant que 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));
Sortie :
{
"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)
Obtient une liste des exécutions de Playbook pour un enregistrement parent donné.
| Nom | Type | Description |
|---|---|---|
| parentRecord | GlideRecord | Enregistrement parent pour lequel obtenir les exécutions du playbook. L’enregistrement parent peut être n’importe quel enregistrement qui peut avoir des exécutions de playbook, tel qu’un enregistrement d’interaction ou un enregistrement de ticket d’intégration. |
| Type | Description |
|---|---|
| Tableau | Liste des exécutions de playbooks pour l’enregistrement parent. Chaque exécution de playbook est un objet dans le tableau. |
| <Tableau>.can_read | Marqueur indiquant si l’utilisateur actuel peut lire l’enregistrement d’exécution du playbook. L’utilisateur actuel doit avoir un accès en lecture à l’enregistrement parent pour pouvoir lire l’enregistrement d’exécution du playbook. Valeurs valides :
Type de données : booléennes |
| <tableau>.canceled_by | ID d’utilisateur de l’utilisateur qui a annulé l’exécution du playbook. Vide si le playbook n’est pas annulé. Type de données : chaîne |
| <Tableau>.cancellation_reason | Motif d’annulation saisi par l’utilisateur qui a annulé l’exécution du playbook. Vide si le playbook n’est pas annulé. Type de données : chaîne |
| <Tableau>.erreurs | Liste des erreurs. Chaque erreur est un objet du tableau. Type de données : tableau |
| <Tableau>.errors.message | Message d’erreur. Type de données : chaîne |
| <Tableau>.errors.type | Le type d’erreur. Type de données : chaîne |
| <tableau>.parent_record | Sys_id de l’enregistrement parent. Type de données : chaîne |
| <tableau>.parent_table | Nom de la table dont provient l’enregistrement parent. Type de données : chaîne |
| <Tableau>.playbook_id | Sys_id du playbook à partir de la table Définitions de processus [sys_pd_process_definition]. Type de données : chaîne |
| <tableau>.playbook_table | Nom de la table d’où provient le playbook, généralement la table Définitions de processus [sys_pd_process_definition]. Type de données : chaîne |
| <tableau>.scoped_name | Nom inclus dans le champ d’application du playbook issu de la table Définitions de processus [sys_pd_process_definition] au format scope.name.Type de données : chaîne |
| <Tableau>.state | L’état de l’exécution du playbook depuis la table Exécutions du processus [sys_pd_context]. Type de données : objet |
| <Array>.state.displayValue | Valeur d’affichage de l’état d’exécution du playbook. Type de données : chaîne |
| <Tableau>.état.valeur | La valeur de l’état d’exécution du playbook. Type de données : chaîne |
| <tableau>.sys_id | Sys_id de l’exécution du playbook à partir de la table Exécutions du processus [sys_pd_context]. Type de données : chaîne |
| <tableau>.title | Étiquette de l’exécution du playbook issue de la table Exécutions du processus [sys_pd_context]. Type de données : chaîne |
Cet exemple montre comment obtenir les exécutions du playbook pour un enregistrement d’interaction donné. Pour utiliser cette méthode dans une action d’interface utilisateur ou une règle métier, transmettez plutôt l’objet actuel en tant que parentRecord.
var parentRecord = new GlideRecordUtil().getGR("interaction", "148776e5818d7410f87701eb89fdc824");
var playbook = sn_playbook.PlaybookExperience.getPlaybooksForParentRecord(parentRecord);
gs.info(JSON.stringify(playbook, null, 2));
Sortie :
[
{
"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)
Vérifie si un enregistrement parent a des exécutions de playbook.
| Nom | Type | Description |
|---|---|---|
| parentRecord | GlideRecord | Enregistrement parent à vérifier pour les exécutions du playbook. L’enregistrement parent peut être n’importe quel enregistrement qui peut avoir des exécutions de playbook, tel qu’un enregistrement d’interaction ou un enregistrement de ticket d’intégration. |
| scopedName (en anglais seulement) | Chaîne | Facultatif. Nom inclus dans le champ d’application du playbook à vérifier. Le nom inclus dans le périmètre provient de la table de définition de processus [sys_pd_process_definition] au format scope.name. S’il est fourni, seules les exécutions de ce playbook sont vérifiées. Si ce n’est pas fourni, les exécutions de tous les playbooks sont vérifiées. |
| Type | Description |
|---|---|
| Booléen | Marqueur indiquant si l’enregistrement parent a des exécutions de playbook. Valeurs valides :
|
Cet exemple montre comment vérifier si un enregistrement d’interaction donné a des exécutions d’un playbook spécifique (dans ce cas, la démo d’expérience de playbook). Pour utiliser cette méthode dans une action d’interface utilisateur ou une règle métier, transmettez plutôt l’objet actuel en tant que 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);
Sortie :
true
PlaybookExperience : triggerPlaybook(String, scopedName, GlideRecord, parentRecord)
Lance un playbook pour un enregistrement parent.
| Nom | Type | Description |
|---|---|---|
| scopedName (en anglais seulement) | Chaîne | Nom défini dans le champ d’application du playbook à lancer. Le nom inclus dans le périmètre provient de la table de définition de processus [sys_pd_process_definition] au format scope.name. |
| parentRecord | GlideRecord | Enregistrement parent pour lequel lancer un playbook. L’enregistrement parent peut être n’importe quel enregistrement qui peut avoir des exécutions de playbook, tel qu’un enregistrement d’interaction ou un enregistrement de ticket d’intégration. |
| Type | Description |
|---|---|
| Chaîne | Sys_id de l’exécution du playbook depuis la table Exécutions de processus [sys_pd_context] créée pour l’enregistrement parent. Null si une exécution de playbook n’a pas été créée avec succès. |
Cet exemple montre comment lancer un playbook pour un enregistrement d’interaction donné. Pour utiliser cette méthode dans une action d’interface utilisateur ou une règle métier, transmettez plutôt l’objet actuel en tant que 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);
Sortie :
f059958267cdb410952864f0fed358cc