Wert eines XML-Elements in von Adaptive Forms gesendeten Daten im AEM Forms OSGI-Workflow festlegen.
LiveCycle verfügte früher über eine Komponente mit festgelegtem Wert, mit der Sie den Wert eines XML-Elements festlegen konnten.
Basierend auf diesem Wert können Sie bestimmte Felder oder Bereiche des Formulars ausblenden/deaktivieren, wenn das Formular mit der XML-Datei ausgefüllt ist.
In AEM Forms OSGi müssen wir ein benutzerdefiniertes OSGi-Bundle schreiben, um den Wert in der XML 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 XML".
Wir müssen zwei Argumente an das Set Value Bundle übergeben. Das erste Argument ist der XPath des XML-Elements, dessen Wert festgelegt werden muss. Das zweite Argument ist der festzulegende Wert.
Im obigen Screenshot legen wir beispielsweise den Wert des ersten Schritts auf "N"fest.
Basierend auf diesem Wert werden bestimmte Bedienfelder im Adaptiven Forms ausgeblendet oder angezeigt.
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 Übermittlung wird dieses Formular zur Überprüfung an "admin"gesendet. Wenn der Administrator das Formular öffnet, sind die Felder im ersten Bedienfeld deaktiviert. Dies liegt daran, dass wir den Wert des Elements des ersten Schritts in der XML auf "N"festgelegt haben.
Basierend auf dem Wert der ursprünglichen Schrittfelder zeigen wir das zweite Fenster, in dem der "Administrator"die Anfrage genehmigen oder ablehnen kann
Sehen Sie sich die mit dem Regeleditor festgelegten Regeln im Feld "Zeit von angefordert von"an.
Gehen Sie wie folgt vor, um die Assets auf Ihrem lokalen System bereitzustellen:
Bereitstellen des Beispielpakets. Dies ist das benutzerdefinierte OSGi-Bundle, mit dem Sie die Werte eines Elements in den gesendeten XML-Daten festlegen können.
Zeigen Sie Ihren Browser auf Package Manager
Importieren und installieren Sie setValueWorkflow.zip. Dies weist das Beispiel-Workflow-Modell auf.
Zeigen Sie Ihren Browser auf Forms und Dokumente
Klicken Sie auf Erstellen | Datei-Upload
TimeOfRequestForm.zip hochladen
Öffnen Sie die TimeOffRequestform
Füllen Sie die drei erforderlichen Felder aus und senden Sie
Melden Sie sich als "Admin"bei AEM an (falls noch nicht geschehen).
Navigieren Sie zu "AEM Posteingang"
Öffnen Sie das Formular "Überprüfungszeit von Anforderung"
Beachten Sie, dass die Felder im ersten Bedienfeld deaktiviert sind. Dies liegt daran, dass das Formular von einem Validierer geöffnet wird. Beachten Sie außerdem, dass der Bereich für die Genehmigung oder Ablehnung der Anfrage jetzt sichtbar ist.
Sie können die Debug-Protokollierung aktivieren, indem Sie die Protokollfunktion für
com.aemforms.setvalue.core.SetValueinXml
durch Verweis Ihres Browsers auf http://localhost:4502/system/console/slinglog
Stellen Sie sicher, dass der Datendateipfad in den Sendeoptionen des adaptiven Formulars auf "Data.xml"festgelegt ist. Dies liegt daran, dass der Prozessschritt nach einer Datei namens Data.xml im Ordner "Payload"sucht.