Utilizzo di LDAP con AEM Forms Workflow

Assegnazione dell'attività del flusso di lavoro di AEM Forms al manager dell'autore dell'invio.

Quando si utilizza un modulo adattivo nel flusso di lavoro AEM, è necessario assegnare dinamicamente un’attività al manager dell’autore dell’invio del modulo. Per eseguire questo caso d’uso, dovremo configurare l’AEM con Ldap.

I passaggi necessari per configurare AEM con LDAP sono descritti in dettagli qui.

Ai fini del presente articolo, allego i file di configurazione utilizzati per configurare l’AEM con Adobe Ldap. Questi file sono inclusi nel pacchetto che può essere importato utilizzando Gestione pacchetti.

Nella schermata seguente, recuperiamo tutti gli utenti appartenenti a un particolare centro di costo. Se desideri recuperare tutti gli utenti nel tuo LDAP, non puoi utilizzare il filtro aggiuntivo.

Configurazione LDAP

Nella schermata seguente, assegniamo i gruppi agli utenti recuperati da LDAP all’AEM. Osserva il gruppo forms-users assegnato agli utenti importati. L’utente deve essere membro di questo gruppo per interagire con AEM Forms. La proprietà manager viene memorizzata anche nel nodo profile/manager in AEM.

Synchandler

Dopo aver configurato il protocollo LDAP e aver importato gli utenti in AEM, possiamo creare un flusso di lavoro che assegnerà l’attività al manager dei mittenti. Ai fini di questo articolo, abbiamo sviluppato un semplice flusso di lavoro di approvazione in un unico passaggio.

Nel primo passaggio del flusso di lavoro, il valore di initialstep viene impostato su No. La regola business nel modulo adattivo disabilita il pannello "Dettagli mittente" e mostra il pannello "Approvato da" in base al valore del passaggio iniziale.

Il secondo passaggio assegna l'attività al manager dell'autore della sottomissione. Il manager dell’autore dell’invio utilizza il codice personalizzato.

Assegna attività

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

}

Lo snippet di codice è responsabile del recupero dell’ID dei manager e dell’assegnazione dell’attività al manager.

Acquisiamo la persona che ha avviato il flusso di lavoro. Viene quindi ottenuto il valore della proprietà manager.

A seconda di come la proprietà manager viene memorizzata nel proprio LDAP, potrebbe essere necessario eseguire alcune modifiche delle stringhe per ottenere l'ID manager.

Leggi questo articolo per implementare il tuo SelettorePartecipante .

Per eseguire il test nel sistema (ad Adobe, i dipendenti possono utilizzare questo esempio preconfigurato)

NOTE
Questo codice personalizzato per l’estrazione del nome del manager è stato testato rispetto a LDAP Adobe. Se esegui questo codice su un LDAP diverso, dovrai modificare o scrivere la tua implementazione getParticipant per ottenere il nome del manager.
recommendation-more-help
8de24117-1378-413c-a581-01e660b7163e