---
sourceDocument: Workflows de version Xanadu
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/fr-FR/xanadu/build-workflows

 Release :

    - xanadu

ft:locale :

    - fr-FR

ft:publication_title :

    - Workflows de version Xanadu

ft:clusterId :

    - crworkflow

bundleId :

    - crworkflow

workflow :

    - Creator


---

# Créer une action personnalisée pour générer un tableau de chaînes à partir d'une liste d'enregistrements

# Créer une action personnalisée pour générer un tableau de chaînes à partir d'une liste d'enregistrements {#ariaid-title1}

* Rversion finale: Xanadu
* 
* Mis à jour 1 août 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 4 minutes de lecture

Générez un tableau de chaînes à partir d'une liste d'enregistrements de rôles d'utilisateurs. Découvrez comment utiliser une étape de script pour parcourir une liste d'enregistrements.

## Avant de commencer

Rôle requis : admin de flow_designer

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

Utilisez cet exemple pour voir des démonstrations de ces opérations et étapes.

* Créez une entrée d'action pour un enregistrement de rôle.
* Recherchez un maximum de trois enregistrements de rôle d'utilisateur qui ont l'entrée d'action de rôle.
* Configurez une étape de script pour traiter une liste d'enregistrements de rôles d'utilisateurs.
* Créez une variable d'entrée de script contenant la liste des enregistrements de rôles d'utilisateur.
* Écrivez un script qui crée un tableau d'utilisateurs vide.
* Écrivez un script qui parcourt la liste des enregistrements de rôles d'utilisateur.
* Écrivez un script qui renseigne le tableau users avec la valeur de champ d'utilisateur actuelle.
* Créez des variables de sortie de script pour le tableau users et la chaîne d'utilisateur enfant.
* Générez le tableau de chaînes des utilisateurs généré sous la forme d'une pastille de données.
* Testez l'action avec trois exemples d'utilisateurs.
{#create-custom-action-array-strings__ul_c5v_rdw_lhb}

## Procédure

1. **Facultatif :** Créez une application pour stocker votre travail.  
   Vous pouvez l'utiliser App Engine Studio pour planifier, créer et déployer des applications. Pour en savoir plus sur la création d'une application personnalisée, reportez-vous à la section .  
   Par exemple, créez une application appelée <kbd class="ph userinput">Mon application</kbd>.
2. Accédez à la ToutAutomatisation des processusStudio de workflow.
3. Sur la page d'accueil, sélectionnez Actions.
4. Sélectionner NouveauAction  
   Le système affiche la boîte de dialogue Propriétés de l'action.
5. Entrez ces exemples de valeurs.  
   {#create-custom-action-array-strings__table_tjt_xxp_lhb__entry__2}

   | Champ | Valeur |
   |-|-|
   | Nom | Créer des utilisateurs avec un tableau de rôles de chaînes |
   | Application | Global |
   | Accessible depuis | Tous les périmètres de l'application |
   [ ]

   {#create-custom-action-array-strings__table_tjt_xxp_lhb}  
   Remarque :  
   Si vous avez créé une application pour stocker et déployer votre action personnalisée, utilisez cette application au lieu de globale.
6. Sélectionnez Créer l'action.  
   Le système affiche l'interface Studio de workflow .
7. Dans Plan d'action, sélectionnez EntréesCréer une entrée  
   Le système affiche une nouvelle entrée d'action.
8. Configurez l'entrée d'action avec ces valeurs.  
   {#create-custom-action-array-strings__table_ijj_myp_lhb__entry__2}

   | Champ | Valeur |
   |-|-|
   | Étiquette | Rôle |
   | Type | Reference.Role \[Reference.sys_user_role\] |
   | Obligatoire | Vrai |
   [ ]

   {#create-custom-action-array-strings__table_ijj_myp_lhb}
9. Dans Plan d'action, sélectionnez Ajouter une nouvelle étape.  
   Le système affiche une liste des étapes disponibles.
10. Sélectionnez Rechercher des enregistrements
11. Configurez l'étape avec ces valeurs.  
    {#create-custom-action-array-strings__table_cvp_l5p_lhb__entry__2}

    | Champ | Valeur |
    |-|-|
    | Table | Rôle d'utilisateur \[sys_user_has_role\] |
    | Conditions | \[Rôle\] \[est\] \[action-\>rôle\] Remarque : Sélectionnez la pastille de données Rôle dans les variables d'entrée. |
    | Trier par | Rôle |
    | Type de tri | a à z |
    | Nombre maximal de résultats | 3 |
    [ ]

    {#create-custom-action-array-strings__table_cvp_l5p_lhb}  
    Remarque :  
    Cet exemple limite le paramètre Nombre maximal de résultats à trois enregistrements uniquement à des fins de démonstration.
12. Dans Plan d'action, sélectionnez Ajouter une nouvelle étape.  
    Le système affiche une liste des étapes disponibles.
13. Sélectionnez Script.
14. Dans la section Variables d'entrée, sélectionnez Créer une variable.
15. Configurez la variable d'entrée avec ces valeurs.  
    {#create-custom-action-array-strings__table_uby_5zp_lhb__entry__2}

    | Champ | Valeur |
    |-|-|
    | Nom | userRoleRecords |
    | Valeur | \[Étape-\>Étape Rechercher des enregistrements-\>Enregistrements de rôles d'utilisateur\] Remarque : Sélectionnez la pastille de données des enregistrements de rôle d'utilisateur à partir de l'étape Rechercher des enregistrements. |
    [ ]

    {#create-custom-action-array-strings__table_uby_5zp_lhb}  
    Remarque :  
    Vous pouvez sélectionner la pastille de données des enregistrements de rôle d'utilisateur à partir du panneau de données ou du bouton Sélecteur de pastilles de données.
16. Dans le champ Script, saisissez le texte suivant.  

        (function execute(inputs, outputs) {
          //Create an empty array
          var usersArray = [];
          var i = 0;
          //Iterate through the list of User Role records
          while(inputs.userRoleRecords.next()) {
            //Query User Role records for user field value
            var user = inputs.userRoleRecords.getDisplayValue('user');
            //Add current user name to array
            usersArray[i] = user;
            i += 1;
          }
          outputs.users = usersArray;
        })(inputs, outputs);

17. Dans Variables en sortie, sélectionnez Créer une variable.
18. Configurez la variable de sortie avec ces valeurs.  
    {#create-custom-action-array-strings__table_e3w_hbq_lhb__entry__4}

    | Étiquette | Nom | Type | Obligatoire |
    |-|-|-|-|
    | utilisateurs | utilisateurs | Array.String | Vrai |
    [ ]

    {#create-custom-action-array-strings__table_e3w_hbq_lhb}
19. Développez le Array.String des utilisateurs et renommez la chaîne enfant en <kbd class="ph userinput">user</kbd>.
20. Configurez l'élément enfant avec ces valeurs.  
    {#create-custom-action-array-strings__table_d3v_sbq_lhb__entry__4}

    | Étiquette | Nom | Type | Obligatoire |
    |-|-|-|-|
    | utilisateur | utilisateur | Chaîne | Faux |
    [ ]

    {#create-custom-action-array-strings__table_d3v_sbq_lhb}
21. Dans Plan d'action, sélectionnez SortiesCréer une sortie.
22. Configurez la sortie d'action avec ces valeurs.  
    {#create-custom-action-array-strings__table_ojs_pcq_lhb__entry__4}

    | Étiquette | Nom | Type | Obligatoire |
    |-|-|-|-|
    | utilisateurs | utilisateurs | Array.String | Vrai |
    [ ]

    {#create-custom-action-array-strings__table_ojs_pcq_lhb}
23. Développez le Array.String des utilisateurs et renommez la chaîne enfant en <kbd class="ph userinput">user</kbd>.
24. Configurez l'élément enfant avec ces valeurs.  
    {#create-custom-action-array-strings__table_qcx_t1t_rbc__entry__4}

    | Étiquette | Nom | Type | Obligatoire |
    |-|-|-|-|
    | utilisateur | utilisateur | Chaîne | Faux |
    [ ]

    {#create-custom-action-array-strings__table_qcx_t1t_rbc}
25. Sélectionnez Quitter le mode de modification.  
    Le système affiche les champs de sortie que vous avez créés.
26. Pour les utilisateurs, sélectionnez \[step-\>Script step-\>users\].  
    Remarque :  
    Vous pouvez sélectionner la pastille de données des utilisateurs de l'étape Script à partir du panneau de données ou du bouton Sélecteur de pastilles de données.
27. Cliquez sur Enregistrer.
28. Sélectionnez Test.  
    Le système affiche la boîte de dialogue Tester l'action.
29. Entrez la valeur de test suivante :  
    {#create-custom-action-array-strings__table_onv_z22_mhb__entry__2}

    | Entrée | Valeur |
    |-|-|
    | Rôle | administrateur |
    [ ]

    {#create-custom-action-array-strings__table_onv_z22_mhb}
30. Sélectionnez Exécuter le test.  
    Le système exécute l'action avec les valeurs de test fournies.
31. Sélectionnez L'exécution de votre test terminée. Affichez les détails d'exécution de l'action.  
    Le système affiche les détails d'exécution de l'action.
32. Examinez la valeur d'exécution pour les données de sortie d'action.  
    Le système affiche les données de sortie au format JSON.  
    Dans cet exemple, le tableau users contient trois utilisateurs disposant du rôle administrateur.

        {
            "users": [
                "System Administrator",
                "Rob Phillips",
                "Fred Luddy"
            ]
        }

## Résultats

Vous disposez d'une action personnalisée qui recherche les utilisateurs disposant d'un rôle donné et convertit ces utilisateurs en un tableau de chaînes de noms d'utilisateurs.

## Que faire ensuite

Personnalisez cette action pour utiliser votre propre logique.

