Définition de la valeur de l’élément de données JSON dans le processus AEM Forms

Lorsqu’un formulaire adaptatif est acheminé vers différents utilisateurs dans AEM flux de travaux, il est nécessaire de masquer ou désactiver certains champs ou panneaux en fonction de la personne qui le visualise. Pour répondre à ces cas d’utilisation, nous définissons généralement la valeur d’un champ masqué. En fonction des valeurs de ce champ masqué, les règles métier peuvent être créées pour masquer/désactiver les panneaux ou champs appropriés.

Définition de la valeur d’un élément dans les données JSON

Dans AEM Forms OSGI : nous devrons écrire un lot OSGi personnalisé pour définir la valeur de l’élément de données JSON. Le bundle est fourni dans le cadre de ce tutoriel.

Nous utilisons l’étape du processus dans AEM workflow. Nous associons le lot OSGi "Set Value of Element in Json" à cette étape de processus.

Nous devons transmettre deux arguments au lot de valeurs définies. Le premier argument est le chemin d’accès à l’élément dont la valeur doit être définie. Le deuxième argument est la valeur qui doit être définie.

Par exemple, dans la capture d’écran ci-dessus, nous définissons la valeur de l’élément initialStep sur "N"

afData.afUnboundData.data.initialStep,N

Dans notre exemple, nous avons un simple formulaire de demande de désactivation du temps. L'initiateur de ce formulaire remplit son nom et les dates de congé. Lors de l’envoi, ce formulaire est envoyé au "gestionnaire" pour révision. Lorsque le gestionnaire ouvre le formulaire, les champs du premier panneau sont désactivés. Ceci car nous avons défini la valeur de l’élément d’étape initial dans les données JSON sur N.

En fonction de la valeur des champs de l’étape initiale, nous affichons le panneau d’approbateur dans lequel le "responsable" peut approuver ou rejeter la demande.

Veuillez consulter les règles définies par rapport à "Étape initiale". En fonction de la valeur du champ initialStep, nous récupérons les détails de l’utilisateur à l’aide du modèle de données de formulaire, nous renseignons les champs appropriés et masquons/désactivez les panneaux appropriés.

Pour déployer les ressources sur votre système local :

REMARQUE

Puisque nous prérenseignons le formulaire adaptatif à l’aide du profil utilisateur, veillez à ce que les informations de profil utilisateur de l’administrateur soient renseignées. Assurez-vous au minimum d’avoir défini les valeurs des champs FirstName, LastName et Email .
Vous pouvez activer la journalisation de débogage en activant la journalisation pour com.aemforms.setvalue.core.SetValueInJson à partir d’ici

REMARQUE

Le lot OSGi pour définir la valeur des éléments de données dans les données JSON prend actuellement en charge la possibilité de définir une valeur d’élément à la fois. Si vous souhaitez définir plusieurs valeurs d’élément, vous devrez plusieurs fois utiliser l’étape de processus.

Assurez-vous que le chemin d’accès au fichier de données dans les options d’envoi du formulaire adaptatif est défini sur "Data.xml". En effet, le code de l’étape de processus recherche un fichier appelé Data.xml sous le dossier de charge utile.

Sur cette page