Chaque étape d'un processus peut être assortie d'une précondition. Cette précondition détermine si l'étape sera exécutée. Tout comme les scripts de post-traitements, les préconditions utilisent JavaScript.
Les préconditions renvoient des valeurs booléennes. Si la précondition renvoie la valeur 'True', l'étape s'exécute normalement.
Si la précondition renvoie une valeur autre que 'True', le processus ignore l'étape. Dans la demande de processus, l'étape reçoit la mention "Echec de la précondition." Dans ce cas cependant, le processus poursuit son exécution en suivant les liens de réussite comme si l'étape avait abouti.
La précondition a accès aux même propriétés que l'étape. Par exemple, les processus d'application ont accès aux propriétés suivantes :
- Propriétés d'application
- Propriétés de processus d'application
- Propriétés d'environnement, y-compris les propriétés d'environnement de composant
- Propriétés système
Après avoir exécuté un processus, vous pouvez examiner les propriétés auxquelles le processus a eu accès en ouvrant la demande de processus et en cliquant sur l'onglet
Propriétés.
Pour accéder à une propriété, utilisez la commande
properties.get().
Le code suivant, par exemple, extrait la valeur d'une propriété d'application :
properties.get("application/property1")
L'exemple de précondition suivant ne permet l'exécution de l'étape que si la propriété
property1 existe et n'a pas la valeur null:
properties.get("application/property1") !== undefined &&
properties.get("application/property1") !== null &&
properties.get("application/property1") !== ""
Les scripts de précondition peuvent accéder aux propriétés de processus. En supposant, par exemple, que le processus comporte une propriété nommée
processProperty1, vous pouvez accéder à cette propriété à l'aide du code suivant :
properties.get("processProperty1")
Les scripts de précondition dans les processus de composants et dans les processus génériques peuvent accéder aux propriétés de sortie des étapes précédentes. Supposons, par exemple, qu'un script de post-traitement d'une étape nommée
Step1 spécifie une propriété intitulée
OutputProp1. Le script de précondition suivant ne permet à une autre étape de s'exécuter que si la valeur de cette propriété est
value1:
properties.get("Step1/OutputProp1") == "value1"
Les préconditions ont accès à une propriété nommée
hasFailures.
Cette propriété reçoit la valeur '
True' si une étape quelconque du processus échoue. Elle est indéfinie si aucune des étapes n'échoue. Par exemple, pour n'exécuter une étape que si aucune autre étape du processus n'échoue, utilisez la précondition suivante :
properties.get('hasFailures') == undefined