Configurer les phases et les étapes de flux de travail en arrière-plan

Lorsque vous concevez des workflows, vous pouvez inclure la logique que vous souhaitez exécuter dans des phases et des étapes.

Les phases facilitent la lecture de la logique des workflows et expliquent cette logique. Toutefois, elles n’ont aucune incidence sur la logique ou sur le comportement des workflows. Si un processus inclut des phases, toutes les étapes de ce processus doivent être contenues dans une phase.

Les étapes sont des unités de logique métier dans un workflow. Les étapes peuvent inclure des conditions, des actions, d’autres étapes ou une combinaison de ces éléments.

Actions que les processus de workflow en arrière-plan peuvent effectuer

Les processus de workflow en arrière-plan peuvent effectuer les actions répertoriées dans le tableau suivant.

Pour Description
Créer une ligne Crée une ligne pour une table et attribue les valeurs que vous choisissez aux colonnes.
Mettre à jour la ligne Vous pouvez mettre à jour la ligne sur lequel le flux de travail en arrière-plan s’exécute, tous les lignes liés à cet ligne dans des relations N :1 ou tout ligne créé par des étapes antérieures.
Attribuer une ligne Vous pouvez attribuer la ligne sur lequel le flux de travail en arrière-plan s’exécute, tous les lignes liés à cet ligne avec une relations N :1 ou tout ligne créé par des étapes antérieures.
Envoyer un e-mail Envoie un e-mail. Vous pouvez choisir de créer un nouvel e-mail ou d’utiliser un modèle d’e-mail configuré pour la table de ligne sur lequel le flux de travail d’arrière-plan s’exécute ou pour toute table ayant une relation N :1 avec la table, ou la table pour tout ligne créé par une version antérieure.
Lancer un workflow enfant Lance un processus de workflow en arrière-plan qui a été configuré comme workflow enfant.
Modifier le statut Modifie le statut de la ligne sur lequel le processus s’exécute, tous les lignes liés à cet ligne avec une relation N :1 ou tout ligne créé par des étapes antérieures.
Arrêter le workflow Permet d’arrêter le workflow actif. Vous pouvez définir le statut sur Terminé ou Annulé et spécifier un message de statut.
Étape personnalisée Les développeurs peuvent créer des étapes de workflow en arrière-plan personnalisées qui définissent des actions. Aucune étape personnalisée n’est disponible par défaut.

Définition des valeurs de ligne

Lorsque vous créez une ligne, vous pouvez définir des valeurs pour la ligne. Lorsque vous mettez une ligne à jour, vous pouvez définir, ajouter, incrémenter, décrémenter, multiplier ou supprimer ses valeurs.

Lorsque vous sélectionnez Définir les propriétés, une boîte de dialogue s’ouvre et vous indique le formulaire par défaut pour la table.

Au bas de la boîte de dialogue, vous pouvez voir une liste de colonnes supplémentaires non présents dans le formulaire.

Pour une colonne, vous pouvez définir une valeur statique qui sera définie par le workflow.

Sur le côté droit de la boîte de dialogue, l’Assistant Formulaires vous permet de définir ou d’ajouter des valeurs dynamiques à partir du contexte de la ligne active. Cela inclut les valeurs des lignes associées accessibles à partir des relations N :1 (plusieurs-à-un) pour la table.

Les options disponibles dans Assistant Formulaires dépendent de la colonne sélectionnée dans le formulaire. Lorsque vous définissez une valeur dynamique, vous verrez un espace réservé jaune appelé "champ de données dynamiques" qui indique où les données dynamiques seront incluses. Si vous souhaitez supprimer la valeur, sélectionnez simplement le champ de données dynamiques et supprimez-le. Pour les colonnes de texte, vous pouvez utiliser une combinaison de données statiques et dynamiques.

Avec des valeurs dynamiques, vous ne savez pas avec certitude qu’une colonne ou une table associée a la valeur que vous souhaitez définir. Vous pouvez en fait définir un certain nombre de colonnes pour essayer de définir la valeur et les trier dans l’ordre en utilisant les flèches vertes. Si le premier colonne ne comporte pas de données, le deuxième colonne sera analysé, et ainsi de suite. Si aucun des colonnes ne contient de données, vous pouvez spécifier une valeur par défaut à utiliser.

Définition de conditions pour les actions de workflow en arrière-plan

