Festlegen des Werts des JSON-Datenelements im AEM Forms-Workflow

Da ein adaptives Formular in AEM Workflow an verschiedene Benutzer weitergeleitet wird, müssen bestimmte Felder oder Bereiche je nach Benutzer, die das Formular überprüfen, ausgeblendet oder deaktiviert werden. Um diese Anwendungsfälle zu erfüllen, legen wir normalerweise den Wert eines ausgeblendeten Felds fest. Basierend auf den Werten dieses ausgeblendeten Felds können Geschäftsregeln erstellt werden, um entsprechende Bereiche oder Felder auszublenden/zu deaktivieren.

Festlegen des Werts eines Elements in den JSON-Daten

In AEM Forms OSGi müssen wir ein benutzerdefiniertes OSGi-Bundle schreiben, um den Wert des JSON-Datenelements festzulegen. Das Bundle wird im Rahmen dieses Tutorials bereitgestellt.

Wir verwenden Prozessschritt in AEM Workflow. Wir verknüpfen dieses Prozessschritt mit dem OSGi-Bundle "Set Value of Element in Json".

Wir müssen zwei Argumente an das Set Value Bundle übergeben. Das erste Argument ist der Pfad zum Element, dessen Wert festgelegt werden muss. Das zweite Argument ist der festzulegende Wert.

Im obigen Screenshot legen wir beispielsweise den Wert des Elements "intialStep"auf "N"fest

afData.afUnboundData.data.initialStep,N

In unserem Beispiel haben wir ein einfaches Antragsformular für die Zeit vor der Abreise. Der Initiator dieses Formulars gibt seinen Namen und die Uhrzeit der Veröffentlichung ein. Bei der Übermittlung wird dieses Formular zur Überprüfung an den "Manager"gesendet. Wenn der Manager das Formular öffnet, sind die Felder im ersten Bedienfeld deaktiviert. Dies liegt daran, dass wir den Wert des Elements des ersten Schritts in den JSON-Daten auf N festgelegt haben.

Basierend auf dem Wert der Felder für den ersten Schritt zeigen wir das Fenster Genehmiger , in dem der "Manager"die Anfrage genehmigen oder ablehnen kann.

Bitte schauen Sie sich die Regeln an, die gegen "Ursprünglicher Schritt"festgelegt wurden. Basierend auf dem Wert des Felds initialStep rufen wir die Benutzerdetails mithilfe des Formulardatenmodells ab, füllen die entsprechenden Felder aus und blenden/deaktivieren die entsprechenden Bereiche ein.

So stellen Sie die Assets auf Ihrem lokalen System bereit:

HINWEIS

Da wir das adaptive Formular mithilfe des Benutzerprofils vorab ausfüllen, stellen Sie sicher, dass die Administrator-Benutzerprofilinformationen vorhanden sind. Stellen Sie mindestens sicher, dass Sie die Feldwerte FirstName, LastName und Email festgelegt haben.
Sie können die Debug-Protokollierung aktivieren, indem Sie die Protokollfunktion für com.aemforms.setvalue.core.SetValueInJson von hier aktivieren.

HINWEIS

Das OSGi-Bundle zum Festlegen des Werts von Datenelementen in JSON Data unterstützt derzeit die Möglichkeit, einen Elementwert gleichzeitig festzulegen. Wenn Sie mehrere Elementwerte festlegen möchten, müssen Sie den Prozessschritt mehrmals verwenden.

Stellen Sie sicher, dass der Datendateipfad in den Sendeoptionen des adaptiven Formulars auf "Data.xml"festgelegt ist. Dies liegt daran, dass der Code im Prozessschritt nach einer Datei namens Data.xml unter dem Payload-Ordner sucht.

Auf dieser Seite