---
sourceDocument: Référence de l’API Xanadu
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/fr-FR/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - fr-FR

ft:publication_title :

    - Référence de l’API Xanadu

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# Affecter un élément de catalogue à un groupe en fonction d'une tâche de plan d'exécution

# Affecter un élément de catalogue à un groupe en fonction d'une tâche de plan d'exécution {#ariaid-title1}

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

Affectez un élément de catalogue de services au groupe de base de données s'il utilise un plan d'exécution qui comporte une tâche de catalogue affectée au groupe de bureau.

**Prérequis**

Rôle requis : administrateur  
Avertissement :  
La personnalisation décrite ici a été développée pour une utilisation dans des instances spécifiques, et n'est pas prise en charge par Now Support. Cette méthode est fournie telle quelle et doit être testée rigoureusement avant d'être implémentée. Publiez toutes les questions et commentaires concernant cette personnalisation dans notre [forum](http://community.service-now.com/) communautaire.

Nom : affecter l'élément de catalogue au groupe en fonction de la tâche du plan d'exécution.

Type : règle d'affectation.

Description : cette règle d'affectation affecte un élément de catalogue de services au groupe de base de données si celui-ci utilise un plan d'exécution comportant une tâche de catalogue affectée au groupe de bureaux.

**Script:**  

    //Return catalog items that have no group but do have a delivery plan assigned var ri  = new GlideRecord ( "sc_cat_item" ) ;
    ri.addQuery("group", "=", null);
    ri.addQuery("delivery_plan", "!=", null);
    ri.query(); 
    while(ri.next()) {
        gs.log("Found an item"); 
        //Return tasks that point to the same delivery plan as the above item 
        var dptask = new GlideRecord("sc_cat_item_delivery_task");
        dptask.addQuery("delivery_plan", "=", ri. delivery_plan);
        dptask.query(); 
        while(dptask.next()) {
            gs.log("Found a task");
            var gp = dptask.group.getDisplayValue();
            gs.log(gp); 
            //If the task is assigned to desktop, assign the item's group to desktop
            if (dptask.group.getDisplayValue() == "Desktop") {
                ri.group.setDisplayValue("Desktop");
                gs.log("updating " + ri.getDisplayValue());
                ri.update(); 
                break; } } }


