Utiliser LDAP avec le workflow AEM Forms

Affecter une tâche de workflow AEM Forms à la personne responsable de l’auteur ou de l’autrice.

Lors de l’utilisation d’un formulaire adaptatif dans le workflow AEM, vous souhaitez affecter de manière dynamique une tâche à la personne responsable de l’auteur ou de l’autrice du formulaire. Pour ce cas d’utilisation, nous devons configurer AEM avec LDAP.

Les étapes de configuration d’AEM avec LDAP sont expliquées en détail ici.

Pour les besoins de cet article, je joins les fichiers de configuration utilisés pour configurer AEM avec le LDAP d’Adobe. Ces fichiers sont inclus dans le package qui peut être importé à l’aide du gestionnaire de packages.

Dans la capture d’écran ci-dessous, nous récupérons tous les utilisateurs et utilisatrices appartenant à un centre de coût spécifique. Si vous souhaitez récupérer tous les utilisateurs et utilisatrices de votre LDAP, vous ne pouvez pas utiliser le filtre supplémentaire.

Configuration LDAP.

Dans la capture d’écran ci-dessous, nous attribuons les groupes aux utilisateurs et utilisatrices récupérés depuis LDAP dans AEM. Prêtez attention au groupe forms-users attribué aux utilisateurs et utilisatrices importés. L’utilisateur ou l’utilisatrice doit être membre de ce groupe pour interagir avec AEM Forms. Nous stockons également la propriété manager sous le nœud profile/manager dans AEM.

Synchandler.

Une fois que vous avez configuré le protocole LDAP et importé des utilisateurs et des utilisatrices dans AEM, nous pouvons créer un workflow qui affectera la tâche à la personne responsable de l’auteur ou de l’autrice. Pour les besoins de cet article, nous avons développé un simple workflow d’approbation en une seule étape.

La première étape du workflow définit la valeur de l’étape initiale sur Non. La règle commerciale du formulaire adaptatif désactive le panneau « Détails de l’auteur » et affiche le panneau « Approuvé par » en fonction de la valeur de l’étape initiale.

La deuxième étape affecte la tâche à la personne responsable de l’auteur ou de l’autrice. Nous obtenons la personne responsable de l’auteur ou de l’autrice à l’aide du code personnalisé.

Affectation d’une tâche.

public String getParticipant(WorkItem workItem, WorkflowSession wfSession, MetaDataMap arg2) throws WorkflowException{
resourceResolver = wfSession.adaptTo(ResourceResolver.class);
UserManager userManager = resourceResolver.adaptTo(UserManager.class);
Authorizable workflowInitiator = userManager.getAuthorizable(workItem.getWorkflow().getInitiator());
.
.
String managerPorperty = workflowInitiator.getProperty("profile/manager")[0].getString();
.
.

}

L’extrait de code est chargé de récupérer l’ID de la personne responsable et de lui affecter la tâche.

Nous contactons la personne qui a lancé le workflow. Nous obtenons ensuite la valeur de la propriété manager.

Selon la manière dont la propriété manager est stockée dans votre LDAP, vous devrez peut-être effectuer une manipulation de chaîne pour obtenir l’ID de la personne responsable.

Veuillez lire cet article pour mettre en œuvre votre propre ParticipantChooser.

Pour le tester sur votre système (pour les employées et employés d’Adobe, vous pouvez utiliser cet exemple prêt à l’emploi) :

NOTE
Ce code personnalisé d’extraction du nom de la personne responsable a été testé par rapport au LDAP d’Adobe. Si vous exécutez ce code sur un autre LDAP, vous devrez modifier ou écrire votre propre implémentation getParticipant pour obtenir le nom de la personne responsable.
recommendation-more-help
8de24117-1378-413c-a581-01e660b7163e