PlaybookExperience - Com escopo
A API PlaybookExperience fornece métodos para lidar com execuções de playbook.
Esta API requer o plug-in Playbook Experience Core (com.glide.playbook_experience.config) e é fornecida no namespace sn_playbook.
Esta API requer pelo menos um playbook na tabela Definição de processo [sys_pd_process_definition]. Para usar esta API, você deve ter as funções necessárias para exibir e cancelar um processo em execução no Designer de automação de processos. Para obter mais informações, consulte Designer de automação de processos.
PlaybookExperience - cancelPlaybooksByParentRecord(GlideRecord parentRecord, String CancelamentoReason, String scopedName, String playbookExperienceId)
Cancela execuções de playbook para um determinado registro primário.
| Nome | Tipo | Descrição |
|---|---|---|
| parentRecord | GlideRecord | O registro primário para o qual as execuções do playbook serão canceladas. O registro primário pode ser qualquer registro que tenha execuções de playbook, como um registro de interação ou um registro de caso de integração. |
| cancelReason | Cadeia de caracteres | O motivo para cancelar as execuções do playbook. |
| scopedName | Cadeia de caracteres | Opcional. O nome com escopo do playbook a ser cancelado. O nome com escopo é da tabela Definição de processo [sys_pd_process_definition] no formato scope.name. Se fornecido, somente as execuções deste playbook serão canceladas para o registro primário fornecido. Se não for fornecido, todas as execuções de todos os playbooks serão canceladas para o registro primário fornecido. |
| playbookExperienceId | Cadeia de caracteres | Opcional. Sys_id do registro da Playbook Experience na tabela Playbook Experience [sys_playbook_experience] a ser usado para o cancelamento. Use este parâmetro se você tiver definido mapeamentos de estado de atividade personalizados. Consulte Mapeamento de estado de atividade do playbook. Padrão: Sys_id do registro da Playbook Experience global. |
| Tipo | Descrição |
|---|---|
| Objeto | Objeto que contém as execuções do playbook canceladas e todas as execuções do playbook ignoradas que não puderam ser canceladas. |
| <Object>.canceledPlaybookContext | Lista das execuções do playbook canceladas. Cada execução do playbook é um objeto na matriz. Tipo de dados: matriz |
| <Object>.canceledPlaybookContext.can_read | Sinalizador que indica se o usuário atual pode ler o registro de execução do playbook. O usuário atual deve ter acesso de leitura ao registro primário para poder ler o registro de execução do playbook. Valores válidos:
Tipo de dados: booliano |
| <Object>.canceledPlaybookContext.canceled_by | O ID do usuário que cancelou a execução do playbook. Tipo de dados: cadeia de caracteres |
| <Object>.canceledPlaybookContext.cancellation_reason | O motivo do cancelamento inserido pelo usuário que cancelou a execução do playbook. Tipo de dados: cadeia de caracteres |
| <Object>.canceladoPlaybookContext.erros | Lista de erros de cancelamento. Cada erro é um objeto na matriz. Tipo de dados: matriz |
| <Object>.canceledPlaybookContext.errors.message | A mensagem de erro. Tipo de dados: cadeia de caracteres |
| <Object>.canceladoPlaybookContext.erros.tipo | O tipo de erro. Tipo de dados: cadeia de caracteres |
| <Object>.canceledPlaybookContext.parent_record | Sys_id do registro primário para o qual as execuções do playbook foram canceladas. Tipo de dados: cadeia de caracteres |
| <Object>.canceledPlaybookContext.parent_table | O nome da tabela de origem do registro primário. Tipo de dados: cadeia de caracteres |
| <Object>.canceledPlaybookContext.playbook_id | Sys_id do playbook da tabela Definições de processo [sys_pd_process_definition]. Tipo de dados: cadeia de caracteres |
| <Object>.canceledPlaybookContext.playbook_table | O nome da tabela de origem do playbook, geralmente a tabela Definições de processo [sys_pd_process_definition]. Tipo de dados: cadeia de caracteres |
| <Object>.canceledPlaybookContext.scoped_name | O nome com escopo do playbook da tabela Definições de processo [sys_pd_process_definition] no formato scope.name.Tipo de dados: cadeia de caracteres |
| <Object>.canceladoPlaybookContext.estado | O estado da execução do playbook da tabela Execuções de processo [sys_pd_context]. Tipo de dados: objeto |
| <Object>.canceledPlaybookContext.state.displayValue | O valor de exibição do estado de execução do playbook. Tipo de dados: cadeia de caracteres |
| <Object>.canceladoPlaybookContext.estado.valor | O valor do estado de execução do playbook. Tipo de dados: cadeia de caracteres |
| <Object>.canceledPlaybookContext.sys_id | Sys_id da execução do playbook da tabela Execuções de processo [sys_pd_context]. Tipo de dados: cadeia de caracteres |
| <Object>.canceladoPlaybookContext.título | O rótulo da execução do playbook da tabela Execuções de processo [sys_pd_context]. Tipo de dados: cadeia de caracteres |
| <Object>.skippedPlaybookContext | Lista de execuções do playbook ignoradas. Cada execução do playbook é um objeto na matriz. Para obter descrições das propriedades do objeto, consulte a matriz canceledPlaybookContext. Tipo de dados: matriz |
Este exemplo mostra como cancelar todas as execuções de um playbook específico (neste caso, a Demonstração da Playbook Experience) para um determinado registro de interação. Para usar este método em uma ação de IU ou regra de negócio, passe o objeto atual como 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));
Saída:
{
"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)
Obtém uma lista de execuções do playbook para um determinado registro primário.
| Nome | Tipo | Descrição |
|---|---|---|
| parentRecord | GlideRecord | O registro primário para o qual as execuções do playbook serão obtidas. O registro primário pode ser qualquer registro que possa ter execuções de playbook, como um registro de interação ou um registro de caso de integração. |
| Tipo | Descrição |
|---|---|
| Matriz | Lista de execuções do playbook para o registro primário. Cada execução do playbook é um objeto na matriz. |
| <Array>.can_read | Sinalizador que indica se o usuário atual pode ler o registro de execução do playbook. O usuário atual deve ter acesso de leitura ao registro primário para poder ler o registro de execução do playbook. Valores válidos:
Tipo de dados: booliano |
| <Array>.cancelado_por | O ID do usuário que cancelou a execução do playbook. Vazio se o playbook não tiver sido cancelado. Tipo de dados: cadeia de caracteres |
| <Array>.cancellation_reason | O motivo do cancelamento inserido pelo usuário que cancelou a execução do playbook. Vazio se o playbook não tiver sido cancelado. Tipo de dados: cadeia de caracteres |
| <Array>.erros | Lista de erros. Cada erro é um objeto na matriz. Tipo de dados: matriz |
| <Array>.erros.mensagem | A mensagem de erro. Tipo de dados: cadeia de caracteres |
| <Array>.erros.tipo | O tipo de erro. Tipo de dados: cadeia de caracteres |
| <Array>.parent_record | Sys_id do registro primário. Tipo de dados: cadeia de caracteres |
| <Array>.parent_table | O nome da tabela de origem do registro primário. Tipo de dados: cadeia de caracteres |
| <Array>.playbook_id | Sys_id do playbook da tabela Definições de processo [sys_pd_process_definition]. Tipo de dados: cadeia de caracteres |
| <Array>.playbook_table | O nome da tabela de origem do playbook, geralmente a tabela Definições de processo [sys_pd_process_definition]. Tipo de dados: cadeia de caracteres |
| <Array>.scoped_name | O nome com escopo do playbook da tabela Definições de processo [sys_pd_process_definition] no formato scope.name.Tipo de dados: cadeia de caracteres |
| <Array>.estado | O estado da execução do playbook da tabela Execuções de processo [sys_pd_context]. Tipo de dados: objeto |
| <Array>.state.displayValue | O valor de exibição do estado de execução do playbook. Tipo de dados: cadeia de caracteres |
| <Array>.estado.valor | O valor do estado de execução do playbook. Tipo de dados: cadeia de caracteres |
| <Array>.sys_id | Sys_id da execução do playbook da tabela Execuções de processo [sys_pd_context]. Tipo de dados: cadeia de caracteres |
| <Array>.título | O rótulo da execução do playbook da tabela Execuções de processo [sys_pd_context]. Tipo de dados: cadeia de caracteres |
Este exemplo mostra como obter execuções do playbook para um determinado registro de interação. Para usar este método em uma ação de IU ou regra de negócio, passe o objeto atual como parentRecord.
var parentRecord = new GlideRecordUtil().getGR("interaction", "148776e5818d7410f87701eb89fdc824");
var playbook = sn_playbook.PlaybookExperience.getPlaybooksForParentRecord(parentRecord);
gs.info(JSON.stringify(playbook, null, 2));
Saída:
[
{
"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)
Verifica se um registro primário tem execuções de playbook.
| Nome | Tipo | Descrição |
|---|---|---|
| parentRecord | GlideRecord | O registro primário para verificar execuções do playbook. O registro primário pode ser qualquer registro que possa ter execuções de playbook, como um registro de interação ou um registro de caso de integração. |
| scopedName | Cadeia de caracteres | Opcional. O nome com escopo do playbook a ser verificado. O nome com escopo é da tabela Definição de processo [sys_pd_process_definition] no formato scope.name. Se fornecido, somente as execuções deste playbook serão verificadas. Se não for fornecido, as execuções de todos os playbooks serão verificadas. |
| Tipo | Descrição |
|---|---|
| Booliano | Sinalizador que indica se o registro primário tem execuções de playbook. Valores válidos:
|
Este exemplo mostra como verificar se um determinado registro de interação tem execuções de um playbook específico (neste caso, a demonstração da Playbook Experience). Para usar este método em uma ação de IU ou regra de negócio, passe o objeto atual como 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);
Saída:
true
PlaybookExperience - restartPlaybook(cadeia de caracteres playbookContextId, cadeia de caracteres LaneContextId, cadeia de caracteres activityContextId, cadeia de caracteres playbookExperienceId)
Reinicia uma execução do início (o playbook inteiro) ou de uma fase ou atividade específica de um playbook.
| Nome | Tipo | Descrição |
|---|---|---|
| playbookContextId | Cadeia de caracteres | Sys_id do registro de contexto do playbook para a execução do playbook ou execução que você deseja reiniciar. Tabela: execução de processo [sys_pd_context] |
| laneContextId | Cadeia de caracteres | Opcional. O sys_id do registro de contexto de fase para a execução de fase ou execução a partir da qual você deseja reiniciar. Nota: Somente fases concluídas podem ser reiniciadas. Tabela: execuções de raia [sys_pd_lane_context] |
| IdContextoAtividade | Cadeia de caracteres | Opcional. O sys_id do registro de contexto de atividade para a execução da atividade ou execução a partir da qual você deseja reiniciar. Nota: Somente atividades concluídas podem ser reiniciadas. Tabela: execuções de atividades [sys_pd_activity_context] |
| playbookExperienceId | Cadeia de caracteres | Opcional. O sys_id da Playbook Experience que você deseja usar para a execução reiniciada. Use este parâmetro se você tiver definido mapeamentos de estado de atividade personalizada. Consulte Mapeamento de estado de atividade do playbook. Padrão: Playbook Experience global Tabela: Playbook Experience [sys_playbook_experience] |
| Propriedade | Descrição |
|---|---|
| Objeto | Objeto que contém os detalhes da execução do playbook reiniciado. |
| pode_adicionar_atividade | Sinalizador que indica se um usuário pode adicionar uma atividade opcional ao playbook. Valores válidos:
Tipo de dados: booliano |
| can_cancelar | Sinalizador que indica se um usuário pode cancelar um playbook.
Tipo de dados: booliano |
| pode_ler | Sinalizador que indica se o usuário atual pode ler o registro de execução do playbook. O usuário atual deve ter acesso de leitura ao registro primário para poder ler o registro de execução do playbook.
Tipo de dados: booliano |
| can_restart | Sinalizador que indica se um usuário pode reiniciar um playbook, fase ou atividade.
Tipo de dados: booliano |
| cancel_by | ID do usuário que cancelou a execução do playbook. Tipo de dados: cadeia de caracteres |
| cancel_reason | Motivo do cancelamento inserido pelo usuário que cancelou a execução do playbook. Tipo de dados: cadeia de caracteres |
| erros | Lista de erros de reinicialização. Cada erro é um objeto na matriz. Tipo de dados: matriz |
| está_arquivado | Sinalizador que indica se os registros de contexto do playbook estão arquivados. Valores possíveis:
Tipo de dados: booliano |
| parent_record | Sys_id do registro primário para o qual as execuções do playbook foram reiniciadas. Tipo de dados: cadeia de caracteres |
| parent_table | Nome da tabela de origem do registro primário. Tipo de dados: cadeia de caracteres |
| playbook_id | Sys_id do playbook. Tipo de dados: cadeia de caracteres Tabela: definições de processo [sys_pd_process_definition] |
| playbook_tabela | Nome da tabela de origem do playbook, geralmente a tabela Definições de processo [sys_pd_process_definition]. Tipo de dados: cadeia de caracteres |
| scoped_name | Opcional. O nome com escopo do playbook a ser reiniciado. O nome com escopo é da tabela Definição de processo [sys_pd_process_definition] no formato scope.name. Se fornecido, somente as execuções deste playbook serão reiniciadas para o registro primário fornecido. Se não for fornecido, todas as execuções de todos os playbooks serão reiniciadas para o registro primário fornecido.Tipo de dados: cadeia de caracteres |
| estado | Indica se sua solicitação de ativação foi bem-sucedida. Tipo de dados: objeto Valores possíveis:
|
| estado.displayValue | Valor de exibição do estado de execução do playbook. Tipo de dados: cadeia de caracteres |
| estado.valor | Valor do estado de execução do playbook. Tipo de dados: cadeia de caracteres |
| sys_id | Sys_id da execução do playbook. Tipo de dados: cadeia de caracteres Tabela: execuções de processo [sys_pd_context] |
| título | Rótulo da execução do playbook. Tipo de dados: cadeia de caracteres Tabela: execuções de processo [sys_pd_context] |
Este exemplo mostra como reiniciar uma execução de playbook inteira com o ID de registro de execuções de processo [sys_pd_context] 98e4fe04591b4caca59583f7b8e30b0a.
var gr = new GlideRecord('sys_pd_context');
var found = gr.get('98e4fe04591b4caca59583f7b8e30b0a');
if (found) {
var result = sn_playbook.PlaybookExperience.restartPlaybook(gr);
gs.info(JSON.stringify(result));
}
else
gs.info('invalid pd context');
Saída:
{
"scoped_name": "global.restart_scriptable_demo",
"canceled_by": "",
"can_add_activity": true,
"playbook_table": "sys_pd_process_definition",
"can_restart": true,
"can_cancel": true,
"title": "Restart scriptable demo",
"cancellation_reason": "",
"parent_table": "interaction",
"can_read": true,
"sys_id": "98e4fe04591b4caca59583f7b8e30b0a",
"is_archived": false,
"state": {
"displayValue": "In Progress",
"value": "IN_PROGRESS"
},
"parent_record": "b88623beb5e10210f877d783f6f83a46",
"playbook_id": "12d5a7fab5e10210f877d783f6f83aff",
"errors": []
}
PlaybookExperience - triggerPlaybook(String scopedName, GlideRecord parentRecord)
Inicia um playbook para um registro primário.
| Nome | Tipo | Descrição |
|---|---|---|
| scopedName | Cadeia de caracteres | O nome com escopo do playbook a ser iniciado. O nome com escopo é da tabela Definição de processo [sys_pd_process_definition] no formato scope.name. |
| parentRecord | GlideRecord | O registro primário para iniciar um playbook. O registro primário pode ser qualquer registro que possa ter execuções de playbook, como um registro de interação ou um registro de caso de integração. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Sys_id da execução do playbook da tabela Execuções de processo [sys_pd_context] que foi criada para o registro primário. Nulo se uma execução de playbook não tiver sido criada com sucesso. |
Este exemplo mostra como iniciar um playbook para um determinado registro de interação. Para usar este método em uma ação de IU ou regra de negócio, passe o objeto atual como 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);
Saída:
f059958267cdb410952864f0fed358cc