---
sourceDocument: Capacidades da Now Platform da Yokohama
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/yokohama/servicenow-platform

 Release :

    - yokohama

ft:locale :

    - pt-BR

ft:publication_title :

    - Capacidades da Now Platform da Yokohama

ft:clusterId :

    - platcap

bundleId :

    - platcap

workflow :

    - Platform


---

# Aprovação - Agrupar atividade de fluxo de trabalho

# Aprovação - Agrupar atividade de fluxo de trabalho {#ariaid-title1}

* Versão de lançamento: Yokohama
* 
* Atualizado 30 de jan. de 2025
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 9 min. de leitura

A atividade Aprovação - Agrupar cria registros de aprovação para cada membro de um grupo especificado.{#r_ApprovalGroup__wf-approval-group-shortdesc}
Nota:  
Esta atividade só estará disponível quando o fluxo de trabalho for executado em uma tabela que estenda a tarefa.

A aprovação do grupo é aprovada ou rejeitada com base nas aprovações do usuário, de acordo com a lógica especificada no campo Aguardar.

## Resultados

O designer de fluxo de trabalho pode atribuir um valor de resultado usando activity.result de dentro de um campo de script da atividade. Por padrão, o valor do resultado é a disposição de aprovação final. Esta disposição depende das ações de aprovação executadas pelos aprovadores e das condições de aprovação especificadas nos campos Aguardar ou Quando alguém rejeitar. Os valores de resultado possíveis são:

* Aprovada
* Rejeitado
* Excluídos
* Cancelado
{#r_ApprovalGroup__ul_hpb_lnw_w4}

## Variáveis de entrada

As variáveis de entrada determinam o comportamento inicial da atividade.
{#r_ApprovalGroup__table_xql_rnw_w4__entry__2}

| Campo | Descrição |
|-|-|
| Aprovação - Agrupar quando Especifique quando esta atividade gera um registro de aprovação de grupo. ||
| Condição | Condições que, se atendidas, farão com que a aprovação do grupo seja gerada. Se as condições não forem atendidas, a aprovação será ignorada. |
| Aprovação - Aprovadores de grupo Especifique os grupos cuja aprovação será solicitada. ||
| Grupos | Os grupos cuja aprovação será solicitada. Para editar este campo, clique no ícone de cadeado. Para selecionar grupos específicos por nome, use a lista de pesquisa. Para selecionar grupos de valores de campos no registro atual em tempo de execução, clique no ícone de árvore. Cada membro do grupo receberá um registro de aprovação individual. Se nenhum grupo for selecionado, a atividade definirá automaticamente a aprovação como Aprovado. |
| Aprovação - Condição do grupo Especifique como a atividade decidirá aprovar ou rejeitar a aprovação do grupo, com base nas respostas de membros individuais do grupo. ||
| Aguardar | Uma opção entre lógicas de aprovação diferentes para determinar que aprovações ou rejeições individuais resultam na aprovação ou na rejeição da aprovação da atividade. As opções são: * Uma aprovação de cada grupo: qualquer usuário de cada grupo pode aprovar e a primeira aprovação de cada grupo faz com que a atividade seja concluída com um resultado de aprovado (veja abaixo como uma rejeição é tratada). * Uma aprovação de qualquer grupo: qualquer usuário de qualquer grupo pode aprovar e a primeira aprovação de qualquer grupo faz com que a atividade seja concluída com um resultado de aprovado. * Uma aprovação todos em todos os grupos: todos os usuários de todos os grupos devem aprovar para fazer com que a atividade seja concluída com um resultado de aprovado (veja abaixo como uma rejeição é tratada). * Primeira resposta de cada grupo: a primeira aprovação ou rejeição de qualquer usuário em cada grupo é usada para indicar o estado da aprovação do grupo (veja abaixo como uma rejeição é tratada). Indica o que acontece quando qualquer usuário rejeita sua solicitação de aprovação. As opções são: * Rejeitar a aprovação: conclua imediatamente a atividade com o resultado de rejeitado. * Primeira resposta de qualquer grupo: A primeira aprovação ou rejeição de qualquer usuário em qualquer grupo faz com que a atividade seja concluída com um resultado de aprovado ou rejeitado. * Condição baseada no script: sempre que um usuário aprova ou rejeita, o Script de aprovação é chamado para determinar se a atividade deve ser concluída. {#r_ApprovalGroup__ul_zzd_14w_w4} |
| Script de aprovação Somente aparece quando Aguardar estiver definido como <kbd class="ph userinput">Condição com base no script</kbd>. | Se a variável Aguardar estiver definida como Condição baseada em script, este script será chamado para determinar como lidar com uma aprovação ou rejeição. O script precisa definir a variável <var class="keyword varname">resposta</var> como aprovada ou rejeitada para indicar o status de aprovação geral para esta aprovação. Este script é responsável por definir o estado de aprovação para cada grupo que faz parte desta atividade de aprovação antes de retornar o estado de aprovação geral para todos os grupos. Quando chamadas, as seguintes variáveis estão disponíveis para o script para todos os grupos que fazem parte desta atividade de aprovação: counts.total = total number of groups that are part of this approval counts.approved = # of groups that approved so far counts.rejected = # of groups that rejected so far counts.requested = # of groups that are pending approval counts.not_requested = # of groups that are not pending approval counts.not_required = # of groups that approval is not required E para cada grupo: groups[group_id].total = total number of users that are part of this group's approval groups[group_id].approved = # of users that approved so far groups[group_id].rejected = # of users that rejected so far groups[group_id].requested = # of users that are pending approval groups[group_id].not_requested = # of users that are not pending approval groups[group_id].not_required = # of users that approval is not required groups[group_id].approvalIDs[state] = array of user ids that are at the specified approval state Observação: iterar os grupos usando: for (var id in groups) { var group = groups[id]; ... group.total ... } Observação: obtenha o objeto do grupo usando o seguinte código (para obter coisas como o nome do grupo que está sendo iterado): var objGroup = fncGetGroupObj(id); var strGroupName = objGroup.name; function fncGetGroupObj(sidGroupApproval) { var objGroupApproval = new GlideRecord('sysapproval_group'); objGroupApproval.get(sidGroupApproval); var objGroup = new GlideRecord('sys_user_group'); objGroup.get(objGroupApproval.assignment_group.sys_id); return objGroup; } Os scripts de aprovação também permitem cálculos. Por exemplo, se apenas metade das aprovações forem necessárias: if (counts.approved/counts.total > .49) { answer = 'approved'; } else if (counts.rejected/counts.total > .50) { answer = 'rejected'; } |
| Quando alguém rejeitar | Uma opção entre lógicas de aprovação diferentes para determinar que rejeições individuais resultam na rejeição da aprovação da atividade. As opções são: * Rejeitar a aprovação: conclua imediatamente a atividade com o resultado de rejeitado. * Aguarde outras respostas antes de decidir: aguarde até obtermos outras respostas antes de tomar uma decisão de aprovação ou rejeição. Isso permite que os usuários mudem de ideia até que uma decisão seja tomada. {#r_ApprovalGroup__ul_k4b_gpw_w4} Nota: Se Aguardar estiver definido como Qualquer um para aprovar, uma única aprovação fará com que a atividade seja concluída com um resultado de aprovado, mesmo se um ou mais usuários rejeitarem. |
| Aprovação - Programação de grupo Especifique como o fluxo de trabalho calcula a data de início esperada e a data de vencimento do registro de aprovação. Depois que você tiver selecionado um valor para "Data de vencimento baseada em" e "Programação baseada em", os campos apropriados serão exibidos. ||
| Prazo baseado em | Selecione como o fluxo de trabalho determina a duração, a data de vencimento e a programação da tarefa. * Duração especificada pelo usuário: a duração é baseada em um valor especificado pelo usuário. * Uma duração relativa: a duração é calculada a partir de uma duração relativa (como Fim do próximo dia útil). * Um campo de data/hora ou duração: a duração é baseada no valor de um campo no registro atual. * Script: a duração é retornada por um script. {#r_ApprovalGroup__ul_yxc_4mc_sp} |
| Duração Somente aparece quando a data de vencimento com base em está definida como <kbd class="ph userinput">uma duração especificada pelo usuário</kbd> | O número específico de dias e horas. |
| Duração relativa Somente aparece quando a data de vencimento com base em está definida como <kbd class="ph userinput">uma duração relativa</kbd> | O número geral e a duração dos dias úteis. |
| Campo de prazo Somente aparece quando a data de vencimento com base em está definida como <kbd class="ph userinput">um campo de data/hora ou duração</kbd> | O campo de data/hora ou duração |
| Script de prazo Somente aparece quando a data de vencimento com base em está definida como <kbd class="ph userinput">Script</kbd> | O script que define "resposta" ao número de segundos para a duração. |
| Programação baseada em | A programação básica que o temporizador usa para contar as horas de trabalho. Se uma programação for especificada, a duração só será considerada para os horários especificados na programação. Por exemplo, se a duração for de 2 horas e o fluxo de trabalho começar às 16h em uma programação que vai das 8h às 17h, ele terminará às 9h do dia seguinte. As opções são: * Programação deste fluxo de trabalho: a programação usa data e hora do contexto do fluxo de trabalho e um valor opcional defuso horário com base em. * Uma programação específica: a programação usa uma programação predefinida e um valor opcional de fuso horário com base em. * Um campo programação: a programação usa um valor de uma tabela e um valor fuso horário opcional com base em. {#r_ApprovalGroup__ul_wys_qhd_lq} |
| Programação Aparece somente quando Programação baseada em é definida como <kbd class="ph userinput">uma programação específica</kbd>. | A Programação predefinida de uma lista. |
| Campo de programação Aparece somente quando Programação baseada em é definida como<kbd class="ph userinput">um campo de programação</kbd>. | Um campo de data e hora ou duração para a programação, que está associado à tabela. Os campos válidos aparecem em azul na caixa de diálogo Selecionar o elemento em uma árvore. |
| Fuso horário baseado em | O fuso horário para o cálculo da duração. O fuso horário pode ser baseado em * Sem fuso horário: padrão. O fluxo de trabalho usa o fuso horário GMT. * Um fuso horário específico: um fuso horário específico que você escolhe em uma lista de seleção. * Um campo de fuso horário: um campo de fuso horário para rastrear a duração de um campo no formulário. {#r_ApprovalGroup__ul_hmv_vhd_lq} |
| Fuso horário Aparece somente quando o Fuso horário baseado em é definido como <kbd class="ph userinput">um fuso horário específico</kbd>. . | Selecione o fuso horário desejado na lista de seleção. |
| Campo de fuso horário Aparece somente quando o Fuso horário baseado em é definido como <kbd class="ph userinput">um campo de fuso horário</kbd>. | Um campo de data e hora ou duração para a programação, que está associado à tabela. Os campos válidos aparecem em azul na caixa de diálogo Selecionar o elemento em uma árvore. |
| Aprovação - Avançado Se desejar, grave um script para determinar usuários adicionais de quem serão solicitadas aprovações. ||
| Avançado | Marque esta caixa de seleção para gravar um script para determinar usuários adicionais de quem serão solicitadas aprovações. Use o Script de grupos adicionais para personalizar as aprovações de grupo. |
| Script de grupos adicionais | Se a caixa de seleção Avançado estiver marcada, este script será chamado para determinar a criação de qualquer aprovação de grupo adicional. O script precisa definir a variável <var class="keyword varname">resposta</var> para uma lista separada por vírgulas de IDs de grupo ou uma matriz de IDs de grupo para adicionar como grupos de aprovadores. Por exemplo: answer = []; answer.push('id1'); answer.push('id2'); |
[Tabela 1. Aprovação - Agrupar variáveis de entrada de atividade]

{#r_ApprovalGroup__table_xql_rnw_w4}

## Condições

As condições a seguir determinam qual transição será executada após esta atividade.  
Nota:  
As atividades de aprovação são executadas como o usuário cujas ações correspondem às condições de aprovação ou rejeição que o fluxo de trabalho estava aguardando e avança o fluxo de trabalho.
{#r_ApprovalGroup__table_zgj_ttw_w4__entry__2}

| Condição | Descrição |
|-|-|
| Aprovada | Os usuários dos grupos aprovaram a solicitação com base nas regras Aguardar. |
| Rejeitado | Os usuários dos grupos rejeitaram a solicitação com base nas regras Aguardar. |
| Erro | O evento ou condição que gera um erro. |
| Ignorado | O evento ou condição que permite uma aprovação ignorada. |
[Tabela 2. Aprovação - Condições de atividade de grupo]

{#r_ApprovalGroup__table_zgj_ttw_w4}

## Estados

O estado da atividade informa ao mecanismo de fluxo de trabalho o que fazer com a atividade.{#r_ApprovalGroup__table_jr2_15w_w4__entry__2}

| Estado | Descrição |
|-|-|
| Executando | O mecanismo de fluxo de trabalho inicia a função de execução da atividade. |
| Aguardando | O mecanismo de fluxo de trabalho ignora a atividade até que um evento específico para reiniciar a atividade seja acionado. |
| Terminado | A execução da atividade foi concluída. Veja o valor do resultado para o resultado da atividade. |
| Cancelado | Esta atividade, ou o fluxo de trabalho que contém esta atividade, foi cancelada. |
| Erro | Ocorreu um erro de JavaScript. Revise os logs para obter detalhes do erro. |
[Tabela 3. Aprovação - Estados de atividade de grupo]

{#r_ApprovalGroup__table_jr2_15w_w4}

