Création de modèles de workflow creating-workflow-models

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.
CAUTION
Pour utiliser l’IU classique, reportez-vous à la section Documentation d’AEM 6.3 à titre de référence.

Vous créez un modèle de workflow pour définir les étapes exécutées lorsqu’un utilisateur lance le workflow. Vous pouvez également définir des propriétés de modèle pour déterminer, par exemple, si le workflow est transitoire ou s’il utilise plusieurs ressources.

Lorsqu’un utilisateur lance un workflow, une instance est démarrée ; il s’agit du modèle d’exécution correspondant, créé lorsque vous Synchronisation vos modifications.

Création d’un workflow creating-a-new-workflow

Lorsque vous créez un modèle de workflow pour la première fois, il contient :

  • Les étapes Début de flux et Fin de flux.

    Ces étapes représentent le début et la fin du workflow. Ces étapes sont requises et ne peuvent pas être modifiées ni supprimées.

  • Un exemple d’étape Participant, dont le nom est  Étape 1.

    Cette étape est configurée pour affecter un élément de travail à l’initiateur de workflow. Vous pouvez modifier ou supprimer cette étape et y ajouter d’autres étapes suivant les besoins.

Pour créer un workflow avec l’éditeur, procédez comme suit :

  1. Ouvrez le Modèles de processus console; par le biais de Outils, Workflow, Modèles ou, par exemple :

    http://localhost:4502/aem/workflow

  2. Sélectionnez Créer, puis Créer un modèle.

  3. Le Ajouter un modèle de processus s’affiche. Saisissez le Titre et Nom (facultatif) avant de sélectionner Terminé.

  4. Le nouveau modèle est répertorié dans la console Modèles de workflow.

  5. Sélectionnez votre nouveau workflow, puis utilisez Modifier ​ ​pour l’ouvrir à des fins de configuration :

    wf-01

NOTE
Si vous créez des modèles par programmation (à l’aide d’un package crx), vous pouvez également créer un sous-dossier à l’intérieur de ceux-ci :
/var/workflow/models
Par exemple, /var/workflow/models/prototypes
Ce dossier peut ensuite être utilisé pour gestion de l’accès aux modèles de ce dossier.

Modification d’un workflow editing-a-workflow

Vous pouvez modifier n’importe quel modèle de workflow existant pour :

Modification d’un Valeur par défaut ou héritée Workflow (prêt à l’emploi) comporte une étape supplémentaire, afin de garantir qu’une safe copy est pris avant que vos modifications ne soient apportées.

Lorsque les mises à jour de votre workflow sont terminées, vous devez utiliser Synchronisation to Génération d’un modèle d’exécution. Voir Synchroniser votre workflow pour plus d’informations.

Synchronisation de votre workflow - Génération d’un modèle d’exécution sync-your-workflow-generate-a-runtime-model

Synchronisation (à droite dans la barre d’outils de l’éditeur) génère une modèle d’exécution. Le modèle d’exécution est le modèle réellement utilisé lorsqu’un utilisateur démarre un workflow. Si vous ne synchronisez pas vos modifications, elles ne seront pas disponibles au moment de l’exécution.

Lorsque vous (ou tout autre utilisateur) apportez des modifications au workflow, vous devez utiliser Synchronisation pour générer un modèle d’exécution, même lorsque des boîtes de dialogue individuelles (par exemple, pour les étapes) disposent de leurs propres options d’enregistrement.

Lorsque les modifications sont synchronisées avec le modèle d’exécution (enregistré), Synchronisé s’affiche à la place.

Certaines étapes comportent des champs obligatoires et/ou une validation intégrée. Lorsque ces conditions ne sont pas remplies, une erreur s’affiche lorsque vous tentez de Synchronisation le modèle. Par exemple, si aucun participant n’a été défini pour une étape Participant  :

wf-21

Modification d’un workflow par défaut ou hérité pour la première fois editing-a-default-or-legacy-workflow-for-the-first-time

Lorsque vous ouvrez une Modèle par défaut et/ou hérité pour modification :

  • Le Étapes n’est pas disponible (côté gauche).

  • une action Modifier est disponible dans la barre d’outils (côté droit).

  • Au départ, le modèle et ses propriétés sont présentés en mode lecture seule comme suit :

    • Les workflow par défaut sont situés dans /libs.
    • Les workflows hérités se trouvent dans /etc

