---
sourceDocument: Referência de API do Xanadu
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - pt-BR

ft:publication_title :

    - Referência de API do Xanadu

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# ActivityHistoryRecord - Global

# ActivityHistoryRecord - Global {#ariaid-title1}

* Versão de lançamento: Xanadu
* 
* Atualizado 1 de ago. de 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 21 min. de leitura

A API ActivityHistoryRecord fornece métodos que facilitam a interação com um objeto WorkflowModelManager. É um objeto de dados que é membro da classe WorkflowModelManager.

Essa API é basicamente uma cópia dos dados de um registro de glide na tabela Histórico de atividades \[wf_history\]. Também existem alguns métodos auxiliares definidos para esta classe. Não há acessadores ou modificadores para os elementos de dados simples desta classe.

## ActivityHistoryRecord - addArivedActivityToJoin(cadeia de caracteres activityIds) {#ariaid-title2}

Altera o arrivedState de IDs já conhecidos para verdadeiro.
Assim que este método muda o arrivedState de IDs conhecidos para verdadeiro, ele testa para ver se a associação foi atendida. se estiver, a caminhada do modelo poderá continuar; caso contrário, ele deve continuar para a próxima transição apropriada. Isso é chamado durante a reprodução, conforme o fluxo wf_activities esperado para a junção.
{#r_AHR-addArrivedActivityToJoin_SA__table_z2t_bvx_rt__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| IDs de atividades | Matriz de cadeias de caracteres | Matriz de wf_activity.sys_ids que se encaminha para o ingresso. |
[Tabela 1. Parâmetros]

{#r_AHR-addArrivedActivityToJoin_SA__table_z2t_bvx_rt} {#r_AHR-addArrivedActivityToJoin_SA__table_aft_bvx_rt__entry__2}

| Tipo | Descrição |
|-|-|
| vazio |   |
[Tabela 2. Retorna]

{#r_AHR-addArrivedActivityToJoin_SA__table_aft_bvx_rt}

## ActivityHistoryRecord - addJoinFromActivityIds(cadeia de caracteres activityIds) {#ariaid-title3}

Propaga todos os sys_ids wf_activity esperados que devem passar por esta junção e define seu arremessoState = falso.
Este estado é revertido para verdadeiro conforme cada atividade esperada faz a transição para esta instância do Ingresso. Este método é chamado como parte da criação do modelo em cache na memória e não é chamado durante a reprodução.
{#r_AHR-addJoinFromActivityIds_SA__table_x2t_bvx_rt__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| IDs de atividades | Matriz de cadeias de caracteres | Matriz de wf_activity.sys_ids que se encaminha para o ingresso. |
[Tabela 3. Parâmetros]

{#r_AHR-addJoinFromActivityIds_SA__table_x2t_bvx_rt} {#r_AHR-addJoinFromActivityIds_SA__table_y2t_bvx_rt__entry__2}

| Tipo | Descrição |
|-|-|
| vazio |   |
[Tabela 4. Retorna]

{#r_AHR-addJoinFromActivityIds_SA__table_y2t_bvx_rt}

## ActivityHistoryRecord - addTransition(Object InTransition) {#ariaid-title4}

Como o modelo é armazenado em cache por _getExecutedTransitions(), este método adiciona transições que foram DE esta atividade para a atividade .to.
{#r_AHR-addTransition_O__table_psx_ttx_rt__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| Em transição | Objeto | Objeto Javascript ExecutedTransition a ser adicionado a esta atividade. |
[Tabela 5. Parâmetros]

{#r_AHR-addTransition_O__table_psx_ttx_rt} {#r_AHR-addTransition_O__table_qsx_ttx_rt__entry__2}

| Tipo | Descrição |
|-|-|
| vazio |   |
[Tabela 6. Retorna]

{#r_AHR-addTransition_O__table_qsx_ttx_rt}

## ActivityHistoryRecord - debugDump() {#ariaid-title5}

Imprime informações de depuração.
{#r_AHR-debugDump__table_g5c_rwx_rt__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| Nenhum |   |   |
[Tabela 7. Parâmetros]

{#r_AHR-debugDump__table_g5c_rwx_rt} {#r_AHR-debugDump__table_h5c_rwx_rt__entry__2}

| Tipo | Descrição |
|-|-|
| vazio |   |
[Tabela 8. Retorna]

{#r_AHR-debugDump__table_h5c_rwx_rt}  
O exemplo de código a seguir mostra como usar esse método. Ela usa os registros de histórico de fluxo de trabalho mais antigos de uma instância base.

    // These are associated with the Change Request - Normal workflow for CHG0000037.
    var wfhGR = new GlideRecord ('wf_history');
    wfhGR.addQuery('context.id', '41cdb152db252200a6a2b31be0b8f527');
    wfhGR.addQuery('context.table', 'change_request');
    wfhGR.orderBy ('activity_index');
    wfhGR.query();
    while (wfhGR.next())  {
      var script_name = 'AHR';
      //
      //  Acquire the execution history of the workflow's activities.
      //  Do this just once while processing the first activity.

      if(wfhGR.activity_index == 0) {
        var model = new WorkflowModelManager( wfhGR.context );
        model.getExecutedHistory();
      }

    //
    // Access a hash of ActivityHistoryRecord javascript objects,
    // hashed by the sys_id of the wf_history record.
    // There will be one ActivityHistoryRecord for each activity.

      var ActivityHistoryRecord = model.getActivityHistoryRecordById(wfhGR.sys_id);

    //
    // Use ActivityHistoryRecord methods to display selected values

      gs.log('Log String [' + ActivityHistoryRecord.getLogString() + ']', script_name);
      gs.log('debugDump START', script_name);
      ActivityHistoryRecord.debugDump();
      gs.log('debugDump END', script_name);
      gs.log('Turnstile?[' + ActivityHistoryRecord.isTurnstile() + ']', script_name);
      gs.log('Transition Count[' + ActivityHistoryRecord.getTransitionCount() + ']\n', script_name );
    }

Saída:

    [0:00:00.133] Script completed in scope global: script
    Script execution history and recovery available here
    AHR: Log String [HISTORY RECORD:  History ID:a228c4b6dba52200a6a2b31be0b8f57a  History INDEX:0  History START TIME:1585659881000  History END TIME:1585659881000  WF Activity ID:e233b949cb020200d71cb9c0c24c9c1f  WF Activity NAME:Begin  WF Activity DEF ID:c7a5e32c0a0a0b3a002377c24ed8ea76  WF Activity DEF NAME:Begin  Transition Count: 1  Is Turnstile (loop) : false  Is Join: false]
    AHR: debugDump START
    *** Script: 
    *** Script: WF HISTORY RECORD:
    *** Script:           History ID: a228c4b6dba52200a6a2b31be0b8f57a
    *** Script:        History INDEX: 0
    *** Script:   History START TIME: 1585659881000
    *** Script:     History END TIME: 1585659881000
    *** Script:        History INDEX: 0
    *** Script:       WF Activity ID: e233b949cb020200d71cb9c0c24c9c1f
    *** Script:     WF Activity NAME: Begin
    *** Script:   WF Activity DEF ID: c7a5e32c0a0a0b3a002377c24ed8ea76
    *** Script: WF Activity DEF NAME: Begin
    *** Script:     Transition Count: 1
    *** Script: Roll Back Originator: 
    *** Script:  Is Turnstile (loop): false
    *** Script:              Is Join: false
    AHR: debugDump END
    AHR: Turnstile? [false]
    AHR: Transition Count [1]


    AHR: Log String [HISTORY RECORD:  History ID:a228c4b6dba52200a6a2b31be0b8f57d  History INDEX:1  History START TIME:1585659881000  History END TIME:1585659881000  WF Activity ID:2e33b949cb020200d71cb9c0c24c9c20  WF Activity NAME:Change moves to Assess  WF Activity DEF ID:d93a02ae0a0a0aa30077abad3fdac035  WF Activity DEF NAME:Wait for condition  Transition Count: 1  Is Turnstile (loop) : false  Is Join: false]
    AHR: debugDump START
    *** Script: 
    *** Script: WF HISTORY RECORD:
    *** Script:           History ID: a228c4b6dba52200a6a2b31be0b8f57d
    *** Script:        History INDEX: 1
    *** Script:   History START TIME: 1585659881000
    *** Script:     History END TIME: 1585659881000
    *** Script:        History INDEX: 1
    *** Script:       WF Activity ID: 2e33b949cb020200d71cb9c0c24c9c20
    *** Script:     WF Activity NAME: Change moves to Assess
    *** Script:   WF Activity DEF ID: d93a02ae0a0a0aa30077abad3fdac035
    *** Script: WF Activity DEF NAME: Wait for condition
    *** Script:     Transition Count: 1
    *** Script: Roll Back Originator: 
    *** Script:  Is Turnstile (loop): false
    *** Script:              Is Join: false
    AHR: debugDump END
    AHR: Turnstile? [false]
    AHR: Transition Count [1]


    AHR: Log String [HISTORY RECORD:  History ID:3e28c4b6dba52200a6a2b31be0b8f57e  History INDEX:2  History START TIME:1585659881000  History END TIME:1585659881000  WF Activity ID:6e33b949cb020200d71cb9c0c24c9c1f  WF Activity NAME:Requested  WF Activity DEF ID:50a78fa50a6a803f66d064255f7201a5  WF Activity DEF NAME:Approval Action  Transition Count: 1  Is Turnstile (loop) : false  Is Join: false]
    AHR: debugDump START
    *** Script: 
    *** Script: WF HISTORY RECORD:
    *** Script:           History ID: 3e28c4b6dba52200a6a2b31be0b8f57e
    *** Script:        History INDEX: 2
    *** Script:   History START TIME: 1585659881000
    *** Script:     History END TIME: 1585659881000
    *** Script:        History INDEX: 2
    *** Script:       WF Activity ID: 6e33b949cb020200d71cb9c0c24c9c1f
    *** Script:     WF Activity NAME: Requested
    *** Script:   WF Activity DEF ID: 50a78fa50a6a803f66d064255f7201a5
    *** Script: WF Activity DEF NAME: Approval Action
    *** Script:     Transition Count: 1
    *** Script: Roll Back Originator: 
    *** Script:  Is Turnstile (loop): false
    *** Script:              Is Join: false
    AHR: debugDump END
    AHR: Turnstile? [false]
    AHR: Transition Count [1]


    AHR: Log String [HISTORY RECORD:  History ID:0d38c4b6dba52200a6a2b31be0b8f5cc  History INDEX:3  History START TIME:1585659881000  History END TIME:1585659891000  WF Activity ID:2a33b949cb020200d71cb9c0c24c9c26  WF Activity NAME:Technical approvals  WF Activity DEF ID:354e911f0a0a029a00e6a0e6ad74206f  WF Activity DEF NAME:Approval - Group  Transition Count: 1  Is Turnstile (loop) : false  Is Join: false]
    AHR: debugDump START
    *** Script: 
    *** Script: WF HISTORY RECORD:
    *** Script:           History ID: 0d38c4b6dba52200a6a2b31be0b8f5cc
    *** Script:        History INDEX: 3
    *** Script:   History START TIME: 1585659881000
    *** Script:     History END TIME: 1585659891000
    *** Script:        History INDEX: 3
    *** Script:       WF Activity ID: 2a33b949cb020200d71cb9c0c24c9c26
    *** Script:     WF Activity NAME: Technical approvals
    *** Script:   WF Activity DEF ID: 354e911f0a0a029a00e6a0e6ad74206f
    *** Script: WF Activity DEF NAME: Approval - Group
    *** Script:     Transition Count: 1
    *** Script: Roll Back Originator: 
    *** Script:  Is Turnstile (loop): false
    *** Script:              Is Join: false
    AHR: debugDump END
    AHR: Turnstile? [false]
    AHR: Transition Count [1]


    AHR: Log String [HISTORY RECORD:  History ID:c538c4b6dba52200a6a2b31be0b8f5ce  History INDEX:4  History START TIME:1585659891000  History END TIME:1585659891000  WF Activity ID:6233b949cb020200d71cb9c0c24c9c5b  WF Activity NAME:Check if Change is "On hold"  WF Activity DEF ID:98f621ca0a0a0b5900f7c291f5e45a0e  WF Activity DEF NAME:If  Transition Count: 1  Is Turnstile (loop) : false  Is Join: false]
    AHR: debugDump START
    *** Script: 
    *** Script: WF HISTORY RECORD:
    *** Script:           History ID: c538c4b6dba52200a6a2b31be0b8f5ce
    *** Script:        History INDEX: 4
    *** Script:   History START TIME: 1585659891000
    *** Script:     History END TIME: 1585659891000
    *** Script:        History INDEX: 4
    *** Script:       WF Activity ID: 6233b949cb020200d71cb9c0c24c9c5b
    *** Script:     WF Activity NAME: Check if Change is "On hold"
    *** Script:   WF Activity DEF ID: 98f621ca0a0a0b5900f7c291f5e45a0e
    *** Script: WF Activity DEF NAME: If
    *** Script:     Transition Count: 1
    *** Script: Roll Back Originator: 
    *** Script:  Is Turnstile (loop): false
    *** Script:              Is Join: false
    AHR: debugDump END
    AHR: Turnstile? [false]
    AHR: Transition Count [1]


    AHR: Log String [HISTORY RECORD:  History ID:cd3808b6dba52200a6a2b31be0b8f501  History INDEX:5  History START TIME:1585659891000  History END TIME:1585659891000  WF Activity ID:e633b949cb020200d71cb9c0c24c9c20  WF Activity NAME:Move to Authorize  WF Activity DEF ID:1ca8d7cf0a0a0b265e9a000c2c08248c  WF Activity DEF NAME:Set Values  Transition Count: 1  Is Turnstile (loop) : false  Is Join: false]
    AHR: debugDump START
    *** Script: 
    *** Script: WF HISTORY RECORD:
    *** Script:           History ID: cd3808b6dba52200a6a2b31be0b8f501
    *** Script:        History INDEX: 5
    *** Script:   History START TIME: 1585659891000
    *** Script:     History END TIME: 1585659891000
    *** Script:        History INDEX: 5
    *** Script:       WF Activity ID: e633b949cb020200d71cb9c0c24c9c20
    *** Script:     WF Activity NAME: Move to Authorize
    *** Script:   WF Activity DEF ID: 1ca8d7cf0a0a0b265e9a000c2c08248c
    *** Script: WF Activity DEF NAME: Set Values
    *** Script:     Transition Count: 1
    *** Script: Roll Back Originator: 
    *** Script:  Is Turnstile (loop): false
    *** Script:              Is Join: false
    AHR: debugDump END
    AHR: Turnstile? [false]
    AHR: Transition Count [1]

## ActivityHistoryRecord - doesJoinContainActivity() {#ariaid-title6}

Testa o wf_activity sys_id de entrada, presumivelmente propagado neste registro de histórico. Em caso afirmativo, ele será testado para ver se é uma atividade que viria por meio desta associação.
{#r_AHR-doesJoinContainActivity__table_rky_kz2_st__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| Nenhum |   |   |
[Tabela 9. Parâmetros]

{#r_AHR-doesJoinContainActivity__table_rky_kz2_st} {#r_AHR-doesJoinContainActivity__table_sky_kz2_st__entry__2}

| Tipo | Descrição |
|-|-|
| Booliano | Verdadeiro, se for uma atividade que viria por meio desta associação. |
[Tabela 10. Retorna]

{#r_AHR-doesJoinContainActivity__table_sky_kz2_st}

## ActivityHistoryRecord - getLogString() {#ariaid-title7}

Retorna a cadeia de caracteres de log do registro do histórico.
{#r_AHR-getLogString__table_i5c_rwx_rt__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| Nenhum |   |   |
[Tabela 11. Parâmetros]

{#r_AHR-getLogString__table_i5c_rwx_rt} {#r_AHR-getLogString__table_j5c_rwx_rt__entry__2}

| Tipo | Descrição |
|-|-|
| Cadeia de caracteres | A cadeia de caracteres do log. |
[Tabela 12. Retorna]

{#r_AHR-getLogString__table_j5c_rwx_rt}  
O exemplo de código a seguir mostra como usar esse método. Ela usa os registros de histórico de fluxo de trabalho mais antigos de uma instância base.

    // These are associated with the Change Request - Normal workflow for CHG0000037.
    var wfhGR = new GlideRecord ('wf_history');
    wfhGR.addQuery('context.id', '41cdb152db252200a6a2b31be0b8f527');
    wfhGR.addQuery('context.table', 'change_request');
    wfhGR.orderBy ('activity_index');
    wfhGR.query();
    while (wfhGR.next())  {
      var script_name = 'AHR';
      //
      //  Acquire the execution history of the workflow's activities.
      //  Do this just once while processing the first activity.

      if(wfhGR.activity_index == 0) {
        var model = new WorkflowModelManager( wfhGR.context );
        model.getExecutedHistory();
      }

    //
    // Access a hash of ActivityHistoryRecord javascript objects,
    // hashed by the sys_id of the wf_history record.
    // There will be one ActivityHistoryRecord for each activity.

      var ActivityHistoryRecord = model.getActivityHistoryRecordById(wfhGR.sys_id);

    //
    // Use ActivityHistoryRecord methods to display selected values

      gs.log('Log String [' + ActivityHistoryRecord.getLogString() + ']', script_name);
      gs.log('debugDump START', script_name);
      ActivityHistoryRecord.debugDump();
      gs.log('debugDump END', script_name);
      gs.log('Turnstile?[' + ActivityHistoryRecord.isTurnstile() + ']', script_name);
      gs.log('Transition Count[' + ActivityHistoryRecord.getTransitionCount() + ']\n', script_name );
    }

Saída:

    [0:00:00.133] Script completed in scope global: script
    Script execution history and recovery available here
    AHR: Log String [HISTORY RECORD:  History ID:a228c4b6dba52200a6a2b31be0b8f57a  History INDEX:0  History START TIME:1585659881000  History END TIME:1585659881000  WF Activity ID:e233b949cb020200d71cb9c0c24c9c1f  WF Activity NAME:Begin  WF Activity DEF ID:c7a5e32c0a0a0b3a002377c24ed8ea76  WF Activity DEF NAME:Begin  Transition Count: 1  Is Turnstile (loop) : false  Is Join: false]
    AHR: debugDump START
    *** Script: 
    *** Script: WF HISTORY RECORD:
    *** Script:           History ID: a228c4b6dba52200a6a2b31be0b8f57a
    *** Script:        History INDEX: 0
    *** Script:   History START TIME: 1585659881000
    *** Script:     History END TIME: 1585659881000
    *** Script:        History INDEX: 0
    *** Script:       WF Activity ID: e233b949cb020200d71cb9c0c24c9c1f
    *** Script:     WF Activity NAME: Begin
    *** Script:   WF Activity DEF ID: c7a5e32c0a0a0b3a002377c24ed8ea76
    *** Script: WF Activity DEF NAME: Begin
    *** Script:     Transition Count: 1
    *** Script: Roll Back Originator: 
    *** Script:  Is Turnstile (loop): false
    *** Script:              Is Join: false
    AHR: debugDump END
    AHR: Turnstile? [false]
    AHR: Transition Count [1]


    AHR: Log String [HISTORY RECORD:  History ID:a228c4b6dba52200a6a2b31be0b8f57d  History INDEX:1  History START TIME:1585659881000  History END TIME:1585659881000  WF Activity ID:2e33b949cb020200d71cb9c0c24c9c20  WF Activity NAME:Change moves to Assess  WF Activity DEF ID:d93a02ae0a0a0aa30077abad3fdac035  WF Activity DEF NAME:Wait for condition  Transition Count: 1  Is Turnstile (loop) : false  Is Join: false]
    AHR: debugDump START
    *** Script: 
    *** Script: WF HISTORY RECORD:
    *** Script:           History ID: a228c4b6dba52200a6a2b31be0b8f57d
    *** Script:        History INDEX: 1
    *** Script:   History START TIME: 1585659881000
    *** Script:     History END TIME: 1585659881000
    *** Script:        History INDEX: 1
    *** Script:       WF Activity ID: 2e33b949cb020200d71cb9c0c24c9c20
    *** Script:     WF Activity NAME: Change moves to Assess
    *** Script:   WF Activity DEF ID: d93a02ae0a0a0aa30077abad3fdac035
    *** Script: WF Activity DEF NAME: Wait for condition
    *** Script:     Transition Count: 1
    *** Script: Roll Back Originator: 
    *** Script:  Is Turnstile (loop): false
    *** Script:              Is Join: false
    AHR: debugDump END
    AHR: Turnstile? [false]
    AHR: Transition Count [1]


    AHR: Log String [HISTORY RECORD:  History ID:3e28c4b6dba52200a6a2b31be0b8f57e  History INDEX:2  History START TIME:1585659881000  History END TIME:1585659881000  WF Activity ID:6e33b949cb020200d71cb9c0c24c9c1f  WF Activity NAME:Requested  WF Activity DEF ID:50a78fa50a6a803f66d064255f7201a5  WF Activity DEF NAME:Approval Action  Transition Count: 1  Is Turnstile (loop) : false  Is Join: false]
    AHR: debugDump START
    *** Script: 
    *** Script: WF HISTORY RECORD:
    *** Script:           History ID: 3e28c4b6dba52200a6a2b31be0b8f57e
    *** Script:        History INDEX: 2
    *** Script:   History START TIME: 1585659881000
    *** Script:     History END TIME: 1585659881000
    *** Script:        History INDEX: 2
    *** Script:       WF Activity ID: 6e33b949cb020200d71cb9c0c24c9c1f
    *** Script:     WF Activity NAME: Requested
    *** Script:   WF Activity DEF ID: 50a78fa50a6a803f66d064255f7201a5
    *** Script: WF Activity DEF NAME: Approval Action
    *** Script:     Transition Count: 1
    *** Script: Roll Back Originator: 
    *** Script:  Is Turnstile (loop): false
    *** Script:              Is Join: false
    AHR: debugDump END
    AHR: Turnstile? [false]
    AHR: Transition Count [1]


    AHR: Log String [HISTORY RECORD:  History ID:0d38c4b6dba52200a6a2b31be0b8f5cc  History INDEX:3  History START TIME:1585659881000  History END TIME:1585659891000  WF Activity ID:2a33b949cb020200d71cb9c0c24c9c26  WF Activity NAME:Technical approvals  WF Activity DEF ID:354e911f0a0a029a00e6a0e6ad74206f  WF Activity DEF NAME:Approval - Group  Transition Count: 1  Is Turnstile (loop) : false  Is Join: false]
    AHR: debugDump START
    *** Script: 
    *** Script: WF HISTORY RECORD:
    *** Script:           History ID: 0d38c4b6dba52200a6a2b31be0b8f5cc
    *** Script:        History INDEX: 3
    *** Script:   History START TIME: 1585659881000
    *** Script:     History END TIME: 1585659891000
    *** Script:        History INDEX: 3
    *** Script:       WF Activity ID: 2a33b949cb020200d71cb9c0c24c9c26
    *** Script:     WF Activity NAME: Technical approvals
    *** Script:   WF Activity DEF ID: 354e911f0a0a029a00e6a0e6ad74206f
    *** Script: WF Activity DEF NAME: Approval - Group
    *** Script:     Transition Count: 1
    *** Script: Roll Back Originator: 
    *** Script:  Is Turnstile (loop): false
    *** Script:              Is Join: false
    AHR: debugDump END
    AHR: Turnstile? [false]
    AHR: Transition Count [1]


    AHR: Log String [HISTORY RECORD:  History ID:c538c4b6dba52200a6a2b31be0b8f5ce  History INDEX:4  History START TIME:1585659891000  History END TIME:1585659891000  WF Activity ID:6233b949cb020200d71cb9c0c24c9c5b  WF Activity NAME:Check if Change is "On hold"  WF Activity DEF ID:98f621ca0a0a0b5900f7c291f5e45a0e  WF Activity DEF NAME:If  Transition Count: 1  Is Turnstile (loop) : false  Is Join: false]
    AHR: debugDump START
    *** Script: 
    *** Script: WF HISTORY RECORD:
    *** Script:           History ID: c538c4b6dba52200a6a2b31be0b8f5ce
    *** Script:        History INDEX: 4
    *** Script:   History START TIME: 1585659891000
    *** Script:     History END TIME: 1585659891000
    *** Script:        History INDEX: 4
    *** Script:       WF Activity ID: 6233b949cb020200d71cb9c0c24c9c5b
    *** Script:     WF Activity NAME: Check if Change is "On hold"
    *** Script:   WF Activity DEF ID: 98f621ca0a0a0b5900f7c291f5e45a0e
    *** Script: WF Activity DEF NAME: If
    *** Script:     Transition Count: 1
    *** Script: Roll Back Originator: 
    *** Script:  Is Turnstile (loop): false
    *** Script:              Is Join: false
    AHR: debugDump END
    AHR: Turnstile? [false]
    AHR: Transition Count [1]


    AHR: Log String [HISTORY RECORD:  History ID:cd3808b6dba52200a6a2b31be0b8f501  History INDEX:5  History START TIME:1585659891000  History END TIME:1585659891000  WF Activity ID:e633b949cb020200d71cb9c0c24c9c20  WF Activity NAME:Move to Authorize  WF Activity DEF ID:1ca8d7cf0a0a0b265e9a000c2c08248c  WF Activity DEF NAME:Set Values  Transition Count: 1  Is Turnstile (loop) : false  Is Join: false]
    AHR: debugDump START
    *** Script: 
    *** Script: WF HISTORY RECORD:
    *** Script:           History ID: cd3808b6dba52200a6a2b31be0b8f501
    *** Script:        History INDEX: 5
    *** Script:   History START TIME: 1585659891000
    *** Script:     History END TIME: 1585659891000
    *** Script:        History INDEX: 5
    *** Script:       WF Activity ID: e633b949cb020200d71cb9c0c24c9c20
    *** Script:     WF Activity NAME: Move to Authorize
    *** Script:   WF Activity DEF ID: 1ca8d7cf0a0a0b265e9a000c2c08248c
    *** Script: WF Activity DEF NAME: Set Values
    *** Script:     Transition Count: 1
    *** Script: Roll Back Originator: 
    *** Script:  Is Turnstile (loop): false
    *** Script:              Is Join: false
    AHR: debugDump END
    AHR: Turnstile? [false]
    AHR: Transition Count [1]

## ActivityHistoryRecord - getSatisfiedJoinActivities() {#ariaid-title8}

Retorna os sys_ids dos registros de histórico que fazem a transição para esta atividade Ingressar que já passou.
{#r_AHR-getSatisfiedJoinActivities__table_dft_bvx_rt__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| Nenhum |   |   |
[Tabela 13. Parâmetros]

{#r_AHR-getSatisfiedJoinActivities__table_dft_bvx_rt} {#r_AHR-getSatisfiedJoinActivities__table_eft_bvx_rt__entry__2}

| Tipo | Descrição |
|-|-|
| Matriz de cadeias de caracteres | Matriz de sys_ids dos registros de histórico que fazem a transição para esta atividade Ingressar. |
[Tabela 14. Retorna]

{#r_AHR-getSatisfiedJoinActivities__table_eft_bvx_rt}

## ActivityHistoryRecord - getTransitionCount() {#ariaid-title9}

Retorna a contagem de transições para esta atividade.
{#r_AHR-getTransitionCount__table_tsx_ttx_rt__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| Nenhum |   |   |
[Tabela 15. Parâmetros]

{#r_AHR-getTransitionCount__table_tsx_ttx_rt} {#r_AHR-getTransitionCount__table_usx_ttx_rt__entry__2}

| Tipo | Descrição |
|-|-|
| Número | Número de transições desta atividade. |
[Tabela 16. Retorna]

{#r_AHR-getTransitionCount__table_usx_ttx_rt}  
O exemplo de código a seguir mostra como usar esse método. Ela usa os registros de histórico de fluxo de trabalho mais antigos de uma instância base.

    // These are associated with the Change Request - Normal workflow for CHG0000037.
    var wfhGR = new GlideRecord ('wf_history');
    wfhGR.addQuery('context.id', '41cdb152db252200a6a2b31be0b8f527');
    wfhGR.addQuery('context.table', 'change_request');
    wfhGR.orderBy ('activity_index');
    wfhGR.query();
    while (wfhGR.next())  {
      var script_name = 'AHR';
      //
      //  Acquire the execution history of the workflow's activities.
      //  Do this just once while processing the first activity.

      if(wfhGR.activity_index == 0) {
        var model = new WorkflowModelManager( wfhGR.context );
        model.getExecutedHistory();
      }

    //
    // Access a hash of ActivityHistoryRecord javascript objects,
    // hashed by the sys_id of the wf_history record.
    // There will be one ActivityHistoryRecord for each activity.

      var ActivityHistoryRecord = model.getActivityHistoryRecordById(wfhGR.sys_id);

    //
    // Use ActivityHistoryRecord methods to display selected values

      gs.log('Log String [' + ActivityHistoryRecord.getLogString() + ']', script_name);
      gs.log('debugDump START', script_name);
      ActivityHistoryRecord.debugDump();
      gs.log('debugDump END', script_name);
      gs.log('Turnstile?[' + ActivityHistoryRecord.isTurnstile() + ']', script_name);
      gs.log('Transition Count[' + ActivityHistoryRecord.getTransitionCount() + ']\n', script_name );
    }

Saída:

    [0:00:00.133] Script completed in scope global: script
    Script execution history and recovery available here
    AHR: Log String [HISTORY RECORD:  History ID:a228c4b6dba52200a6a2b31be0b8f57a  History INDEX:0  History START TIME:1585659881000  History END TIME:1585659881000  WF Activity ID:e233b949cb020200d71cb9c0c24c9c1f  WF Activity NAME:Begin  WF Activity DEF ID:c7a5e32c0a0a0b3a002377c24ed8ea76  WF Activity DEF NAME:Begin  Transition Count: 1  Is Turnstile (loop) : false  Is Join: false]
    AHR: debugDump START
    *** Script: 
    *** Script: WF HISTORY RECORD:
    *** Script:           History ID: a228c4b6dba52200a6a2b31be0b8f57a
    *** Script:        History INDEX: 0
    *** Script:   History START TIME: 1585659881000
    *** Script:     History END TIME: 1585659881000
    *** Script:        History INDEX: 0
    *** Script:       WF Activity ID: e233b949cb020200d71cb9c0c24c9c1f
    *** Script:     WF Activity NAME: Begin
    *** Script:   WF Activity DEF ID: c7a5e32c0a0a0b3a002377c24ed8ea76
    *** Script: WF Activity DEF NAME: Begin
    *** Script:     Transition Count: 1
    *** Script: Roll Back Originator: 
    *** Script:  Is Turnstile (loop): false
    *** Script:              Is Join: false
    AHR: debugDump END
    AHR: Turnstile? [false]
    AHR: Transition Count [1]


    AHR: Log String [HISTORY RECORD:  History ID:a228c4b6dba52200a6a2b31be0b8f57d  History INDEX:1  History START TIME:1585659881000  History END TIME:1585659881000  WF Activity ID:2e33b949cb020200d71cb9c0c24c9c20  WF Activity NAME:Change moves to Assess  WF Activity DEF ID:d93a02ae0a0a0aa30077abad3fdac035  WF Activity DEF NAME:Wait for condition  Transition Count: 1  Is Turnstile (loop) : false  Is Join: false]
    AHR: debugDump START
    *** Script: 
    *** Script: WF HISTORY RECORD:
    *** Script:           History ID: a228c4b6dba52200a6a2b31be0b8f57d
    *** Script:        History INDEX: 1
    *** Script:   History START TIME: 1585659881000
    *** Script:     History END TIME: 1585659881000
    *** Script:        History INDEX: 1
    *** Script:       WF Activity ID: 2e33b949cb020200d71cb9c0c24c9c20
    *** Script:     WF Activity NAME: Change moves to Assess
    *** Script:   WF Activity DEF ID: d93a02ae0a0a0aa30077abad3fdac035
    *** Script: WF Activity DEF NAME: Wait for condition
    *** Script:     Transition Count: 1
    *** Script: Roll Back Originator: 
    *** Script:  Is Turnstile (loop): false
    *** Script:              Is Join: false
    AHR: debugDump END
    AHR: Turnstile? [false]
    AHR: Transition Count [1]


    AHR: Log String [HISTORY RECORD:  History ID:3e28c4b6dba52200a6a2b31be0b8f57e  History INDEX:2  History START TIME:1585659881000  History END TIME:1585659881000  WF Activity ID:6e33b949cb020200d71cb9c0c24c9c1f  WF Activity NAME:Requested  WF Activity DEF ID:50a78fa50a6a803f66d064255f7201a5  WF Activity DEF NAME:Approval Action  Transition Count: 1  Is Turnstile (loop) : false  Is Join: false]
    AHR: debugDump START
    *** Script: 
    *** Script: WF HISTORY RECORD:
    *** Script:           History ID: 3e28c4b6dba52200a6a2b31be0b8f57e
    *** Script:        History INDEX: 2
    *** Script:   History START TIME: 1585659881000
    *** Script:     History END TIME: 1585659881000
    *** Script:        History INDEX: 2
    *** Script:       WF Activity ID: 6e33b949cb020200d71cb9c0c24c9c1f
    *** Script:     WF Activity NAME: Requested
    *** Script:   WF Activity DEF ID: 50a78fa50a6a803f66d064255f7201a5
    *** Script: WF Activity DEF NAME: Approval Action
    *** Script:     Transition Count: 1
    *** Script: Roll Back Originator: 
    *** Script:  Is Turnstile (loop): false
    *** Script:              Is Join: false
    AHR: debugDump END
    AHR: Turnstile? [false]
    AHR: Transition Count [1]


    AHR: Log String [HISTORY RECORD:  History ID:0d38c4b6dba52200a6a2b31be0b8f5cc  History INDEX:3  History START TIME:1585659881000  History END TIME:1585659891000  WF Activity ID:2a33b949cb020200d71cb9c0c24c9c26  WF Activity NAME:Technical approvals  WF Activity DEF ID:354e911f0a0a029a00e6a0e6ad74206f  WF Activity DEF NAME:Approval - Group  Transition Count: 1  Is Turnstile (loop) : false  Is Join: false]
    AHR: debugDump START
    *** Script: 
    *** Script: WF HISTORY RECORD:
    *** Script:           History ID: 0d38c4b6dba52200a6a2b31be0b8f5cc
    *** Script:        History INDEX: 3
    *** Script:   History START TIME: 1585659881000
    *** Script:     History END TIME: 1585659891000
    *** Script:        History INDEX: 3
    *** Script:       WF Activity ID: 2a33b949cb020200d71cb9c0c24c9c26
    *** Script:     WF Activity NAME: Technical approvals
    *** Script:   WF Activity DEF ID: 354e911f0a0a029a00e6a0e6ad74206f
    *** Script: WF Activity DEF NAME: Approval - Group
    *** Script:     Transition Count: 1
    *** Script: Roll Back Originator: 
    *** Script:  Is Turnstile (loop): false
    *** Script:              Is Join: false
    AHR: debugDump END
    AHR: Turnstile? [false]
    AHR: Transition Count [1]


    AHR: Log String [HISTORY RECORD:  History ID:c538c4b6dba52200a6a2b31be0b8f5ce  History INDEX:4  History START TIME:1585659891000  History END TIME:1585659891000  WF Activity ID:6233b949cb020200d71cb9c0c24c9c5b  WF Activity NAME:Check if Change is "On hold"  WF Activity DEF ID:98f621ca0a0a0b5900f7c291f5e45a0e  WF Activity DEF NAME:If  Transition Count: 1  Is Turnstile (loop) : false  Is Join: false]
    AHR: debugDump START
    *** Script: 
    *** Script: WF HISTORY RECORD:
    *** Script:           History ID: c538c4b6dba52200a6a2b31be0b8f5ce
    *** Script:        History INDEX: 4
    *** Script:   History START TIME: 1585659891000
    *** Script:     History END TIME: 1585659891000
    *** Script:        History INDEX: 4
    *** Script:       WF Activity ID: 6233b949cb020200d71cb9c0c24c9c5b
    *** Script:     WF Activity NAME: Check if Change is "On hold"
    *** Script:   WF Activity DEF ID: 98f621ca0a0a0b5900f7c291f5e45a0e
    *** Script: WF Activity DEF NAME: If
    *** Script:     Transition Count: 1
    *** Script: Roll Back Originator: 
    *** Script:  Is Turnstile (loop): false
    *** Script:              Is Join: false
    AHR: debugDump END
    AHR: Turnstile? [false]
    AHR: Transition Count [1]


    AHR: Log String [HISTORY RECORD:  History ID:cd3808b6dba52200a6a2b31be0b8f501  History INDEX:5  History START TIME:1585659891000  History END TIME:1585659891000  WF Activity ID:e633b949cb020200d71cb9c0c24c9c20  WF Activity NAME:Move to Authorize  WF Activity DEF ID:1ca8d7cf0a0a0b265e9a000c2c08248c  WF Activity DEF NAME:Set Values  Transition Count: 1  Is Turnstile (loop) : false  Is Join: false]
    AHR: debugDump START
    *** Script: 
    *** Script: WF HISTORY RECORD:
    *** Script:           History ID: cd3808b6dba52200a6a2b31be0b8f501
    *** Script:        History INDEX: 5
    *** Script:   History START TIME: 1585659891000
    *** Script:     History END TIME: 1585659891000
    *** Script:        History INDEX: 5
    *** Script:       WF Activity ID: e633b949cb020200d71cb9c0c24c9c20
    *** Script:     WF Activity NAME: Move to Authorize
    *** Script:   WF Activity DEF ID: 1ca8d7cf0a0a0b265e9a000c2c08248c
    *** Script: WF Activity DEF NAME: Set Values
    *** Script:     Transition Count: 1
    *** Script: Roll Back Originator: 
    *** Script:  Is Turnstile (loop): false
    *** Script:              Is Join: false
    AHR: debugDump END
    AHR: Turnstile? [false]
    AHR: Transition Count [1]

## ActivityHistoryRecord - getUnSatisfiedJoinActivities( ) {#ariaid-title10}

Retorna os sys_ids dos registros de histórico que fazem a transição para esta atividade Ingressar que a associação ainda está aguardando.
{#r_AHR-getUnSatisfiedJoinActivities__table_fft_bvx_rt__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| Nenhum |   |   |
[Tabela 17. Parâmetros]

{#r_AHR-getUnSatisfiedJoinActivities__table_fft_bvx_rt} {#r_AHR-getUnSatisfiedJoinActivities__table_gft_bvx_rt__entry__2}

| Tipo | Descrição |
|-|-|
| Matriz de cadeias de caracteres | Matriz de sys_ids dos registros de histórico que fazem a transição para esta atividade Ingressar. |
[Tabela 18. Retorna]

{#r_AHR-getUnSatisfiedJoinActivities__table_gft_bvx_rt}

## ActivityHistoryRecord - isARollback() {#ariaid-title11}

Determina se esta atividade é uma das atividades de reversão.
{#r_AHR-isARollback__table_nsx_ttx_rt__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| Nenhum |   |   |
[Tabela 19. Parâmetros]

{#r_AHR-isARollback__table_nsx_ttx_rt} {#r_AHR-isARollback__table_osx_ttx_rt__entry__2}

| Tipo | Descrição |
|-|-|
| Booliano | Sinalizador que indica se a atividade é uma das atividades de reversão. Valores válidos: * verdadeiro: a atividade é uma reversão. * falso: a atividade não é uma reversão. {#r_AHR-isARollback__ul_s14_2cj_ntb} |
[Tabela 20. Retorna]

{#r_AHR-isARollback__table_osx_ttx_rt}

## ActivityHistoryRecord - isIdADestination(cadeia de caracteres ahrSys_id) {#ariaid-title12}

Determina se o sys_id passado é um destino de qualquer uma das transições associadas a esta instância de um ActivityHistoryRecord.
{#r_AHR-isIdADestination_S__table_e5c_rwx_rt__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| ahrSys_id | Cadeia de caracteres | sys_id do histórico de atividades da tabela wf_history. |
[Tabela 21. Parâmetros]

{#r_AHR-isIdADestination_S__table_e5c_rwx_rt} {#r_AHR-isIdADestination_S__table_f5c_rwx_rt__entry__2}

| Tipo | Descrição |
|-|-|
| Booliano | Verdadeiro, se o sys_id passado for um destino de qualquer uma das transições. |
[Tabela 22. Retorna]

{#r_AHR-isIdADestination_S__table_f5c_rwx_rt}

## ActivityHistoryRecord - isJoin() {#ariaid-title13}

Determina se esta atividade é uma associação.
{#r_AHR-isJoin__table_jsx_ttx_rt__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| Nenhum |   |   |
[Tabela 23. Parâmetros]

{#r_AHR-isJoin__table_jsx_ttx_rt} {#r_AHR-isJoin__table_ksx_ttx_rt__entry__2}

| Tipo | Descrição |
|-|-|
| Booliano | Verdadeiro, se a atividade for "Ingressar". |
[Tabela 24. Retorna]

{#r_AHR-isJoin__table_ksx_ttx_rt}

## ActivityHistoryRecord - isJoinSatisfied() {#ariaid-title14}

Examina o valor do chegarState.
Chamado durante a reprodução quando a transição para o sys_id de uma transição aponta para uma atividade que é uma associação.
{#r_AHR-isJoinSatisfied__table_hft_bvx_rt__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| Nenhum |   |   |
[Tabela 25. Parâmetros]

{#r_AHR-isJoinSatisfied__table_hft_bvx_rt} {#r_AHR-isJoinSatisfied__table_ift_bvx_rt__entry__2}

| Tipo | Descrição |
|-|-|
| Booliano | Verdadeiro, se a associação for atendida. |
[Tabela 26. Retorna]

{#r_AHR-isJoinSatisfied__table_ift_bvx_rt}

## ActivityHistoryRecord - isJoinWaitingForActivity (cadeia de caracteres activityIds) {#ariaid-title15}

Testa o wf_activity sys_id de entrada, presumivelmente propagado neste registro de histórico.
Se estiver, ele será testado para ver se já passou; se tiver, então esta associação não está aguardando esta atividade e deve procurar mais descendentemente aquela que está aguardando. Este teste é chamado em sequência conforme o modelo é percorrido, portanto, ele presume nas instâncias de reversões e loops. Se o sys_id estiver aqui e o sinalizador for verdadeiro, este Ingresso em espera estará mais acima na sequência. Este tipo de verificação é necessário, pois os registros de histórico de associações são removidos da tabela de históricos e, portanto, é possível que um registro esteja na tabela de transição sem correspondência na tabela de histórico correspondente, mas ainda é uma correspondência apropriada para um instância executada anteriormente da mesma associação.
{#r_AHR-isJoinWaitingForActivity_SA__table_bft_bvx_rt__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| IDs de atividades | Matriz de cadeias de caracteres | Matriz de wf_activity.sys_ids que se encaminha para o ingresso. |
[Tabela 27. Parâmetros]

{#r_AHR-isJoinWaitingForActivity_SA__table_bft_bvx_rt} {#r_AHR-isJoinWaitingForActivity_SA__table_cft_bvx_rt__entry__2}

| Tipo | Descrição |
|-|-|
| Booliano | Verdadeiro, se a atividade já tiver sido concluída. |
[Tabela 28. Retorna]

{#r_AHR-isJoinWaitingForActivity_SA__table_cft_bvx_rt}

## ActivityHistoryRecord - isRolledBack() {#ariaid-title16}

Determina se este fluxo de trabalho foi revertido.
{#r_AHR-isRolledBack__table_rsx_ttx_rt__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| Nenhum |   |   |
[Tabela 29. Parâmetros]

{#r_AHR-isRolledBack__table_rsx_ttx_rt} {#r_AHR-isRolledBack__table_ssx_ttx_rt__entry__2}

| Tipo | Descrição |
|-|-|
| Booliano | Verdadeiro, se este fluxo de trabalho foi revertido. |
[Tabela 30. Retorna]

{#r_AHR-isRolledBack__table_ssx_ttx_rt}

## ActivityHistoryRecord - isTornile( ) {#ariaid-title17}

Determina se a atividade atual é uma catraca.
{#r_AHR-isTurnstile__table_lsx_ttx_rt__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| Nenhum |   |   |
[Tabela 31. Parâmetros]

{#r_AHR-isTurnstile__table_lsx_ttx_rt} {#r_AHR-isTurnstile__table_msx_ttx_rt__entry__2}

| Tipo | Descrição |
|-|-|
| Booliano | Sinalizador que indica se a atividade é uma [catraca](https://www.servicenow.com/docs/access?context=r_TurnstileActivity&version=xanadu&pubname=xanadu-build-workflows&ft:locale=en-US). Valores válidos: * verdadeiro: a atividade é uma catraca. * falso: a atividade não é uma catraca. {#r_AHR-isTurnstile__ul_s14_2cj_ntb} |
[Tabela 32. Retorna]

{#r_AHR-isTurnstile__table_msx_ttx_rt}  
O exemplo de código a seguir mostra como usar este método para detectar uma catraca. Ele se baseia no fluxo de trabalho encontrado na [atividade de fluxo de trabalho Reverter para](https://www.servicenow.com/docs/access?context=r_RollbackTo&version=xanadu&pubname=xanadu-build-workflows&ft:locale=en-US). Você pode confirmar a saída deste script examinando a guia Histórico de atividades de fluxo de trabalho ao exibir o formulário Mostrar fluxo de trabalho nos itens solicitados (RITM).

    var wfhGR = new GlideRecord ('wf_history');
    wfhGR.addQuery ('context.id','cc45480d2f9b8110b99eb2e72799b6f9'); // sys_id of the RITM
    wfhGR.addQuery ('context.table','sc_req_item'); // Table for the RITM
    wfhGR.orderBy  ('activity_index');
    wfhGR.query();
    var turnstile_count = 0;
    while (wfhGR.next())  {
      var script_name = 'AHR';
      //
      // Acquire the execution history of the workflow's activities.
      // Do this just once while processing the first activity.

      if(wfhGR.activity_index == 0) {
        var model = new WorkflowModelManager(wfhGR.context);
        model.getExecutedHistory();
      }

      //
      // Access a hash of ActivityHistoryRecord javascript objects,
      // hashed by the sys_id of the wf_history record.
      // There will be one ActivityHistoryRecord for each activity.

      var ActivityHistoryRecord = model.getActivityHistoryRecordById(wfhGR.sys_id);

      //
      // Use ActivityHistoryRecord methods to display turnstile activities.

      if(ActivityHistoryRecord.isTurnstile()) {
        var log_string = ActivityHistoryRecord.getLogString();
        var name_start = log_string.indexOf('WF Activity NAME:');
        var name_end = log_string.indexOf('WF Activity DEF ID:');
        var name = log_string.substring(name_start, name_end).trim();
        gs.log(name + ' Activity ' + wfhGR.activity_index + ' is a turnstile.', script_name);
        turnstile_count++;
      } 
    } 
    gs.log ('Turnstile activities detected: ' + turnstile_count, script_name);

Saída:

    AHR: WF Activity NAME:Prevent infinite loops Activity 8 is a turnstile.
    AHR: WF Activity NAME:Prevent infinite loops Activity 13 is a turnstile.
    AHR: WF Activity NAME:Prevent infinite loops Activity 18 is a turnstile.
    AHR: WF Activity NAME:Prevent infinite loops Activity 23 is a turnstile.
    AHR: Turnstile activities detected: 4


