Mettre à jour l'include de script du modèle d’état

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 1 minute de lecture
  • Mettez à jour l'include de script ChangeRequestStateModel_normal pour ajouter de nouvelles fonctions à l’état Terminé.

    Avant de commencer

    Rôle requis : admin

    Pourquoi et quand exécuter cette tâche

    Mettez à jour le script ChangeRequestStateModel_normal avec la configuration suivante.
    • Ajoutez les nouvelles fonctions CanMove et moving pour l’état Terminé. Ces fonctions peuvent renvoyer la valeur true, car le passage vers l’état Terminé n’implique aucune condition spéciale ni action supplémentaire à réaliser.
    • Modifiez la définition de l’objet existant pour l’état Implémenter pour vous assurer que l’état suivant est Terminé.
    • Ajoutez un objet pour l’état Terminé, qui définit Revue et Fermé comme étant les deux états suivants.
      Remarque :
      les fonctions canMove pour la transition vers ces états à partir de Terminé vérifient le champ personnalisé Requiert une revue pour déterminer l’état suivant approprié.

    Procédure

    1. Accédez à Tout > Définition du système > Includes de script.
    2. Ouvrez l'include de script ChangeRequestStateModel_normal et modifiez-le comme suit.
      1. Ajoutez la ligne suivante à la fin de l'include de script, mais avant la ligne qui commence par type :
        toComplete_moving: function() {
                      return true; 
                 },              
        
                 toComplete_canMove: function() {      
                       return true;       
                 },
        Scénario révisé
      2. Remplacez l’objet Implémenter existant par Terminé :
        implement: {
                    nextState: [ "complete" ],
        
                    complete: { 
                        moving: function() {                
                            return this.toComplete_moving(); 
                        },             
        
                        canMove: function() {                
                            return this.toComplete_canMove();            
                        }       
                    },        
        
                    canceled: {  
                        moving: function() {               
                           return this.toCanceled_moving();   
                        },             
        
                        canMove: function() {               
                           return this.toCanceled_canMove(); 
                        }        
                    }    
                },
    3. Ajoutez le nouvel objet d’état suivant pour Terminé.
      complete: {
                   nextState : [ "review", "closed" ],         
      
                   review : {            
                         moving : function() {
                               return this.toReview_moving();            
                         },             
      
                         canMove : function() {              
                                if (this._gr.getValue("u_needs_review") == "Yes")   
                                     return true;                            
                            
                                return false;
                         }        
                   },                     
      
                   closed : {            
                         moving : function() {  
                               return this.toClosed_moving();
                         },             
      
                         canMove : function() {              
                                if (this._gr.getValue("u_needs_review") == "No")
                                     return true;    
                              
                        return false;
                        }       
                   },  
      
                   canceled : { 
                         moving : function() {                
                               return this.toCanceled_moving();     
                         },             
      
                         canMove : function() {                
                                return this.toCanceled_canMove(); 
                         }   
                   }    
              },
    4. Cliquez sur Mettre à jour.