---
sourceDocument: Administration de la ServiceNow AI Platform en Australie
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/fr-FR/platform-administration

 Release :

    - australia

ft:locale :

    - fr-FR

ft:publication_title :

    - Administration de la ServiceNow AI Platform en Australie

ft:clusterId :

    - platadm

bundleId :

    - platadm

workflow :

    - Platform


---

# Contraindre le champ Affecté à par rôle

# Contraindre le champ Affecté à par rôle {#ariaid-title1}

* Rversion finale: Australia
* 
* Mis à jour 12 mars 2026
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 1 minute de lecture

Cet exemple montre comment utiliser JavaScript et une règle métier pour limiter les choix de champ Affecté à aux seuls utilisateurs disposant du rôle itil_admin.

## Avant de commencer

Rôle requis : personalize_dictionary ou admin

## Pourquoi et quand exécuter cette tâche

Vous pouvez également itil_admin remplacer par n'importe quel autre rôle dans un champ de référence faisant référence à la table Utilisateur \[sys_user\].

## Procédure

1. Ouvrez un incident.
2. Dans le coin supérieur gauche de l'écran, cliquez sur le menu contextuel du formulaire, puis sélectionnez ConfigurerDictionnaire.
3. Dans le champ Qualificatif de référence , saisissez <kbd class="ph userinput">javascript&nbsp;:"sys_idIN"+getRoledUsers(«&nbsp;itil_admin&nbsp;»).join(«&nbsp;,&nbsp;»)</kbd>.
4. Enregistrez l'enregistrement.
5. Pour afficher la règle métier du système de base que ce code JavaScript appelle, accédez à Définition du systèmeRègles métier.
6. Ouvrez getRoledUsers.  
   La règle métier utilise le code JavaScript suivant.

       // 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;
       }


