Verwenden von LDAP mit AEM Forms Workflow

Zuweisen der AEM Forms Workflow-Aufgabe zum Manager des Absenders.

Bei Verwendung des adaptiven Formulars im Arbeitsablauf AEM möchten Sie dem Manager des Formularübermittlers dynamisch eine Aufgabe zuweisen. Um diesen Anwendungsfall zu erreichen, müssen wir AEM mit Ldap konfigurieren.

Die zum Konfigurieren von AEM mit LDAP erforderlichen Schritte werden hier im Detail beschrieben.🔗

Für die Zwecke dieses Artikels füge ich Konfigurationsdateien an, die beim Konfigurieren von AEM mit Adobe LDAP verwendet werden. Diese Dateien sind im Paket enthalten, das mit dem Paketmanager importiert werden kann.

Im folgenden Screenshot holen wir alle Benutzer ein, die zu einer bestimmten Kostenstelle gehören. Wenn Sie alle Benutzer in Ihrem LDAP abrufen möchten, können Sie den Extra-Filter nicht verwenden.

LDAP-Konfiguration

Im folgenden Screenshot weisen wir die Gruppen den Benutzern zu, die von LDAP in AEM geholt wurden. Beachten Sie die den importierten Benutzern zugewiesene Gruppe "Formularbenutzer". Der Benutzer muss Mitglied dieser Gruppe sein, um mit AEM Forms interagieren zu können. Wir speichern die Managereigenschaft auch unter dem Profil/Manager-Knoten in AEM.

Synchandler

Nachdem Sie LDAP konfiguriert und Benutzer in AEM importiert haben, können wir einen Workflow erstellen, der die Aufgabe dem Manager des Absenders zuweist. Für die Zwecke dieses Artikels haben wir einen einfachen einstufigen Genehmigungsarbeitsablauf entwickelt.

Im ersten Schritt im Workflow legen Sie den Wert für initialstep auf Nein fest. Die Geschäftsregel im adaptiven Formular deaktiviert das Bedienfeld "Details des Absenders"und zeigt das Bedienfeld "Genehmigt von"basierend auf dem Wert des ersten Schritts an.

Im zweiten Schritt wird die Aufgabe dem Manager des Absenders zugewiesen. Wir erhalten den Manager des Absenders mit dem benutzerspezifischen Code.

Assign Task

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

}

Das Codefragment ist dafür verantwortlich, die Manager-ID abzurufen und die Aufgabe dem Manager zuzuweisen.

Wir erhalten die Person, die den Workflow initiiert hat. Dann erhalten wir den Wert der Managereigenschaft.

Je nachdem, wie die Managereigenschaft in Ihrem LDAP gespeichert wird, müssen Sie möglicherweise einige Zeichenfolgen bearbeiten, um die Manager-ID abzurufen.

Bitte lesen Sie diesen Artikel, um Ihre eigenen ParticipantChooser zu implementieren.

Um dies auf Ihrem System zu testen (Für Adobe-Mitarbeiter können Sie dieses Beispiel standardmäßig verwenden)

HINWEIS

Dieser benutzerspezifische Code zum Extrahieren des Managernamens wurde mit Adobe LDAP getestet. Wenn Sie diesen Code mit einem anderen LDAP ausführen, müssen Sie Ihre eigene getParticipant-Implementierung ändern oder schreiben, um den Namen des Managers abzurufen.

Auf dieser Seite

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now