---
sourceDocument: Yokohama Administração da Now Platform
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/yokohama/platform-administration

 Release :

    - yokohama

ft:locale :

    - pt-BR

ft:publication_title :

    - Yokohama Administração da Now Platform

ft:clusterId :

    - platadm

bundleId :

    - platadm

workflow :

    - Platform


---

# Restringe o campo Atribuído a por função

# Restringe o campo Atribuído a por função {#ariaid-title1}

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

Este exemplo mostra como usar JavaScript e uma regra de negócio para restringir o incidente Atribuído a. opções de campo somente para os usuários com a função itil_admin.

## Antes de Iniciar

Função necessária: personalize_dictionary ou administrador

## Por Que e Quando Desempenhar Esta Tarefa

Você também pode mudar itil_admin para qualquer outra função em um campo de referência que se refere à tabela Usuário \[sys_user\].

## Procedimento

1. Abra um incidente.
2. No canto superior esquerdo da tela, clique no menu de contexto do formulário e selecione ConfigurarDicionário.
3. Em Qual. De referência campo, insira <kbd class="ph userinput">javascript: "Sys_idin"("itil_admin").join(",") </kbd>.
4. Salve o registro.
5. Para ver a regra de negócio do sistema base que este código JavaScript chama, navegue até Definição do SistemaRegras de negócio.
6. Aberto GetRoledUsers .  
   A regra de negócio usa o seguinte código JavaScript.

       // Return an array of sys_ids of the users that have at least one role
       // optional parameters allow the exclusion (NOT IN) of some roles or
       // look for specific roles (IN)
       //
       // optional: queryCondition - 'IN' or 'NOT IN'
       // optional: roleList - a comma separated list of role names
       //
       function getRoledUsers(queryCondition, roleList) {
          var roleListIds;
          if (queryCondition && roleList) {
             roleListIds = getRoleListIds(roleList);
          }

          var users = {};
          var now_GR = new GlideRecord('sys_user_has_role');
          if (roleListIds) {
             now_GR.addQuery('role', queryCondition, roleListIds);
          }
          now_GR.query();
          while (now_GR.next()) {
             users[now_GR.user.toString()] = true;
          }
          
          var ids = [];
          for (var id in users)
             ids.push(id);
             
          return ids;
       }

       // get sys_id's for the named roles
       function getRoleListIds(roleList) {
          var ids = [];
          var now_GR = new GlideRecord('sys_user_role');
          now_GR.addQuery('name','IN',roleList);
          now_GR.query();
          while (now_GR.next()) {
             ids.push(now_GR.sys_id.toString());
          }
          return ids;
       }


