Impostazione del valore dell’elemento dati JSON nel flusso di lavoro AEM Forms setting-value-of-json-data-element-in-aem-forms-workflow
Poiché un modulo adattivo viene indirizzato a utenti diversi nel flusso di lavoro AEM, è necessario nascondere o disabilitare alcuni campi o pannelli in base alla persona che lo revisiona. Per soddisfare questi casi d’uso, in genere si imposta il valore di un campo nascosto. In base al valore di questo campo nascosto, le regole business possono essere create per nascondere/disabilitare i pannelli o i campi appropriati.
In AEM Forms OSGi - dobbiamo creare un bundle OSGi personalizzato per impostare il valore dell’elemento dati JSON. Il bundle viene fornito come parte di questa esercitazione.
Utilizziamo Process Step nel flusso di lavoro dell’AEM. Associamo il bundle OSGi "Set Value of Element in Json" a questo passaggio del processo.
È necessario trasmettere due argomenti al bundle del valore impostato. Il primo argomento è il percorso dell’elemento di cui è necessario impostare il valore. Il secondo argomento è il valore che deve essere impostato.
Ad esempio, nella schermata precedente, stiamo impostando il valore dell'elemento initialStep su "N"
afData.afUnboundData.data.initialStep,N
Nel nostro esempio, abbiamo un semplice modulo di richiesta Time Off (Ferie). L'iniziatore del presente modulo indica il proprio nome e le date delle ferie. All’invio, questo modulo viene inviato al "manager" per la revisione. Quando il manager apre il modulo, i campi del primo pannello vengono disattivati. Questo perché abbiamo impostato il valore dell’elemento del passaggio iniziale nei dati JSON su N.
In base al valore dei campi del passaggio iniziale, viene visualizzato il pannello approvatore in cui il "responsabile" può approvare o rifiutare la richiesta.
Date un'occhiata alle regole impostate su "Passaggio iniziale". In base al valore del campo initialStep, vengono recuperati i dettagli dell’utente utilizzando il Modello dati modulo, vengono compilati i campi appropriati e vengono nascosti/disabilitati i pannelli appropriati.
Per distribuire le risorse sul sistema locale:
-
Scarica e distribuisci il bundle setvalue. Questo è il bundle OSGI personalizzato che ti consente di impostare i valori di un elemento nei dati JSON inviati.
-
Scarica ed estrai il contenuto del file zip
- Puntare il browser a Gestione pacchetti
- Importa e installa SetValueOfElementInJSONDataWorkflow.zip.Questo pacchetto include il modello di flusso di lavoro di esempio e il modello dati del modulo associati al modulo.
- Puntare il browser a Gestione pacchetti
-
Puntare il browser a Forms e documenti
-
Fai clic su Crea. | Caricamento file
-
Carica il file TimeOffRequestForm.zip
Questo modulo è stato creato con AEM Forms 6.4. Assicurati di utilizzare AEM Forms 6.4 o versione successiva -
Apri il modulo
-
Compila le date di inizio e fine e invia il modulo.
-
Vai a "Posta in arrivo"
-
Aprire il modulo associato all'attività.
-
Osserva che i campi nel primo pannello sono disattivati.
-
Osserva che ora è visibile il pannello per approvare o rifiutare la richiesta.
Puoi abilitare la registrazione di debug abilitando il logger per com.aemforms.setvalue.core.SetValueInJson da qui