Sélection Modifier Will :

  • une copie du workflow est réalisée dans /conf ;
  • effectuez la Étapes navigateur disponible
  • vous pourrez effectuer des modifications.
NOTE
Pour plus d’informations, consultez la section Emplacements des modèles de workflow.

wf-22

Ajout d’une étape à un modèle adding-a-step-to-a-model

Vous devrez ajouter des étapes à votre modèle pour représenter l’activité à exécuter : chaque étape effectue une activité spécifique. Une sélection de composants d’étape est disponible dans une instance d’AEM standard.

Lorsque vous modifiez un modèle, les étapes disponibles s’affichent dans les différents groupes du Étapes navigateur. Par exemple :

wf-10

NOTE
Pour plus d’informations sur les composants d’étape Principal installés avec AEM, voir Référence sur les étapes du processus.

Pour ajouter une étape à un modèle:

  1. Ouvrez un modèle de workflow existant pour le modifier. Sélectionnez le modèle souhaité dans la console Modèle de workflow, puis cliquez sur Modifier.

  2. Ouvrez le Étapes navigateur ; using Activer/désactiver le panneau latéral, à l’extrémité gauche de la barre d’outils supérieure. Vous pouvez effectuer les opérations suivantes :

    • Filtrer pour des étapes spécifiques.
    • Utilisez le sélecteur de liste déroulante pour limiter la sélection à un groupe d’étapes spécifique.
    • Sélectionnez l’icône Afficher la description wf-stepinfo-icon pour afficher des informations plus détaillées sur l’étape appropriée.

    wf-02

  3. Faites glisser la ou les étapes appropriées vers l’emplacement requis dans le modèle.

    Par exemple, un Étape du participant.

    Une fois ajouté au flux, vous pouvez configuration de l’étape.

    wf-03

  4. Ajoutez autant d’étapes ou d’autres mises à jour que nécessaire.

    Au moment de l’exécution, les étapes sont exécutées dans l’ordre dans lequel elles apparaissent dans le modèle. Après avoir ajouté des composants d’étape, vous pouvez les faire glisser vers un autre emplacement dans le modèle.

    Vous pouvez également copier, couper, coller, regrouper ou supprimer des étapes existantes ; comme avec le éditeur de page.

    Les étapes de division peuvent également être réduites/développées à l’aide de l’option de barre d’outils : wf-collapseexpand-toolbar-icon .

  5. Confirmez les modifications à l’aide de l’option Synchronisation (barre d’outils de l’éditeur) afin de générer le modèle d’exécution.

    Voir Synchroniser votre workflow pour plus d’informations.

Configuration d’une étape de processus configuring-a-workflow-step

Vous pouvez Configurer et personnaliser le comportement d’une étape de workflow à l’aide de la fonction Propriétés de l’étape des boîtes de dialogue.

  1. Pour ouvrir la Propriétés de l’étape pour une étape :

    • Appuyez sur l’étape dans le modèle de processus et sélectionnez Configurer dans la barre d’outils du composant.
    • Double-cliquez sur l’étape.
    note note
    NOTE
    Pour plus d’informations sur les composants d’étape Principal installés avec AEM, voir Référence sur les étapes du processus.
  2. Configurez la variable Propriétés de l’étape au besoin; les propriétés disponibles dépendent du type d’étape. plusieurs onglets peuvent également être disponibles. Par exemple, l’étape Étape de participant par défaut présent dans un nouveau workflow sous la forme Step 1 :

    wf-11

  3. Appuyez sur la coche pour confirmer vos mises à jour.

  4. Confirmez les modifications à l’aide de l’option Synchronisation (barre d’outils de l’éditeur) afin de générer le modèle d’exécution.

    Voir Synchroniser votre workflow pour plus d’informations.

Création d’un workflow transitoire creating-a-transient-workflow

Vous pouvez créer un Transitoire modèle de workflow lors de la création d’un modèle ou en modifiant un modèle existant :

  1. Ouvrez le modèle de workflow pour édition.

  2. Sélectionnez Propriétés du modèle de workflow dans la barre d’outils.

  3. Dans la boîte de dialogue, activez Processus transitoire (ou désactivez-la si nécessaire) :

    wf-07

  4. Confirmez la modification à l’aide de l’option Enregistrer et fermer, suivie de Synchronisation (barre d’outils de l’éditeur) pour générer le modèle d’exécution.

    Voir Synchroniser votre workflow pour plus d’informations.

