Exécuter automatiquement un script que vous choisissez

  • Rversion finale: Yokohama
  • Mis à jour 30 janv. 2025
  • 8 minutes de lecture
  • Planifiez des scripts conditionnels et non conditionnels. Si Séparation de domaine est installée dans l’instance, vous pouvez également sélectionner, filtrer, trier et planifier des scripts en fonction des domaines affectés.

    Avant de commencer

    Rôles requis : admin

    Pourquoi et quand exécuter cette tâche

    Voici un exemple de script conditionnel. Il exécute la tâche planifiée uniquement s’il existe des incidents actifs datant de plus de 30 jours.

    // Only run this Scheduled Job if there are active Incidents over 30 days old
    var ga = new GlideAggregate('incident');
    ga.addAggregate('COUNT');
    ga.addQuery('active', 'true');
    ga.addQuery('sys_created_on', '<', gs.daysAgo(30));
    ga.query();
    ga.next();
    ga.getAggregate('COUNT') !== '0'

    Procédure

    1. Accédez à la Tout > Définition du système > Travaux planifiés.
    2. Cliquez sur Nouveau.
    3. Sélectionnez Exécuter automatiquement un script de votre choix.
    4. Renseignez les champs du formulaire.
      Tableau 1. Planifier l’exécution du script
      Champ Description
      Nom Nom qui identifie cette tâche planifiée.
      Actif Option qui indique que la tâche planifiée est active et doit être exécutée à la date et à l'heure spécifiées.
      Application Nom de l'application qui contient le script. Global apparaît si le script se trouve dans le champ d'application global.
      Conditionnel Option permettant d'activer l'exécution de la tâche planifiée quand certaines conditions sont remplies dans le script associé.
      Condition Script conditionnel qui détermine si une tâche planifiée doit s'exécuter. La dernière expression du script doit être évaluée à une valeur booléenne (vrai/faux). Cette zone de texte s’affiche uniquement si vous sélectionnez Utiliser des conditions.
      Avertissement :
      Les scripts conditionnels pour les e-mails de rapport planifiés et Analyse des performances les travaux de collecte de données sont exécutés dans le bac à sable. Par conséquent, les définitions de fonctions ne sont pas autorisées. Certains appels API et mots clés ne sont pas non plus autorisés. Pour plus d’informations, consultez Propriété de bac à sable de script.

      Après la mise à niveau, les tâches avec des scripts conditionnels qui contiennent ces composants d’API non autorisés se terminent avec des erreurs.

      Exécution
      Intervalle de temps à utiliser pour l'exécution de la tâche planifiée :
      • Quotidien : s'exécute quotidiennement à l'heure désignée.
      • Hebdomadaire : s'exécute chaque semaine à l'heure et au jour désignés de la semaine.
      • Mensuel : s'exécute chaque mois à l'heure et au jour désignés du mois.
      • Périodiquement : s'exécute selon l'intervalle de répétition désigné.
      • Une fois : s'exécute pour une seule occurrence uniquement.
      • Sur demande : s'exécute immédiatement sur demande.
      • Calendrier d'entreprise : début de l'entrée : s'exécute selon les dates de début d'entrée du calendrier d'entreprise que vous sélectionnez dans le champ Calendrier d'entreprise. Une tâche planifiée s'exécute à la date de début de chacune des entrées d'entreprise que vous avez définies dans le calendrier d'entreprise.

        Par exemple, si le calendrier d'entreprise représente une année fiscale et que la date de début de chaque entrée est un mois fiscal, alors la tâche planifiée s'exécute le premier jour de chaque mois.

      • Calendrier d'entreprise : fin de l'entrée : s'exécute selon les dates de fin d'entrée du calendrier d'entreprise que vous sélectionnez dans le champ Calendrier d'entreprise. Cette sélection s'exécute de la même façon que Calendrier d'entreprise : début de l'entrée, mais en fonction des dates de fin des entrées du calendrier d'entreprise associées.
        Remarque :
        Lorsque vous sélectionnez Calendrier d'entreprise : début de l'entrée ou Calendrier d'entreprise : fin de l'entrée, vous pouvez appliquer un facteur de décalage pour planifier la tâche à exécuter avant ou après la période du calendrier d'entreprise sélectionné. Si vous sélectionnez un calendrier d’entreprise et que toutes ses plages de calendrier d’entreprise sont dans le passé, la tâche ne s’exécutera jamais, car il s’agit d’une configuration non valide. Pour en savoir plus, consultez les champs Type de décalageet Décalage.

        Pour en savoir plus sur la création et l'utilisation des calendriers d'entreprise et la définition des entrées du calendrier d'entreprise, consultez Création de calendriers d’entreprise et Définir des entrées de calendrier d’entreprise.

      Jour
      Jour où la tâche planifiée doit s'exécuter.
      • Si le champ Exécution est défini sur Hebdomadaire, sélectionnez le jour de la semaine. Choisissez mercredi, par exemple.
      • Si le champ Exécution est défini sur Mensuel, sélectionnez le jour du mois. Par exemple, sélectionnez 25 pour le 25e jour du mois.
      Ce champ n'apparaît que si vous sélectionnez Mensuel ou Hebdomadaire dans le champ Exécution.
      Intervalle de répétition
      Durée de l'intervalle de répétition pour chaque exécution de tâche planifiée. Entrez la durée en nombre de jours, d'heures ou de minutes. Par exemple :
      • Pour exécuter la tâche prévue tous les quatre jours, saisissez 04 dans le champ Jours.
      • Pour l'exécuter toutes les 26 heures, entrez 26 dans le champ Heures.
      • Si elle doit se répéter à un intervalle de 13 heures 30 minutes et 25 secondes, saisissez 13 dans le champ Heures, puis 30 et 25 dans les deux champs non libellés suivants.
      Fuseau horaire
      Fuseau horaire à utiliser avec l'entrée du champ Heure lorsque vous spécifiez l'heure à laquelle la tâche planifiée doit être exécutée. Sélectionnez une entrée de fuseau horaire :
      • -Aucun- : utilisez le fuseau horaire par défaut de l'utilisateur connecté qui crée la tâche planifiée.

        Par exemple, la tâche planifiée s'exécute à 16 h 45, heure US/Pacific, s'il s'agit du fuseau horaire affecté à l'utilisateur et que vous entrez 16:45 dans le champ Heure.

      • Utiliser le fuseau horaire du système : utilisez le fuseau horaire du système par défaut spécifié pour l'instance dans laquelle il s'exécute.

        Par exemple, la tâche prévue s'exécute à 22 h 15, heure de Londres, si Europe/London est le fuseau horaire du système par défaut pour l'instance, et que vous entrez 22:15 dans le champ Heure.

      • Fuseau horaire actuel.

        Par exemple, la tâche prévue s'exécute à 13 h 30 au fuseau horaire de l'Est des États-Unis si vous sélectionnez US/Eastern et entrez 13:30 dans le champ Heure.

      Heure Heure de la journée à laquelle la tâche planifiée doit s'exécuter, indiquée en heures, minutes et secondes dans un format de 24 heures. La sélection que vous faites dans le champ Fuseau horaire détermine le fuseau horaire de cette entrée.
      Jour
      Jour où la tâche planifiée doit s'exécuter.
      • Si le champ Exécution est défini sur Hebdomadaire, sélectionnez le jour de la semaine. Choisissez mercredi, par exemple.
      • Si le champ Exécution est défini sur Mensuel, sélectionnez le jour du mois. Par exemple, sélectionnez 25 pour le 25e jour du mois.
      Ce champ n'apparaît que si vous sélectionnez Mensuel ou Hebdomadaire dans le champ Exécution.
      Intervalle de répétition
      Durée de l'intervalle de répétition pour chaque exécution de tâche planifiée. Entrez la durée en nombre de jours, d'heures ou de minutes. Par exemple :
      • Pour exécuter la tâche prévue tous les quatre jours, saisissez 04 dans le champ Jours.
      • Pour l'exécuter toutes les 26 heures, entrez 26 dans le champ Heures.
      • Si elle doit se répéter à un intervalle de 13 heures 30 minutes et 25 secondes, saisissez 13 dans le champ Heures, puis 30 et 25 dans les deux champs non libellés suivants.
      Début Date et heure de génération de la première tâche planifiée. Sélectionnez la date et l'heure du calendrier. Ce champ n'apparaît que si vous sélectionnez Périodiquement dans le champ Exécution.
      Calendrier d'entreprise

      Entrée de calendrier d'entreprise que vous utilisez pour déterminer la date de début ou de fin du calendrier d'entreprise pour la tâche planifiée. Ce champ s'affiche uniquement si vous sélectionnez Entrée d'entreprise : date de début ou Entrée d'entreprise : date de fin dans le champ Heure.

      Type de décalage
      Type de décalage horaire, le cas échéant, à appliquer au calendrier d'entreprise que vous avez sélectionné pour planifier cette tâche.
      • Passé : appliquez un facteur de décalage pour planifier la tâche à exécuter avant le début de la période du calendrier d'entreprise sélectionné.
      • Futur : appliquez un facteur de décalage pour planifier la tâche à exécuter après la fin de la période du calendrier d'entreprise sélectionné.
      • --Aucun-- : aucun facteur de décalage n'est appliqué lors de la planification de cette tâche.
      L'ajout d'un facteur de décalage permet de planifier la tâche avant ou après la période officielle définie dans le calendrier d'entreprise pour les cas d'utilisation suivants :
      Décalage
      Délai de décalage (indiqué en jours, heures, minutes et secondes) à appliquer au calendrier d'entreprise que vous avez sélectionné pour planifier cette tâche. Par exemple, si vous souhaitez planifier le début de la tâche d'ici trois jours, 14 heures, 10 minutes et 45 secondes avant la date de début du calendrier d'entreprise, procédez comme suit :
      • Sélectionnez Passé dans le champ Type de décalage.
      • Saisissez 3 dans le champ Jours.
      • Saisissez 14, 10 et 45 dans le champ Heures.
      Les champs Jours de décalage et Heures n'apparaissent que si vous sélectionnez Calendrier d'entreprise : début de l'entrée ou Calendrier d'entreprise : fin de l'entrée dans le champ Exécution, ainsi que Passé ou Futur dans le champ Type de décalage.
      Exécuter en tant que [Facultatif] Sélectionnez un autre utilisateur pour effectuer l'exécution du script en tant que cet utilisateur. Configurez le formulaire pour ajouter ce champ si celui-ci n'existe pas.
      Exécuter ce script Nom du script à exécuter aux date et heure prévues. Par exemple, copiez la logique de script à partir d’une règle métier ou appelez un script include.
    5. Si Séparation de domaine est installée dans cette instance, les champs suivants s’affichent également pour la sélection, le tri et la planification des tâches par domaine.
      Remarque :
      Le module d’extension Domain Support - Domain Extensions Installer installe ces champs. Pour en savoir plus, consultez Demander une séparation de domaine.
      Champ Description
      Itérateur de domaine Case à cocher qui permet à cette tâche de s’exécuter sur plusieurs domaines. Si cette option est sélectionnée, les champs Table source de domaine et Filtre source de domaine s’affichent.
      Table source de domaine Nom de la table séparée par domaine qui est la source des domaines dans lesquels la tâche planifiée doit s’exécuter. Par exemple, sélectionnez Département (cmn_department) si vous souhaitez l’utiliser comme source des domaines affectés utilisés pour planifier des scripts. La tâche planifiée détermine ces domaines à partir du champ sys_domain des enregistrements de la table source. Pour en savoir plus, consultez Attribution de domaine.
      Remarque :
      C’est une bonne idée de créer une table séparée par domaine uniquement dédiée aux domaines d’approvisionnement, sauf si vous avez un cas d’utilisation qui justifie l’utilisation d’un domaine existant. Si vous en créez un nouveau, sélectionnez-le simplement à l’aide de ce champ.
      Filtre source de domaine Condition facultative que vous pouvez spécifier pour filtrer les enregistrements interrogés à partir de la table source de domaine sélectionnée.
      1. Sélectionnez le champ à utiliser pour filtrer les enregistrements.
      2. Ajoutez des conditions de filtrage et des opérateurs pour affiner les critères de sélection de domaine. Pour en savoir plus, consultez Filtres.
      Le traitement suivant a lieu lors de la planification d’une tâche dans une instance séparée par domaine :
      • Il interroge d’abord la table source de domaine sélectionnée.
      • Si vous avez spécifié une condition dans le champ Filtre source de domaine , il applique la condition de filtrage pour affiner l’ensemble d’enregistrements résultant.
      • Enfin, il récupère sa liste de domaines uniques dans les colonnes sys_domain de ces enregistrements.
    6. Cliquez sur Mettre à jour pour mettre à jour la tâche planifiée, Exécuter maintenant pour exécuter le script planifié immédiatement ou Supprimer pour supprimer la tâche.