5.6 Minuteur

Les minuteurs permettent de déclencher des actions à des dates prédéfinies. Ces dates peuvent être statiques, ou liées à des valeurs du document qui porte le minuteur.

C'est utile, par exemple, pour répondre à une exigence de la forme :

Le délai de validation par défaut est de 15 jours, mais il est modifiable par l'utilisateur.
5 jours avant la date butoir, un mail de relance est envoyé au valideur
À la date butoir, si le document n'est pas relu, il est passé dans l'état Non validé.

5.6.1 Actions

Un minuteur effectue une séquence d'action. Chaque action peut être :

  • un envoi de mail
  • un changement d'état
  • l'exécution d'une méthode du document portant le minuteur
  • une combinaison des 3 types d'actions précédentes. Dans ce cas l'ordre d'exécution est :
    1. le changement d'état
    2. l'envoi de mail
    3. l'exécution de la méthode.

Chaque action est définie par un délai, et un nombre d'itérations.

5.6.2 Séquençage des actions

  1. la première itération de la première action est déclenchée à date de référence + délai
  2. Une fois une itération d'une action effectuée,
    1. s'il reste des itérations, l'itération suivante sera effectuée à à date de référence + Σ(actions passées x itérations passées )
    2. s'il ne reste plus d'itération, l'action suivante sera effectuée à à date de référence + Σ(actions passées x itérations passées )
  3. Une fois toutes les itérations de toutes les actions effectuées, le minuteur est détaché du document.

Si le date de référence est dynamique, le minuteur revient à la première itération à chaque modification de cette date de référence.

5.6.3 Date de référence

Par défaut, la date de référence d'un minuteur est sa date d'attachement au document. Il est possible de modifier cette date de référence de 2 manières :

Date de référence dynamique

La date de référence peut être reliée à un attribut de type date ou timestamp du document auquel est rattaché le minuteur.

Dans ce cas, la date de référence est recalculée à chaque mise à jour du document.

3.2.18 Si la date reliée est vide, le minuteur n'est pas activé. Il reste en attente d'activation jusqu'à ce que cette date reliée soit valorisée. De même, si la date reliée devient vide, les actions du minuteur sont inhibées.

Décalage de la date de référence

Il est possible d'appliquer un delta à cette date de référence, qu'elle soit dynamique ou non. Ce delta peut servir, par exemple, à effectuer une action, N jours avant la date cible : dans ce cas, on appliquera un delta de -N jours.

Ainsi, pour répondre au besoin donné en introduction, on appliquera le paramétrage suivant :

  • Lors de l'envoi en validation, la date butoir est demandée à l'utilisateur (et sa valeur par défaut est positionnée à aujourd'hui + 15 jours)
  • La date saisie est enregistrée dans l'attribut date_butoir_validation
  • Un minuteur est paramétré comme suit :
    • date de référence dynamique : date_butoir_validation
    • delta : -5 jours
    • Action 1 :
      • délai : 0
      • occurrences : 1
      • mail : [le modèle de mail de notre choix]
      • changement d'état : aucun
      • méthode : aucune
    • Action 2 :
      • délai : 5 jours
      • occurrences : 1
      • mail : aucun
      • changement d'état : non validé
      • méthode : aucune

Note : Le délai peut aussi être négatif. Il est donc également possible d'appliquer le paramétrage suivant :

  • Lors de l'envoi en validation, la date butoir est demandée à l'utilisateur (et sa valeur par défaut est positionnée à aujourd'hui + 15 jours)
  • La date saisie est enregistrée dans l'attribut date_butoir_validation
  • Un minuteur est paramétré comme suit :
    • date de référence dynamique : date_butoir_validation
    • delta : 0
    • Action 1 :
      • délai : -5 jours
      • occurrences : 1
      • mail : [le modèle de mail de notre choix]
      • changement d'état : aucun
      • méthode : aucune
    • Action 2 :
      • délai : 0
      • occurrences : 1
      • mail : aucun
      • changement d'état : non validé
      • méthode : aucune

5.6.4 Historique

Lors de l’exécution d'une action, une entrée d'historique est ajoutée au document auquel est attaché le minuteur.

5.6.5 Administration

Les minuteurs peuvent être administrés depuis le centre d'administration. (application : DOCADMIN, action : TIMERS_ADMIN).

5.6.6 Programmation

Les minuteurs peuvent être gérés par programmation. Cette programmation permet d'attacher ou de détacher les minuteurs associés à un document.

5.6.7 Gestion des erreurs

Lorsqu'un shell non interactif[^core-ref:shell non interactif] sort en erreur, un mail contenant le détail de l'erreur peut être envoyé.

Ce mail est envoyé uniquement si le paramètre CORE_WSH_MAILTO est non vide.

Lorsque le traitement d'un minuteur provoque une erreur, le document concerné est à nouvau traité par les minuteurs suivants tant que sa date de déclenchement reste valide (voir FDL_TIMERHOURLIMIT).

×