Les actions que vous appliquerez dépendent souvent de conditions. Les processus de workflow en arrière-plan fournissent plusieurs moyens de définir des conditions et de créer la logique de branchement pour obtenir les résultats escomptés. Vous pouvez contrôler les valeurs de la ligne sur lequel le processus de workflow en arrière-plan s’exécute, celles de l’un des lignes liés à cet ligne par une relation N:1 ou celles du processus lui-même.

Type de condition Description
Vérifier la condition Instruction logique « if--<condition> then ».

Vous pouvez contrôler les valeurs actuelles de la ligne sur lequel le workflow d’arrière-plan s’exécute, celles de l’un des lignes liés à cet ligne par une relation N:1 ou celles d’une ligne créé lors des étapes précédentes. Sur la base de ces valeurs, vous pouvez définir des étapes supplémentaires lorsque la condition est vraie.

Dans l’instruction « if-<condition> then », vous pouvez utiliser les opérateurs suivants : Est égal, Est différent de, Contient des données, Ne contient aucune donnée, Moins de et Pas moins de.

Remarque : Moins de et Pas moins de sont des opérateurs hiérarchiques. Ils ne peuvent être utilisés que sur les tables ayant une relation hiérarchique définie. Si vous essayez d’utiliser ces opérateurs sur les tables qui n’ont pas de relation hiérarchique définie, vous verrez le message d’erreur : « Vous utilisez un opérateur hiérarchique sur une table qui n’a pas de relation hiérarchique définie. Soit rendre la table hiérarchique (en marquant une relation comme hiérarchique), soit utiliser un opérateur différent ».

Pour plus d’informations sur les relations hiérarchiques, consultez Définir et interroger des données hiérarchiques. Une capture d’écran qui suit le tableau est un exemple de la définition du processus de workflow en arrière-plan qui utilise les opérateurs hiérarchiques Moins de et Pas moins de.
Branche conditionnelle Instruction logique « else-if-then ». L’éditeur utilise le texte « Sinon, if <condition> then : »

Sélectionnez une condition de vérification que vous avez déjà définie et ajoutez une branche conditionnelle pour définir des étapes supplémentaires à suivre lorsque la condition renvoie false.
Action par défaut Instruction logique "else". L’éditeur utilise le texte « Sinon : »

Sélectionnez une condition de vérification, une branche conditionnelle, une condition d’attente ou une branche d’attente parallèle que vous avez déjà définie et utilisez éventuellement une action par défaut pour définir les étapes à suivre pour tous les cas qui ne satisfont pas les critères définis dans la condition ou les éléments de branche.
Condition d’attente Permet à un flux de travail en arrière-plan d’être suspendu jusqu’à ce que les critères définis par la condition soient remplis. Le workflow en arrière-plan redémarre automatiquement lorsque les critères de la condition d’attente sont satisfaits.
Attendre la branche parallèle Définit une autre condition d’attente pour un flux de travail en arrière-plan avec un ensemble correspondant d’étapes supplémentaires qui sont effectuées uniquement lorsque le critère initial est satisfait. Vous pouvez utiliser des branches d’attente parallèles pour créer des délais dans votre logique de workflow en arrière-plan. Elles permettent d’éviter que le workflow en arrière-plan n’attende indéfiniment que les critères définis dans une condition d’attente soient satisfaits.
Étape personnalisée Les développeurs peuvent créer des étapes de workflow en arrière-plan personnalisées qui définissent des conditions. Aucune étape personnalisée n’est disponible par défaut.

La capture d’écran suivante contient un exemple de la définition du processus de workflow en arrière-plan avec les opérateurs hiérarchiques Moins de et Pas moins de. Dans notre exemple, nous appliquons deux remises différentes à deux groupes de comptes. Dans Ajouter une étape, nous avons sélectionné Vérifier la condition pour spécifier la condition if-then contenant l’opérateur Moins de ou Pas moins de. La première condition if-then s’applique à tous les comptes situés sous (Moins de) le compte Alpine Ski House. Ces comptes reçoivent une remise de 10 pour cent sur les marchandises et les services achetés. La deuxième condition if-then s’applique à tous les comptes qui ne sont pas sous (Pas moins de) le compte Alpine Ski House et ils reçoivent une remise de 5 pour cent. Ensuite, nous avons sélectionné Mettre à jour la ligne pour définir l’action à effectuer en fonction de la condition.

Processus de workflow avec opérateurs « sous/pas sous ».

Étapes suivantes

Créer une logique métier personnalisée à l’aide des processus
Vue d’ensemble du processus de workflow
Superviser et gérer les processus de workflow en arrière-plan
Meilleures pratiques pour les processus de workflow en arrière-plan