NOTE
Lorsque vous exécutez un workflow dans transient l’AEM de mode ne stocke aucun historique de workflow. Par conséquent, la Chronologie n’affiche aucune information relative au workflow. 🔗

Mise à disposition des modèles de workflow dans l’interface utilisateur tactile make-workflow-models-available-in-touchui

Si un modèle de workflow présent dans l’interface utilisateur classique est absent du menu contextuel de sélection dans le rail Chronologie de l’interface utilisateur tactile, effectuez la configuration pour la rendre disponible. Les étapes suivantes illustrent l’utilisation du modèle de workflow appelé Demande d’activation.

  1. Vérifiez que le modèle n’est pas disponible dans l’interface utilisateur tactile. Accédez à une ressource à l’aide du chemin /assets.html/content/dam. Sélectionnez une ressource. Ouvrez Chronologie dans le rail gauche. Cliquez sur Démarrer le workflow et confirmez que le modèle Demande d’activation n’est pas présent dans la liste contextuelle.

  2. Accédez à Outils > Général > Balisage. Sélectionnez Workflow.

  3. Sélectionnez Créer > Créer une balise. Définissez le titre comme DAM et le nom comme dam. Sélectionnez Envoyer.
    Créer une balise dans le modèle de workflow

  4. Accédez à Outils > Workflows > Modèles. Sélectionnez Demande d’activation, puis Modifier.

  5. Sélectionner Modifier , puis ouvrez Propriétés du modèle de workflow. Accédez au De base .

  6. Ajoutez Workflow : DAM dans le champ Balises. Confirmez la sélection en activant la case à cocher.

  7. Confirmez l’ajout de la balise en sélectionnant Enregistrer et fermer.
    Modifier les propriétés de page du modèle

  8. Terminez la procédure en sélectionnant Synchronisation. Le workflow est désormais disponible dans l’interface utilisateur tactile.

Configuration d’un workflow pour la prise en charge multi-ressource configuring-a-workflow-for-multi-resource-support

Vous pouvez configurer un modèle de workflow pour Prise en charge multi-ressource lors de la création d’un modèle ou en modifiant un modèle existant :

  1. Ouvrez le modèle de workflow pour édition.

  2. Sélectionnez Propriétés du modèle de workflow dans la barre d’outils.

  3. Dans la boîte de dialogue, activez Prise en charge multi-ressource (ou désactivez-la si nécessaire) :

    wf-08

  4. Confirmez la modification à l’aide de l’option Enregistrer et fermer, suivie de Synchronisation (barre d’outils de l’éditeur) pour générer le modèle d’exécution.

    Voir Synchroniser votre workflow pour plus d’informations.

Configuration des étapes de workflow (qui affichent la progression du workflow) configuring-workflow-stages-that-show-workflow-progress

Étapes de workflow vous aide à visualiser la progression d’un workflow lors de la gestion des tâches.

CAUTION
Si les étapes de workflow sont définies dans Propriétés de la page, mais non utilisée pour aucune des étapes du workflow, la barre de progression n’affichera aucune progression (quelle que soit l’étape actuelle du workflow).

Les étapes à mettre à disposition sont définies dans les modèles de workflow ; les modèles de workflow existants peuvent être mis à jour afin d’inclure des définitions d’étape. Vous pouvez définir un nombre illimité de phases pour le modèle de workflow.

Pour définir Phases pour votre workflow :

  1. Ouvrez le modèle de workflow à modifier.

  2. Sélectionnez Propriétés du modèle de workflow dans la barre d’outils. Ouvrez ensuite le Phases .

  3. Ajoutez (et positionnez) le Phases. Vous pouvez définir un nombre illimité de phases pour le modèle de workflow.

    Par exemple :

    wf-08-1

  4. Cliquez sur Enregistrer et fermer pour enregistrer les propriétés.

  5. Attribuez une étape à chacune des étapes du modèle de workflow. Par exemple :

    wf-09

    Une étape peut être affectée à plusieurs étapes. Par exemple :

    table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2
    Étape Phase
    Étape 1 Création
    Étape 2 Création
    Étape 3 Révision
    Étape 4 Approuver
    Étape 5 Approuver
    Étape 6 Terminer
  6. Confirmez les modifications à l’aide de l’option Synchronisation (barre d’outils de l’éditeur) afin de générer le modèle d’exécution.

    Voir Synchroniser votre workflow pour plus d’informations.

