Utilisation du protocole LDAP avec le flux de travaux AEM Forms

Affectation d’une tâche de processus AEM Forms au responsable de l’émetteur.

Lors de l’utilisation de formulaires adaptatifs dans AEM processus, vous souhaitez affecter de manière dynamique une tâche au gestionnaire de l’auteur du formulaire. Pour ce faire, nous devrons configurer AEM avec Ldap.

Les étapes nécessaires pour configurer AEM avec LDAP sont décrites en détails ici.

Aux fins de cet article, je joins les fichiers de configuration utilisés pour configurer AEM avec Adobe Ldap. 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 appartenant à un centre de coûts particulier. Si vous souhaitez récupérer tous les utilisateurs de votre protocole LDAP, vous ne pouvez pas utiliser le filtre supplémentaire.

Configuration du protocole LDAP

Dans la capture d’écran ci-dessous, nous affectons les groupes aux utilisateurs récupérés de LDAP dans AEM. Notez le groupe d’utilisateurs de formulaires affecté aux utilisateurs importés. L’utilisateur doit être membre de ce groupe pour pouvoir interagir avec AEM Forms. Nous stockons également la propriété manager sous le noeud profil/manager dans AEM.

Synchandler

Une fois que vous avez configuré le protocole LDAP et importé des utilisateurs dans AEM, nous pouvons créer un processus qui affectera la tâche au gestionnaire des auteurs d’envoi. Aux fins de cet article, nous avons développé un processus d'approbation simple en une seule étape.

La première étape du processus définit la valeur de l’étape initiale sur Non. La règle de fonctionnement du formulaire adaptatif désactive le panneau "Détails de l’émetteur" et affiche le panneau "Approuvé par" en fonction de la valeur de l’étape initiale.

La deuxième étape affecte la tâche au responsable de l'émetteur. Nous obtenons le gestionnaire de l’expéditeur à l’aide du code personnalisé.

Assigner 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();
.
.

}

Le fragment de code est chargé de récupérer l'identifiant de gestionnaire et d'affecter la tâche au gestionnaire.

Nous obtenons la personne qui a lancé le processus. 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 manipuler les chaînes pour obtenir l’identifiant manager.

Veuillez lire cet article pour implémenter votre propre ParticipantChooser .

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

REMARQUE

Ce code personnalisé permettant d’extraire le nom du gestionnaire a été testé par rapport au protocole LDAP 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 du responsable.

Sur cette page