### Planifications de pgAgent

Chaque job est exécuté suivant une ou plusieurs planification. À chaque fois que le job ou une de ses planifications sont modifiés, la prochaine exécution est recalculée. Chaque instance de pgAgent interroge périodiquement la base de données pour connaître les jobs donc la prochaine exécution est passée. En cherchant cette information toutes les minutes, tous les job commenceront normalement dans la minute suivant l'heure de démarrage. Si aucune instance de pgAgent n'est en cours d'exécution au moment spécifié pour l'exécution du job, il sera exécuté dès le prochain lancement de pgAgent, puis il retournera à sa planification normale.

Des planifications peuvent être ajoutées à un job via le dialogue des propriétés d'un job, ou ajoutées en tant que sous-objet. L'onglet Propriétés de la fenêtre principale de pgAdmin affichera les détails de la planification sélectionnée.

Chaque planification contient les détails basiques, tels qu'un nom, l'activation ou non de cette planification et un commentaire. De plus, une date et heure de début est spécifiée (avant laquelle la planification n'a pas d'effet) et, en option, une date et heure de fin (après laquelle la planification n'a pas d'effet).

Les planifications sont spécifiées dans un format style cron. Pour chaque élément de date et heure spécifiée, la planification sera exécutée. Par exemple, pour exécuter le job cinq minutes après chaque heure, sélectionnez 5 dans la liste déroulante Minutes. Les valeurs pour plus d'un champ peuvent être données dans l'ordre pour plus de contrôle. Par exemple, pour exécuter à 12h05 et 14h05 chaque lundi et jeudi, vous sélectionnez 5 dans la liste déroulante Minutes, 12 et 14 dans la liste déroulante des heures, Lundi et Jeudi dans la liste déroulante des jours de semaine. Pour plus de flexibilité, la liste Jours du mois inclut une option supplémentaire, Dernier jour. Cela correspond au dernier jour du mois, qui interviendra les 28, 29, 30 ou 31.

Dans certaines occasions, il pourrait être préférable de spécifier une exception pour une planification. Par exemple, vous pourriez ne pas vouloir l'exécution d'une planification pendant un jour férié. Pour cela, chaque planification doit avoir une liste des dates et des horaires de non exécution. Si une planification survient au même moment qu'une exception, cette planification sera ignorée, et la prochaine occurence sera effective.