Création de modèles de workflow

ATTENTION

Pour utiliser l’interface utilisateur classique, consultez la documentation AEM 6.3.

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 synchronisez vos modifications.

Création d’un workflow

La première fois que vous créez un modèle de workflow, il se compose des éléments suivants :

  • Les étapes, Début de flux et Fin de flux.
    Ces étapes représentent le début et la fin du workflow. Elles sont obligatoires et ne peuvent pas être modifiées ni supprimées.
  • Exemple d’étape Participant nommée É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 la console Modèles de processus; via Outils, Workflow, Modèles ou, par exemple : https://localhost:4502/aem/workflow
  2. Sélectionnez Create (Créer), puis Creat Model (Créer un modèle).
  3. La boîte de dialogue Add Workflow Model (Ajouter un modèle de processus) s’ouvre. Saisissez le Titre et le Nom (facultatif) avant de sélectionner Terminé.
  4. Le nouveau modèle est répertorié dans la console Modèles de flux de travail.
  5. Sélectionnez votre nouveau workflow, puis utilisez Modifier pour l’ouvrir à des fins de configuration :
    wf-01
REMARQUE

Si vous créez des modèles par programmation (à l’aide d’un module 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 gérer l’accès aux modèles qu’il contient.

Modification d’un workflow

Vous pouvez modifier un workflow existant pour effectuer les opérations suivantes :

La modification d’un workflow (prêt à l’emploi) par défaut et/ou hérité comporte une étape supplémentaire pour s’assurer qu’une copie sécurisée est effectuée avant l’application de vos modifications.

Une fois les mises à jour apportées à votre workflow, vous devez utiliser l’option Synchronisation pour générer un modèle d’exécution. Pour plus d’informations, voir Synchronisation de votre workflow.

Synchronisation de votre workflow – Générer un modèle d’exécution

L’option Synchronisation (à droite dans la barre d’outils de l’éditeur) génère un modèle d’exécution. Il s’agit du modèle employé lorsqu’un utilisateur lance un flux. Si vous ne synchronisez pas vos modifications, elles ne seront pas disponibles au moment de l’exécution.

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

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

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

wf-21

Première modification d’un workflow par défaut ou hérité

Lorsque vous ouvrez un modèle par défaut et/ou hérité en vue de le modifier :

  • Le navigateur d’é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 workflows par défaut se trouvent dans /libs
    • Les workflows hérités se trouvent dans /etc
      Sélection
      ​Modifier :
  • prendre une copie du flux de travail dans /conf
  • Le navigateur d’étapes devient accessible.
  • Il est possible d’effectuer des modifications.
REMARQUE

Pour plus d’informations, voir Emplacements des modèles de workflow.

wf-22

Ajout d’une étape à un modèle

Vous devez ajouter des étapes à votre modèle pour représenter l’activité à effectuer ; chaque étape exécute une activité bien précise. Une instance AEM standard propose une sélection de composants d’étape.

Lorsque vous modifiez un modèle, les étapes disponibles sont affichées dans les différents groupes du Navigateur d’étapes. Par exemple :

wf-10

REMARQUE

Pour plus d’informations sur les principaux composants d’étape qui sont installés avec AEM, voir Référence des étapes du workflow.

Pour ajouter des étapes à votre modèle de workflow, procédez comme suit :

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

  2. Ouvrez le navigateur d’étapes à l’aide de l’option Activer/désactiver le panneau latéral située tout à gauche de la barre d’outils supérieure. Vous pouvez effectuer les opérations suivantes :

    • Filtrer des étapes spécifiques.
    • Utiliser le menu déroulant pour limiter la sélection à un groupe d’étapes bien défini.
    • Sélectionnez l’icône Afficher la description wf-stepinfo-icon pour afficher plus de détails sur l’étape appropriée.

    wf-02

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

    Par exemple, une étape de participant.

    Une fois l’étape ajoutée au flux, vous pouvez la configurer.

    wf-03

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

    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 l’éditeur de page.

    Vous pouvez également réduire/développer les étapes fractionnées à l’aide de l’option de barre d’outils : wf-collapse-expanded-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.

    Pour plus d’informations, voir Synchronisation de votre workflow.

Configuration d’une étape de workflow

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

  1. Pour ouvrir la boîte de dialogue Propriétés des étapes pour une étape, deux possibilités s’offrent à vous :

    • Cliquez/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.

    REMARQUE

    Pour plus d’informations sur les principaux composants d’étape qui sont installés avec AEM, voir Référence des étapes du workflow.

  2. Configurez les propriétés des étapes suivant vos besoins ; les propriétés disponibles dépendent du type d’étape. Plusieurs onglets peuvent également être disponibles. Par exemple, l’étape par défaut Participant, présentée dans un nouveau flux de travail 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.

    Pour plus d’informations, voir Synchronisation de votre workflow.

Création d’un workflow transitoire

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

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

  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-le 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.

    Pour plus d’informations, voir Synchronisation de votre workflow.

REMARQUE

Lorsque vous exécutez un workflow en mode transitoire, AEM ne stocke aucun historique de workflow. Par conséquent, Chronologie n’affiche aucune information relative au workflow.

Mise à disposition des modèles de workflow dans l’interface utilisateur tactile

Si un modèle de processus est présent dans l’interface utilisateur classique, mais qu’il manque dans le menu contextuel de sélection du rail Chronologie de l’interface utilisateur tactile, suivez la configuration pour le rendre disponible. Les étapes suivantes illustrent l’utilisation du modèle de flux de travaux intitulé Demande d’Activation.

  1. Vérifiez que le modèle n’est pas disponible dans l’interface utilisateur tactile. Accédez à un fichier à l'aide du chemin /assets.html/content/dam. Sélectionnez un fichier. Ouvrez Chronologie dans le rail gauche. Cliquez sur Processus du Début et vérifiez 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 Titre comme DAM et Nom comme dam. Sélectionnez Envoyer.
    Créer une balise dans le modèle de workflow

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

  5. Sélectionnez Modifier, ouvrez le menu Informations sur la page, puis sélectionnez Ouvrir les propriétés et accédez à l'onglet Données de base (s'il n'est pas déjà ouvert).

  6. Ajoutez le champ Workflow : DAM à Balises. Confirmez la sélection à l’aide de la case à cocher (cochez).

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

  8. Terminez le processus avec Sync. Le processus est désormais disponible dans l’interface utilisateur tactile.

Configuration d’un workflow pour la prise en charge multi-ressource

Vous pouvez configurer un modèle de workflow pour la 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 à modifier.

  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 de ressources multiples (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.

    Pour plus d’informations, voir Synchronisation de votre workflow.

Configuration des phases de workflow (qui affichent la progression du workflow)

Les phases de workflow vous aident à visualiser la progression d’un workflow lors de la gestion de tâches.

ATTENTION

Si les phases de workflow sont définies dans Propriétés de la page, mais qu’elles ne sont utilisées pour aucune étape du workflow, aucune progression ne sera affichée dans la barre (quelle que soit l’étape actuelle du workflow).

Les phases qui doivent être disponibles 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 de phase. Vous pouvez définir un nombre illimité de phases pour le modèle de workflow.

Pour définir des Phases pour votre workflow, procédez comme suit :

  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 l’onglet Phases.

  3. Ajoutez (et positionnez) les Phases requises. 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. Affectez une phase à chacune des étapes du modèle de workflow. Par exemple :

    wf-09

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

    Étape Évaluation
    Étape 1 Créer
    Étape 2 Créer
    Étape 3 Réviser
    É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.

    Pour plus d’informations, voir Synchronisation de votre workflow.

Exportation d’un modèle de workflow dans un module

Pour exporter un modèle de workflow dans un module, procédez comme suit :

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

    1. Accédez au Gestionnaire de modules via Outils, Déploiement, Modules.

    2. Cliquez sur Créer un package.

    3. Indiquez le Nom du package, ainsi que d’autres détails suivant les besoins.

    4. Cliquez sur OK.

  2. Cliquez sur Modifier dans la barre d’outils de votre nouveau module.

  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électionnez Ajouter un filtre et indiquez le chemin d’accès de votre modèle de workflow d’exécution :

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

    Cliquez sur Terminé.

  6. Ajoutez des filtres pour tout script personnalisé utilisé 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 module.

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

Utilisation de workflow pour traiter des envois du formulaire

Vous pouvez configurer un formulaire pour qu’il soit traité par le workflow sélectionné. Lorsque des utilisateurs envoient le formulaire, une instance de workflow est créée avec les données de l’envoi en tant que charge utile.

Pour configurer le workflow afin qu’il soit utilisé avec votre formulaire, procédez comme suit :

  1. Créez une page, puis ouvrez-la à des fins d’édition.

  2. Ajoutez un composant Formulaire à la page.

  3. Configurez le composant Début du formulaire qui s’est affiché dans la page.

  4. Utilisez Processus du Début pour sélectionner le processus souhaité parmi ceux disponibles :

    wf-12

  5. Appuyez sur la coche pour confirmer la nouvelle configuration du formulaire.

Test de workflow

Lorsque vous testez un workflow, il est conseillé d’utiliser divers types de charge utile, y compris des types différents de ceux pour lesquels il a été développé. Par exemple, s’il est prévu que votre workflow traite des ressources, testez-le en définissant une page comme charge utile et assurez-vous qu’il ne génère pas d’erreurs.

Vous pouvez, par exemple, tester votre nouveau workflow comme suit :

  1. Début du modèle de processus à partir de la console.

  2. Définissez la Charge utile et confirmez-la.

  3. Prenez les mesures nécessaires au bon déroulement du workflow.

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

Vous pouvez également configurer AEM pour qu’il affiche des messages DEBUG dans les fichiers journaux. Voir Journalisation pour plus d'informations et une fois le développement terminé, redéfinissez le Niveau de journal sur Info.

Exemples

Exemple : création d’un workflow (simple) pour accepter ou rejeter une demande de publication

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

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

    Le nouveau workflow sera composé des éléments suivants :

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

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

  4. Pour ouvrir la boîte de dialogue des propriétés, deux possibilités s’offrent à vous :

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

  6. Ouvrez l’onglet Utilisateur/Groupe :

    • Activez Avertir l’utilisateur par courrier électronique.
    • Sélectionnez Administrator ( admin) pour le champ Utilisateur/Groupe.
  7. Appuyez sur la coche pour confirmer les mises à jour.

    Vous serez redirigé vers l'aperçu du modèle de flux de travail, où l'étape du participant aura été renommée Validate Content.

  8. Faites glisser un Ou fractionner sur le workflow et placez-le entre Validate Content et Fin de flux.

  9. Ouvrez la Division OU en vue de la configuration.

  10. Configurer :

    • Commun : spécifiez le nom partagé.

    • Branche 1 : sélectionnez Itinéraire par défaut.

    • Branche 2 : assurez-vous que l’option Itinéraire par défaut n’est pas sélectionnée.

  11. Confirmez les mises à jour apportées à la Division OU.

  12. Faites glisser une Étape de participant sur 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

    • Notifier l'utilisateur par courriel : Activez cette option pour que l’utilisateur soit averti par courrier électronique.

  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 de l’éditeur.

  14. Cliquez sur Synchronisation (barre d’outils de l’éditeur) afin de générer le modèle d’exécution.

    Pour plus d’informations, voir Synchronisation de votre workflow.

    Votre nouveau modèle de workflow va se présenter comme suit :

    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-72

Exemple : Définition d'une règle pour une division OU à l'aide d'un script ECMA

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

Pour définir une règle OU, procédez comme suit :

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

    /apps/myapp/workflow/scripts

    REMARQUE

    Les scripts doivent avoir une fonction check() qui renvoie une valeur booléenne.

  2. Modifiez le workflow et ajoutez la Division OU au modèle.

  3. Modifiez les propriétés de la Branche 1 de la Division OU :

    • Définissez ce paramètre comme l'itinéraire par défaut en définissant Valeur sur true.

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

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

    REMARQUE

    Vous pouvez changer l'ordre de la branche 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 Utilisateur/Groupe est défini.

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

    Pour plus d’informations, voir Synchronisation de votre workflow.

Fonction Check()

L’exemple de script suivant renvoie true si le noeud 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

Vous pouvez personnaliser n’importe lequel des workflows personnalisés. Pour bénéficier d’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. Il se déclenche automatiquement lorsqu’un auteur de contenu ne dispose pas des droits de réplication appropriés. Voir Personnalisation de la création de page - Personnalisation du processus de demande d’Activation pour plus d’informations.

Sur cette page