Développement et extension des workflows developing-and-extending-workflows

CAUTION
AEM 6.4 a atteint la fin de la prise en charge étendue et cette documentation n’est plus mise à jour. Pour plus d’informations, voir notre période de support technique. Rechercher les versions prises en charge here.

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 prendre des décisions sur le moment où 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 de validation et de validation par différents participants. Ces processus peuvent être modélisés à l’aide de 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 :

NOTE
Pour obtenir des informations sur :

Modèle model

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.

Modèle Runtime runtime-model

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 (disponible au moment du démarrage du workflow).

Un modèle d’exécution est généré lorsque Synchronisation est déclenché dans l’éditeur de modèles de workflow.

Les modifications apportées au modèle de workflow et aux modèles d’exécution qui sont générés après le démarrage de l’instance spécifique ne sont pas appliqués à cette instance.

CAUTION
Les étapes effectuées sont celles définies par la fonction modèle d’exécution; elle est générée au moment où la variable 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 Synchronisation étant déclenché), l’instance d’exécution ne reflète pas ces modifications. Seuls les modèles d’exécution générés après la mise à jour reflètent les modifications. Les exceptions sont les scripts ECMA sous-jacents, qui ne sont conservés qu’une seule fois ; les modifications sont donc prises en compte.

Étape step

Chaque étape exécute une tâche discrète. Il existe différents types d’étapes de workflow :

  • Participant (utilisateur/groupe) : Ces étapes génèrent un élément de travail et l’attribuent à un utilisateur ou à un groupe. Un utilisateur doit terminer l’élément de travail pour progresser dans le workflow.
  • Processus (Script, appel de méthode Java) : Ces étapes sont exécutées automatiquement par le système. Un script ECMA ou une classe Java met l’étape en œuvre. Les services peuvent être développés pour écouter les événements de workflow spéciaux et exécuter des tâches en fonction de la logique métier.
  • Conteneur (sous-workflow) : Ce type d’étape lance un autre modèle de workflow.
  • Division/jointure OU : Utilisez la logique pour décider quelle étape exécuter ensuite dans le workflow.
  • Division/jointure ET : Permet l’exécution simultanée de plusieurs étapes.

Toutes les étapes partagent les propriétés suivantes : alertes Autoadvance et Timeout (scriptable).

Transition transition

WorkflowTransition représente une transition entre deux WorkflowNodes d’un WorkflowModel.

  • Il définit le lien entre deux étapes consécutives.
  • Il est possible d'appliquer des règles.

Élément de travail workitem

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.

  • Il est utilisé pour identifier la tâche et placé dans la boîte de réception correspondante.
  • Une instance de workflow peut contenir un ou plusieurs WorkItems en même temps (selon le modèle de workflow).
  • Le WorkItem référence l’instance de workflow.
  • Dans le référentiel, le WorkItem est stocké sous l’instance de workflow.

Payload payload

Fait référence à la ressource qui doit être avancée par le biais d’un workflow.

L’implémentation de la payload 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 très flexible et très productif en association avec Sling ; par exemple, le noeud référencé peut être rendu sous forme de formulaire.

Cycle de vie lifecycle

Est créé lors du démarrage d’un nouveau workflow (en choisissant le modèle de workflow correspondant et en définissant la charge utile) et se termine lorsque le noeud de fin est traité.

Les actions suivantes sont possibles sur une instance de workflow :

  • Arrêter
  • Suspendre
  • Reprendre
  • Redémarrer

Les instances terminées et terminées sont archivées.

Boîte de réception inbox

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.

Types de workflow workflow-types

Il existe différents types de processus, comme indiqué dans la console Modèles de processus :

wf-upgraded-03

  • Par défaut

    Il s’agit des workflows prêts à l’emploi inclus dans une instance AEM standard.

  • Workflows personnalisés (aucun indicateur dans la console)

    Il s’agit de workflows qui ont été créés à partir de zéro ou à partir de workflows prêts à l’emploi qui ont été recouverts de personnalisations.

  • Hérité

    Il s’agit des workflows créés dans une version antérieure d’AEM. Ils peuvent être conservés lors d’une mise à niveau ou exportés en tant que module de workflow à partir de la version précédente, puis importés dans la nouvelle version.

Workflows transitoires transient-workflows

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. Il est utilisé pour l’optimisation des performances, car il permet d’économiser/d’éviter le temps/les ressources utilisés pour conserver les informations.

Les workflows transitoires peuvent être utilisés pour tout workflow qui :

  • sont exécutées fréquemment.
  • n’ont pas besoin de l’historique des workflows.

Des workflows transitoires ont été introduits pour charger un grand nombre de ressources, où les informations sur les ressources sont importantes, mais pas l’historique d’exécution du workflow.

NOTE
Voir Création d’un workflow transitoire pour plus de détails.
CAUTION
Lorsqu’un modèle de workflow a été marqué comme transitoire, il existe quelques scénarios où les informations d’exécution seront conservées :
  • Le type de charge utile (vidéo, par exemple) nécessite des étapes externes pour le traitement ; dans ce cas, l’historique d’exécution est nécessaire pour la confirmation de l’état.
  • Le workflow entre dans une Division ET; dans ce cas, l’historique d’exécution est nécessaire pour la confirmation de l’état.
  • Lorsque le workflow transitoire entre dans une étape de participant, il passe en mode (au moment de l’exécution) à non transitoire ; lorsque la tâche est transmise à une personne, l’historique doit être conservé.
CAUTION
Dans un workflow transitoire, vous ne devez pas utiliser un Atteindre l’étape.
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 de rendre le workflow transitoire et génère une erreur dans le fichier journal.
Pour prendre des décisions dans un workflow transitoire, vous pouvez utiliser la variable Division OU.
NOTE
Voir Bonnes pratiques pour les ressources pour plus d’informations sur l’impact des workflows transitoires sur les performances des ressources.

Prise en charge multi-ressource multi-resource-support

L’activation de la prise en charge multi-ressource pour votre modèle de workflow signifie qu’une instance unique de workflow démarrera, même si vous sélectionnez plusieurs ressources ; elles seront jointes en tant que package.

If Prise en charge multi-ressource n’est pas activé 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.

Étapes de workflow workflow-stages

Les étapes de workflow permettent de visualiser la progression d’un workflow lors de la gestion des tâches. Ils peuvent être utilisés pour fournir une vue d’ensemble de l’avancement du traitement du workflow. Par exemple, lorsque le workflow est exécuté, l’utilisateur peut afficher la progression décrite par Évaluation (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 étapes :

  1. Vous pouvez configurez les étapes de workflow (qui affichent la progression du workflow), puis attribuez l’étape appropriée à chaque étape de votre workflow.:

    • Plusieurs noms d’étape peuvent être créés.
    • Un nom d’étape individuel est ensuite attribué à chaque étape (un nom d’étape peut être attribué à une ou plusieurs étapes).
    table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2
    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é
  2. 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 travail répertorié dans la boîte de réception.

Workflows et Forms workflows-and-forms

En règle générale, les processus sont utilisés pour traiter les envois de formulaire dans AEM. Cela peut être effectué avec les composants de formulaires de composants principaux disponibles dans une instance AEM standard, 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 de l’envoi du formulaire et de son contenu.

Workflows et traduction workflows-and-translation

Les workflows font également partie intégrante du processus de traduction.

recommendation-more-help
2315f3f5-cb4a-4530-9999-30c8319c520e