---
sourceDocument: Gestion des services IT Xanadu
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/fr-FR/xanadu/it-service-management

 Release :

    - xanadu

ft:locale :

    - fr-FR

ft:publication_title :

    - Gestion des services IT Xanadu

ft:clusterId :

    - itsm

bundleId :

    - itsm

workflow :

    - Technology


---

# Mise à jour des états des demandes de changement

# Mise à jour des états des demandes de changement {#ariaid-title1}

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

Si vous avez effectué une mise à niveau à partir d'une version antérieure à Geneva, vous devez mettre à jour les anciennes étiquettes d'état vers les nouvelles étiquettes d'état après avoir activé Gestion des changements State Model.

## Avant de commencer

Rôle requis : admin

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

Les valeurs d'état des enregistrements de changement actuels ne sont pas modifiées lorsque vous activez Gestion des changements State Model. Toutefois, vos enregistrements de changement actuels affichent les nouvelles étiquettes d'état dans le champ État.
{#state-model-activate-tasks__table_nnl_gz4_bt__entry__3}

| Valeur d'état | Nouvelle étiquette d'état | Ancienne d'étiquette d'état |
|-|-|-|
| -5 | Nouveau | En attente |
| -4 | Évaluer | (Non utilisé) |
| -3 | Autoriser | (Non utilisé) |
| -2 | Planifié | (Non utilisé) |
| -1 | Implémenter | (Non utilisé) |
| 0 | Revue | (Non utilisé) |
| 1 | (Non utilisé) | Ouvert |
| 2 | (Non utilisé) | En cours de résolution |
| 3 | Fermé | Fermé terminé |
| 4 | Annulé | Fermé incomplet |
| 7 | (Non utilisé) | Fermé ignoré |
[ ]

{#state-model-activate-tasks__table_nnl_gz4_bt}

Par exemple, avant l'activation de Gestion des changements State Model, les enregistrements d'une valeur d'état de -5 présentent l'étiquette d'état En attente. Une fois State Model activé, ces enregistrements conservent la valeur d'état de -5, mais présentent l'étiquette Nouveau. Pour utiliser le processus Gestion des changements requis par votre organisation avec State Model, vous devez mettre à jour les valeurs d'état vers les nouvelles étiquettes dans vos enregistrements de changement existants comme il convient, manuellement ou via un script.

Vous devez également mettre à jour tous les rapports qui exécutent des requêtes basées sur d'anciennes étiquettes d'état pour refléter les nouvelles étiquettes d'état.

## Procédure

1. Pour mettre à jour automatiquement les valeurs de champ d'état d'anciennes étiquettes d'état vers les nouvelles étiquettes d'état, personnalisez le script d'exemple suivant et exécutez-le :  

       updateStates();

       function updateStates() {

         function hasApprovers(changeGr) {
           var approverGr = new GlideRecord("sysapproval_approver");
           approverGr.addQuery('sysapproval', changeGr.getUniqueValue());
           approverGr.query();
           return approverGr.getRowCount() > 0;
         }

         function hasRunningWorkflows(changeGr) {
           var workflow = new Workflow();
           var workflowGr = workflow.getRunningFlows(changeGr);
           var hasRunningFlows = workflowGr.getRowCount() > 0;
           return hasRunningFlows;
         }

         // Old State Model
         var PENDING = '-5';
         var OPEN = '1';
         var CLOSED_COMPLETE = '3';
         var CLOSED_INCOMPLETE = '4';
         var CLOSED_SKIPPED = '7';

         // New State Model
         var NEW = '-5';
         var ASSESS = '-4';
         var AUTHORIZE = '-3';
         var SCHEDULED = '-2';
         var IMPLEMENT = '-1';
         var REVIEW = '0';
         var CLOSED = '3';
         var CANCELLED = '4';

         // Find all change requests
         var record = new GlideRecord('change_request');
         record.query();

         // Update state from old value to new value
         while (record.next()) {
           switch(record.getValue('state')) {
             case OPEN:
               if (!hasRunningWorkflows(record) && !hasApprovers(record))
                 record.state = NEW;
               break;
             case CLOSED_COMPLETE:
               record.state = CLOSED;
               record.close_code = "successful";
               break;
             case CLOSED_SKIPPED:
               record.state = CANCELLED;
               record.close_code = "unsuccessful";
               break;
             case CLOSED_INCOMPLETE:
               record.state = CLOSED;
               record.close_code = "successful_issues";
               break;
           }
           record.autoSysFields(false);
           record.setWorkflow(false);
           record.update();
         }

       }

2. Vérifiez que les étiquettes d'état sont modifiées dans les enregistrements de demande de changement existants.
{#state-model-activate-tasks__steps_mgf_t5l_nz}
**Référence associée**   

* [Composants installés avec le module d'extension Gestion des changements - State Model](https://servicenow-prod.fluidtopics.net/KltqIlj1S4kqUjqK1sT5cQ#r_InstalledWithStateModel "Plusieurs types de composants sont installés avec le module d’extension Gestion des changements - State Model.")