Exportation d’un modèle de workflow dans un package exporting-a-workflow-model-in-a-package

  1. Créez un module à l’aide de la fonction Gestionnaire de modules:

    1. Accédez au gestionnaire de modules au moyen de la commande Outils, Déploiement, Packages.
    2. Cliquez sur Créer un package.
    3. Spécifiez la variable Nom du module, ainsi que tout autre détail selon les besoins.
    4. Cliquez sur OK.
  2. Cliquez sur Modifier dans la barre d’outils de votre nouveau package.

  3. Ouvrez l’onglet Filtres.

  4. Sélectionnez Ajouter un filtre et indiquez le chemin d’accès de la conception de votre modèle de workflow :

    /conf/global/settings/workflow/models/<*your-model-name*>

    Cliquez sur Terminé.

  5. Sélectionner Ajouter un filtre et indiquez le chemin d’accès de votre runtime modèle de workflow :

    /var/workflow/models/<*your-model-name*>

    Cliquez sur Terminé.

  6. Ajoutez des filtres supplémentaires pour tous les scripts personnalisés utilisés par votre modèle.

  7. Cliquez sur Enregistrer pour confirmer vos définitions de filtre.

  8. Sélectionnez Compilation dans la barre d’outils de votre définition de package.

  9. Sélectionner Télécharger dans la barre d’outils du module.

Utilisation de processus pour traiter les envois de formulaire using-workflows-to-process-form-submissions

Vous pouvez paramétrer un formulaire à traiter par le workflow sélectionné. Lorsque les utilisateurs envoient le formulaire, une nouvelle instance de processus est créée avec les données de l’envoi du formulaire comme charge utile.

Pour configurer le workflow à utiliser avec votre formulaire :

  1. Créez une page et ouvrez-la pour modification.

  2. Ajouter un Formulaire du composant à la page.

  3. Configurez la variable Début du formulaire du composant qui s’affichait dans la page.

  4. Utilisez Démarrer le workflow pour sélectionner le workflow de votre choix parmi ceux qui sont disponibles :

    wf-12

  5. Confirmez la nouvelle configuration du formulaire en cochant .

Processus de test testing-workflows

Il est recommandé, lors du test d’un workflow, d’utiliser divers types de charge utile ; y compris les types différents de ceux pour lesquels elle a été développée. Par exemple, si vous envisagez que votre workflow traite les ressources, testez-le en définissant une Page comme charge utile et assurez-vous qu’il ne génère pas d’erreurs.

Par exemple, testez votre nouveau workflow comme suit :

  1. Démarrez votre modèle de workflow à partir de la console.

  2. Définissez le payload et confirmez-le.

  3. Prenez les mesures nécessaires pour que le workflow se poursuive.

  4. Surveillez les fichiers journaux pendant l’exécution du workflow.

Vous pouvez également configurer les AEM à afficher DEBUG messages dans les fichiers journaux. Pour plus d’informations, consultez la section Journalisation. Une fois le développement terminé, redéfinissez le Niveau de journal sur Infos.

Exemples examples

Exemple : Création d’un workflow (simple) pour accepter ou rejeter une demande de publication example-creating-a-simple-workflow-to-accept-or-reject-a-request-for-publication

