Planification des cas d’utilisation du script

  • Rversion finale: Australia
  • Mis à jour 12 mars 2026
  • 2 minutes de lecture
  • Un script de règle métier spécifie les actions entreprises par la règle métier. Les scripts incluent généralement des variables globales prédéfinies pour référencer des éléments dans votre système, tels que l’enregistrement actuel. Les variables globales sont disponibles pour toutes les règles métier.

    Avertissement :
    La personnalisation décrite ici a été développée pour être utilisée 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 minutieusement avant sa mise en œuvre. Posez toutes les questions et tous les commentaires concernant cette personnalisation sur notre forum de la communauté.

    Calculer la durée selon une planification

    Type : règle métier Avant la mise à jour/l’insertion.

    Description : une durée d’activité calcule la durée d’ouverture à fermeture d’un incident en fonction de la création et de l’utilisation de calendriers. Si aucun calendrier n’est spécifié, le script utilisera simplement le premier calendrier renvoyé par la requête.

    Exemple de script :

    L’exemple ci-dessous définit la durée de résolution lorsque l’état de l’incident passe à Résolu.
    var gr_rec = new GlideRecord('incident');
    gr_rec.get('ed92e8d173d023002728660c4cf6a7bc');
    if (gr_rec.incident_state == 6) {
    var dur = calcDurationSchedule(gr_rec.opened_at, gr_rec.sys_updated_on);
    }
     
    function calcDurationSchedule(start, end){ 
      // Get the user   
      var usr = new GlideRecord('sys_user');
      usr.get(gs.getUserID());
      // Create schedule - pass in the sys_id of your standard work day schedule and pass in the users timezone
      var sched = new GlideSchedule('08fcd0830a0a0b2600079f56b1adb9ae',usr.time_zone);
      // Get duration based on schedule/timezone 
      return(sched.duration(start.getGlideObject(), end.getGlideObject()));
    }

    Vérifier les dates d’arrêt à venir

    Type : script planifié.

    Description : ce script vérifie la nuit les dates de résiliation des contrats arrivant à échéance dans 90, 50 ou 10 jours (selon le champ Durée du contrat).

    Exemple de script :

    function contractNoticeDue(){
      var now_GR = new GlideRecord("contract");
      now_GR.addQuery("u_contract_status","Active");
      now_GR.query();
      while(now_GR.next()){
        if((now_GR.u_termination_date<= gs.daysAgo(-90))&&(now_GR.u_contract_duration=="Long")){
          now_GR.u_contract_status="In review";}
        elseif((now_GR.u_termination_date<= gs.daysAgo(-50))&&(now_GR.u_contract_duration=="Medium")){
          now_GR.u_contract_status="In review";}
        elseif((now_GR.u_termination_date <= gs.daysAgo(-10))&&(now_GR.u_contract_duration=="Short")){
          now_GR.u_contract_status="In review";}
        now_GR.update();
      }
    }
    Utilisez des scripts dans les règles métier pour accomplir des tâches courantes telles que :
    • Comparaison de deux champs de date.
    • Analyse des charges utiles XML.
    • Abandon d’une action de base de données dans une règle métier.
    Avec les scripts, vous pouvez également :
    • Spécifiez l’opération qui déclenche la règle métier.
    • Utilisez le bloc-notes avec les règles métier d’affichage pour modifier les valeurs du formulaire juste avant qu’un utilisateur ne charge le formulaire.
    • Utilisez la condition OU comme vous le feriez dans un créateur de conditions.

    Vous pouvez également utiliser la fonctionnalité de script du système disponible pour les scripts côté serveur.

    Vous pouvez utiliser les options du formulaire Règles métier pour créer des conditions, définir des valeurs de champ et afficher des messages d’alerte sans avoir besoin d’écrire un script.