Verwenden von LDAP mit AEM Forms Workflow

Zuweisen der Workflow-Aufgabe in AEM Forms an die Vorgesetzten der Absenderin bzw. des Absenders

Bei Verwendung eines adaptiven Formulars in einem AEM-Workflow möchten Sie den Vorgesetzten der Absenderin bzw. des Absenders eine Aufgabe dynamisch zuweisen. Um dieses Anwendungsbeispiel zu erstellen, müssen wir AEM auf Basis von LDAP konfigurieren.

Die Schritte, die zum Konfigurieren von AEM auf Basis von LDAP erforderlich sind, werden hier ausführlich erläutert.

Für diesen Artikel füge ich Konfigurationsdateien an, die beim Konfigurieren von AEM auf Basis von LDAP verwendet werden. Diese Dateien sind im Paket enthalten, das mit Package Manager importiert werden kann.

Im folgenden Screenshot rufen wir alle Benutzenden ab, die zu einem bestimmten Kostenzentrum gehören. Wenn Sie alle Benutzenden in Ihrem LDAP abrufen möchten, können Sie den zusätzlichen Filter nicht verwenden.

LDAP-Konfiguration

Im folgenden Screenshot weisen wir die Gruppen den Benutzenden zu, die von LDAP in AEM abgerufen wurden. Beachten Sie, dass den importierten Benutzenden die Gruppe „forms-users“ zugewiesen ist. Die Benutzerin bzw. der Benutzer muss Mitglied dieser Gruppe sein, um mit AEM Forms interagieren zu können. Außerdem speichern wir die Manager-Eigenschaft unter dem Knoten „profile/manager“ in AEM.

Sync-Handler

Nachdem Sie LDAP konfiguriert und Benutzende in AEM importiert haben, können wir einen Workflow erstellen, der die Aufgabe den Vorgesetzten der Absenderin bzw. des Absenders zuordnet. Für die Zwecke dieses Artikels haben wir einen einfachen, einstufigen Genehmigungs-Workflow entwickelt.

Der erste Schritt im Workflow setzt den Wert von „initialstep“ auf „No“. Die Verfahrensregel im adaptiven Formular deaktiviert das Bedienfeld „Details der Absenderin bzw. des Absenders“ und zeigt das Bedienfeld „Genehmigt von“ basierend auf dem Wert des ersten Schritts an.

Im zweiten Schritt wird die Aufgabe den Vorgesetzten der Absenderin bzw. des Absenders zugewiesen. Wer dieser bzw. diese Vorgesetzte ist, wird mithilfe des benutzerdefinierten Codes abgerufen.

Aufgabe zuweisen

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

}

Der Code-Ausschnitt ist dafür verantwortlich, die Vorgesetzten-ID abzurufen und die Aufgabe der bzw. dem Vorgesetzten zuzuweisen.

Wir erfassen die Person, die den Workflow initiiert hat. Dann rufen wir den Wert der Vorgesetzten-Eigenschaft ab.

Abhängig davon, wie die Vorgesetzten-Eigenschaft in Ihrem LDAP gespeichert ist, müssen Sie möglicherweise erst einige Zeichenfolgen-Manipulationen durchführen, um die Vorgesetzten-ID abzurufen.

Lesen Sie diesen Artikel, um Ihre eigenen ParticipantChooser zu implementieren.

Um dies auf Ihrem System zu testen (Mitarbeitende von Adobe können dieses vorkonfigurierte Beispiel verwenden),

NOTE
Dieser benutzerdefinierte Code zum Extrahieren des Vorgesetzten-Namens 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 der bzw. des Vorgesetzten zu erhalten.
recommendation-more-help
8de24117-1378-413c-a581-01e660b7163e