Pour illustrer certaines des possibilités de création d’un workflow, l’exemple suivant crée une variante du workflow Publish Example.

  1. Créez un modèle de workflow.

    Le nouveau workflow contiendra :

    • Début de flux
    • Step 1
    • Fin de flux
  2. Supprimez Step 1 (car ce type d’étape n’est pas correct pour cet exemple) :

    • Cliquez sur l’étape et sélectionnez ensuite Supprimer dans la barre d’outils du composant. Confirmez l’action.
  3. Dans la Workflow sélection de l’explorateur d’étapes, faites glisser un Étape du participant sur le workflow et positionnez-le entre Début du flux et Fin de flux.

  4. Pour ouvrir la boîte de dialogue des propriétés :

    • Cliquez sur l’étape de participant et sélectionnez ensuite Configurer dans la barre d’outils du composant.
    • Double-cliquez sur l’étape de participant.
  5. Dans l’onglet Commun, saisissez Validate Content pour le Titre et la Description.

  6. Ouvrez le Utilisateur/Groupe tab :

    • Activer Notifier l’utilisateur par courrier électronique.
    • Sélectionnez Administrator (admin) pour le champ Utilisateur/Groupe.
    note note
    NOTE
    Pour envoyer des emails, les détails du service de messagerie et du compte utilisateur doivent être configurés..
  7. Confirmez les mises à jour à l’aide de la coche.

    Vous revenez alors à l’aperçu du modèle de workflow. L’étape de participant y a été renommée Validate Content.

  8. Faites glisser une Division OU sur le workflow et positionnez-la entre Validate Content et Fin de flux.

  9. Ouvrez le Ou fractionner pour la configuration.

  10. Configurez les éléments suivants :

    • Courant: select 2 branches
    • Branche 1: select Itinéraire par défaut.
    • Branche 2: veiller à Itinéraire par défaut n’est pas sélectionnée.
  11. Confirmez vos mises à jour des Division OU.

  12. Faites glisser un Étape du participant dans la branche de gauche, ouvrez les propriétés, spécifiez les valeurs suivantes, puis confirmez les modifications :

    • Titre  : Reject Publish Request
    • Utilisateur/Groupe  : par exemple, projects-administrators
    • Avertir l’utilisateur par e-mail  : activez cette option pour que l’utilisateur soit averti par e-mail.
  13. Faites glisser une Étape du processus sur la branche de droite, ouvrez les propriétés, spécifiez les valeurs suivantes, puis confirmez les modifications :

    • Titre  : Publish Page as Requested
    • Processus  : sélectionnez Activate Page. Ce processus publie la page sélectionnée sur les instances d’éditeur.
  14. Cliquez sur Synchronisation (barre d’outils de l’éditeur) pour générer le modèle d’exécution.

    Voir Synchroniser votre workflow pour plus d’informations.

    Votre nouveau modèle de workflow ressemblera à ceci :

    wf-13

  15. Appliquez ce workflow à votre page, de sorte que lorsque l’utilisateur définit l’étape Valider le contenu sur Terminé, il peut choisir s’il souhaite Publier la page comme demandé ou Rejeter la demande de publication.

    chlimage_1-182

Exemple : définition d’une règle pour une division OU example-defining-a-rule-for-an-or-split

Division OU Les étapes vous permettent d’introduire des chemins de traitement conditionnels dans votre workflow.

Pour définir une règle OU :

  1. Créez deux scripts et enregistrez-les dans le référentiel, par exemple sous :

    /apps/myapp/workflow/scripts

    note note
    NOTE
    Les scripts doivent comporter une fonction check() qui renvoie une valeur booléenne.
  2. Editez le workflow et ajoutez le Division OU au modèle.

  3. Modification des propriétés de Branche 1 de Division OU:

    • Définissez-la comme Itinéraire par défaut en configurant la Valeur sur true.

    • Dans Règle, définissez le chemin d’accès au script. Par exemple :

      /apps/myapp/workflow/scripts/myscript1.ecma

    note note
    NOTE
    Vous pouvez changer l’ordre des branches si nécessaire.
  4. Modifiez les propriétés de la Branche 2 de la Division OU.

    • En tant que Règle, définissez le chemin d’accès à l’autre script. Par exemple :

      /apps/myapp/workflow/scripts/myscript2.ecma

  5. Définissez les propriétés des différentes étapes de chaque branche. Assurez-vous que la valeur Utilisateur/Groupe est définie.

  6. Cliquez sur Synchronisation (barre d’outils de l’éditeur) pour conserver vos modifications dans le modèle d’exécution.

    Voir Synchroniser votre workflow pour plus d’informations.

Fonction Check() function-check

L’exemple de script suivant renvoie la valeur true si le nœud est un JCR_PATH situé sous /content/we-retail/us/en :

function check() {
    if (workflowData.getPayloadType() == "JCR_PATH") {
      var path = workflowData.getPayload().toString();
      var node = jcrSession.getItem(path);

      if (node.getPath().indexOf("/content/we-retail/us/en") >= 0) {
       return true;
      } else {
       return false;
      }
     } else {
      return false;
     }
}

Exemple : Demande d’activation personnalisée example-customized-request-for-activation

Vous pouvez personnaliser n’importe lequel des workflows personnalisés. Pour appliquer un comportement personnalisé, superposez les détails du workflow approprié.

Par exemple : Demande d’activation. Ce workflow est utilisé pour publier des pages dans Sites et est déclenché automatiquement lorsqu’un auteur de contenu ne dispose pas des droits de réplication appropriés. Pour plus d’informations, consultez la section Personnalisation de la création de pages – Personnalisation du workflow de Demande d’activation.

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