---
sourceDocument: Zurich IT Service Management
sourceDocumentLink: https://www.servicenow.com/docs/r/pt-BR/zurich/it-service-management

 Release :

    - zurich

ft:locale :

    - pt-BR

ft:publication_title :

    - Zurich IT Service Management

ft:clusterId :

    - itsm

bundleId :

    - itsm

workflow :

    - Technology


---

# Adicionar um estado ao modelo de estado

# Adicionar um estado ao modelo de estado {#ariaid-title1}

* Versão de lançamento: Zurich
* 
* Atualizado 31 de jul. de 2025
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 5 min. de leitura

Você pode adicionar um novo estado ao modelo de estado existente para diferentes tipos de mudança com base nos requisitos da sua organização.

## Antes de Iniciar

Função necessária: script_include_admin, ui_policy_admin, ui_action_admin ou admin

## Por Que e Quando Desempenhar Esta Tarefa

O plug-in do [modelo de estado](https://www.servicenow.com/docs/18iGJUC5SAI4y4raWiq7ZA "É possível ativar o plug-in do Gestão de mudanças - State Model (com.snc.change_management.state_model) se você tiver a função de administrador. Este plug-in inclui dados de demonstração e ativa plug-ins relacionados, caso ainda não estejam ativos.") é ativado por padrão. Para obter mais informações sobre os estados do sistema de base para solicitações de mudança, consulte [Modelo de estado e transições](https://www.servicenow.com/docs/aEbRBjLxfB5LERdzg9m2NQ "O Gestão de mudanças oferece um modelo de estado para mover e rastrear solicitações de mudança em vários estados.").

## Procedimento

1. Navegar até TudoMudançaCriar novo(a) e conclua as etapas a seguir para adicionar uma opção à lista de seleção.
   1. Clique com o botão direito do mouse no campo Estado e clique em Configurar dicionário.
   2. Na lista relacionada Escolhas, execute um filtro para \[Table\] \[is\] \[change_request.
   3. Clique em Novo e adicione o novo estado com as seguintes informações.  
      * Tabela: solicitar mudança \[change_request\]
      * Rótulo: nome do seu novo estado
      * Valor: valor numérico que ainda não foi atribuído a uma opção de estado existente
      * Sequência: número correspondente ao local para que ele apareça na lista de estados. Se você atribuir a ele o mesmo número de sequência de outra opção, ele aparecerá abaixo da outra opção.
      {#t_AddANewState__ul_fwz_ncm_5y}
   4. Clique em Enviar.
   {#t_AddANewState__substeps_sbc_1cm_5y}
2. Navegar até Definição do sistemaInclusões de script.  
   Os registros de inclusão de script que contêm SNC no nome são somente leitura. Ao concluir as etapas a seguir, certifique-se de selecionar o script include correto para modificação. Por exemplo, modifique ChangeRequestStateHandler não ChangeRequestStateHandlerSNC.  
   Nota:  
   As inclusões de script estendido (sem SNC) incluem todas as funcionalidades de suas contrapartes SNC. Se você modificar uma inclusão de script de base (anexada com SNC), ela não será mais atualizada durante os upgrades do sistema.
3. Abra o script ChangeRequestStateHandler para executar as seguintes edições.  
   * Atualize a seção de constantes do manipulador de estado no início deste include de script para incluir valores para o estado recém-adicionado. Por exemplo:

         ChangeRequestStateHandler.MY_NEW_STATE = "mynewstate";

   * Atualize o mapa STATE_NAMES no final da função de inicialização para incluir o valor numérico do estado recém-adicionado. Por exemplo:

         this.STATE_NAMES["-6"] = ChangeRequestStateHandler.MY_NEW_STATE;

     Nota:  
     O mapa STATE_NAMES fornece um mapeamento entre os valores numéricos armazenados no campo Estado em uma solicitação de mudança com um nome memorável. Este mapeamento permite que o nome memorável seja usado nas inclusões de script do modelo de estado.
   {#t_AddANewState__ul_t4k_yhq_nv}
4. Edite o script include apropriado para incorporar os novos estados no modelo para os tipos de solicitação de mudança relevantes.  
   Cada tipo de solicitação de mudança tem um script include correspondente chamado ChangeRequestStateModel_\<type\>, onde \<type\> é o valor do tipo de solicitação de mudança. Por exemplo, ChangeRequestStateModel_normal define o modelo de estado para solicitações de mudança com um tipo de normal.  
   Cada modelo de estado de Inclusões de script define objetos que especificam as informações a seguir.
   * Quais estados estão disponíveis.
   * O próximo estado ou estados para cada estado disponível.
   * Funções para cada transição de estado para decidir se essa transição está disponível `(canMove)` com uma função a ser executada como parte da mudança para esse estado `(mover)`.
   {#t_AddANewState__ul_lk4_vkq_nv}

   O exemplo que se segue é a partir do ChangeRequestStateModel_normal roteiro incluem.
5. Crie uma ação de IU para fornecer um botão para avançar a solicitação de mudança para o novo estado.
   1. Use Inserir e Permanecer para fazer uma cópia de uma das ações de IU padrão, como implementar.
   2. Atualize os seguintes campos no formulário.  
      {#t_AddANewState__table_rgn_wmq_nv__entry__2}

      | Nome do campo | Atualizar |
      |-|-|
      | Nome | Atualize para corresponder ao nome do novo estado. |
      | Nome da ação | Substitua o estado no final do nome pelo novo estado. |
      | Dica | Atualize o texto para se referir ao novo estado. |
      | Onclick | Renomeie a função para corresponder ao novo estado. |
      | Condição | Atualize a chamada para a função `isNext` com o novo estado. |
      | Script | * Atualize o nome da função para corresponder ao especificado no campo Onclick. * Atualize a linha que começa com `ga.addParam ("sysparm_state_name", ...` para inserir o nome do novo estado como o segundo parâmetro da função `addParam.`. * Atualizar a linha que começa com `gsftSubmit` e modificar o terceiro parâmetro desta chamada de função para corresponder ao valor inserido no campo Nome da ação.. {#t_AddANewState__ul_l4y_hnq_nv} |
      [ ]

      {#t_AddANewState__table_rgn_wmq_nv}

      O exemplo a seguir usa a ação de IU Implementar para mostrar os valores a serem atualizados.  
      O script include ChangeRequestStateHandlercontém duas funções que são usadas para determinar se uma ação de IU é exibida com base no estado atual da solicitação de mudança.
      * `isNext (stateName)`: esta função verifica somente se o stateName passado como um parâmetro está disponível como um próximo estado para o estado atual da solicitação de mudança.
      * `canMoveTo (stateName)`: esta função executa a mesma verificação que a função isNext . No entanto, ele também verifica o resultado da chamada da função canMoveTo apropriada para a transição do estado atual para o stateName passado como um parâmetro. Esta função será usada se houver verificações adicionais nas funções canMove como verificar se um campo contém um valor específico.
      {#t_AddANewState__ul_bcm_r4q_nv}
   {#t_AddANewState__substeps_afc_lmq_nv}
6. Conclua as etapas a seguir para atualizar a configuração do fluxo do processo para incorporar o novo estado de mudança.  
   O fluxo do processo é exibido na parte superior do formulário de Change Request e está configurado em vários registros de fluxo de processo.  
   1. Navegar até IU do SistemaFluxo do Processo módulo e filtro para \[Tabela\] \[is\] \[change_request\] .
   2. Abra um registro e use Inserir e Permanecer para fazer uma cópia.
   3. Atualize os seguintes campos no formulário.  
      {#t_AddANewState__table_t33_tpq_nv__entry__2}

      | Nome do campo | Atualizar |
      |-|-|
      | Nome | Atualize para corresponder ao nome do novo estado. |
      | Rótulo | Atualize para corresponder ao nome do novo estado. Este valor está incluído no fluxo do processo na parte superior do formulário de Solicitação de Mudança. |
      | Ordem | Atualize este número para que o novo estado esteja na sequência correta com os registros de fluxo de processo existentes para outros estados. |
      | Condição | Atualize o filtro para corresponder ao novo estado. |
      [ ]

      {#t_AddANewState__table_t33_tpq_nv}
   4. Clique em Atualizar.
   {#t_AddANewState__substeps_bcd_jgw_ht}
{#t_AddANewState__steps_wgg_xbn_5y}

## O que Fazer Depois

Para garantir que o novo estado funcione conforme o esperado, revise os fluxos de trabalho padrão. Adicione o novo estado ao fluxo de trabalho conforme necessário.

## Revisar fluxos de trabalho padrão {#ariaid-title2}

Qualquer modificação no modelo de estado pode afetar os fluxos de trabalho padrão para solicitações de mudança.

### Antes de Iniciar

Função necessária: administrador

### Por Que e Quando Desempenhar Esta Tarefa

Cada tipo de mudança tem um fluxo de trabalho padrão. Para garantir que qualquer mudança no modelo de estado não tenha afetado negativamente os fluxos de trabalho, você deve revisar cada um dos fluxos de trabalho padrão.

### Procedimento

Revise o fluxo de trabalho para cada Inclusão de script `ChangeRequestStateModel_<type>` que foi modificada.  
{#t_ReviewDefaultWorkflows__table_kbw_rbr_nv__entry__3}

| Tipo de mudança | Nome da inclusão de script | Fluxo de trabalho |
|-|-|-|
| Normal | ChangeRequestStateModel_normal | Solicitar de mudança |
| Padrão | ChangeRequestStateModel_standard | Solicitação de Mudança - Padrão |
| Emergência | ChangeRequestStateModel_emergency | Solicitação de Mudança - Emergência. |
[Tabela 1. Fluxos de trabalho padrão de solicitação de mudança]

{#t_ReviewDefaultWorkflows__table_kbw_rbr_nv}

As modificações no fluxo de trabalho padrão para cada tipo de mudança dependem de onde o novo estado é adicionado nas sequências de estados.

