AEM fournit plusieurs outils et ressources pour créer des modèles de workflow, développer des étapes de workflow et interagir par programme avec les workflows.
Les workflows permettent d’automatiser les processus de gestion des ressources et de publication de contenu dans votre environnement AEM. Les workflows se composent d’une série d’étapes, chacune d’elles exécutant une tâche discrète. Vous pouvez utiliser la logique et les données d’exécution pour décider quand un processus peut continuer et sélectionner l’étape suivante à partir de l’une des nombreuses étapes possibles.
Par exemple, les processus d’entreprise pour la création et la publication de pages web incluent les tâches d’approbation et de signature par différents participantes et participants. Ces processus peuvent être modélisés à l’aide des workflows AEM et appliqués à un contenu spécifique.
Les principaux aspects sont abordés ci-dessous, tandis que les pages suivantes abordent d’autres détails :
Pour obtenir des informations sur :
Un WorkflowModel
représente une définition (un modèle) d’un workflow. Il est composé de WorkflowNodes
et de WorkflowTransitions
. Les transitions se connectent aux nœuds et définissent le flux. Le modèle dispose toujours d’un nœud de début et d’un nœud de fin.
Les modèles de workflow bénéficient du contrôle de versions. Lorsque vous exécutez une instance de workflow, elle utilise et conserve le modèle d’exécution du workflow tel qu’il est disponible au moment du démarrage du workflow.
Un modèle d’exécution est généré lorsque la Synchronisation est déclenchée dans l’éditeur de modèles de workflow.
Les modifications apportées au modèle de workflow ou aux modèles d’exécution générés, ou les deux, après le démarrage de l’instance spécifique, ne sont pas appliquées à cette instance.
Les étapes effectuées sont définies par la fonction modèle d’exécution, générée au moment où l’action de Synchronisation est déclenchée dans l’éditeur de modèles de workflow.
Si le modèle de workflow est modifié après ce moment (sans que la Synchronisation soit déclenchée), l’instance d’exécution ne prend pas en compte ces modifications. Seuls les modèles d’exécution générés après la mise à jour prennent en compte les modifications. Les exceptions sont les scripts ECMA sous-jacents, qui ne sont conservés qu’une seule fois afin que ces modifications soient prises en compte.
Chaque étape exécute une tâche discrète. Il existe différents types d’étapes de workflow :
Toutes les étapes partagent les propriétés suivantes : alertes Autoadvance
et Timeout
(scriptable).
WorkflowTransition
représente une transition entre deux WorkflowNodes
d’un WorkflowModel
.
Un WorkItem
est l’unité qui est transmise par l’intermédiaire d’une instance de Workflow
d’un WorkflowModel
. Il contient les WorkflowData
sur lesquelles agit l’instance, ainsi qu’une référence au WorkflowNode
qui décrit l’étape de workflow sous-jacente.
WorkItems
en même temps (selon le modèle de workflow).WorkItem
référence l’instance de workflow.WorkItem
est stocké sous l’instance de workflow.Fait référence à la ressource qui doit être avancée par le biais d’un workflow.
L’implémentation de la payload fait référence une ressource dans le référentiel (par chemin, UUID ou URL) ou par un objet Java™ sérialisé. Le référencement d’une ressource dans le référentiel est flexible et, avec Sling, productif. Par exemple, le nœud référencé peut être rendu sous la forme d’un formulaire.
Il est créé lors du démarrage d’un nouveau workflow (en choisissant le modèle de workflow correspondant et en définissant la payload) et se termine lorsque le nœud de fin est traité.
Les actions suivantes sont possibles sur une instance de workflow :
Les instances finalisées et terminées sont archivées.
Chaque compte utilisateur possède sa propre boîte de réception de workflow dans laquelle les WorkItems
attribués sont accessibles.
Les WorkItems
sont attribués au compte utilisateur directement ou au groupe auquel ils appartiennent.
Il existe différents types de workflows, comme indiqué dans la console Modèles de workflows :
Par défaut
Ces types sont des workflows prêts à l’emploi inclus dans une instance standard d’AEM.
Workflows personnalisés (aucun indicateur dans la console)
Ces workflows ont été créés à partir de zéro ou à partir de workflows prêts à l’emploi auxquels ont été ajoutées des personnalisations.
Hérité
Il s’agit des workflows créés dans une version antérieure d’AEM. Ces workflows peuvent être conservés pendant une mise à niveau ou exportés sous la forme d’un package de workflow à partir de la version précédente, puis importés dans la nouvelle version.
Les workflows standard enregistrent les informations d’exécution (historique) lors de leur exécution. Vous pouvez également définir un modèle de workflow comme transitoire pour éviter la persistance d’un tel historique. Ce workflow est utilisé pour l’optimisation des performances, car il permet de gagner du temps et des ressources lors de la conservation des informations.
Les workflows transitoires peuvent être utilisés pour tous les workflows qui :
Les workflows transitoires ont été introduits pour charger de nombreuses ressources, où les informations sur les ressources sont importantes, mais pas l’historique d’exécution des workflows.
Voir Création d’un workflow transitoire pour plus de détails.
Lorsqu’un modèle de workflow est marqué comme transitoire, il existe quelques scénarios où les informations d’exécution doivent toujours être conservées :
Dans un workflow transitoire, vous ne devez pas utiliser une étape Goto.
En effet, l’étape Goto crée une tâche Sling pour continuer le workflow au point goto
. Cela va à l’encontre de l’objectif consistant à rendre le workflow transitoire et génère une erreur dans le fichier journal.
Utilisez la Division OU pour effectuer des choix au sein d’un workflow transitoire.
Voir Bonnes pratiques pour Assets pour plus d’informations sur l’impact des workflows transitoires sur les performances des ressources.
L’activation de la prise en charge multi-ressource pour votre modèle de workflow permet de lancer une seule instance de workflow même lorsque vous sélectionnez plusieurs ressources. Chacune est jointe sous la forme d’un package.
Si la prise en charge multi-ressource n’est pas activée pour votre modèle de workflow et que plusieurs ressources sont sélectionnées, une instance de workflow individuelle est lancée pour chaque ressource.
Pour plus d’informations, consultez la section Configuration d’un workflow pour la prise en charge multi-ressource.
Les phases de workflow permettent de visualiser la progression d’un workflow lors de la gestion des tâches. Elles peuvent être utilisées pour fournir une vue d’ensemble de l’avancement du traitement du workflow. Lorsque le workflow s’exécute, l’utilisateur ou l’utilisatrice peut afficher la progression décrite par Phase (contrairement à une étape individuelle).
Les noms des étapes pouvant être spécifiques et techniques, les noms des phases peuvent être définis pour fournir une vue conceptuelle de la progression du workflow.
Par exemple, pour un workflow comportant six étapes et quatre phases :
Nom de l’étape | Phase (affectée à l’étape) |
---|---|
Étape 1 | Création |
Étape 2 | Création |
Étape 3 | Révision |
Étape 4 | Approuver |
Étape 5 | Terminé |
Étape 6 | Terminé |
Lorsque le workflow est exécuté, l’utilisateur peut afficher la progression en fonction des noms des phases (au lieu des noms des étapes). La progression du workflow est affichée dans l’onglet Informations sur le workflow de la fenêtre Détails de la tâche de l’élément de workflow répertorié dans la boîte de réception.
En règle générale, les workflows sont utilisés pour traiter les envois de formulaire dans AEM. Cela peut être effectué avec les composants de formulaires des composants principaux disponibles dans une instance standard d’AEM, ou avec la solution AEM Forms.
Lors de la création d’un formulaire, l’envoi du formulaire peut facilement être associé à un modèle de workflow. Par exemple, pour stocker le contenu à un emplacement particulier du référentiel ou pour informer un utilisateur ou une utilisatrice de l’envoi du formulaire et de son contenu.
Les workflows font également partie intégrante du processus de traduction.