DocumentazioneAEMTutorial su AEMTutorial su AEM Forms

Impostazione del valore dell’elemento dati JSON nel flusso di lavoro AEM Forms

Ultimo aggiornamento: 26 marzo 2025
  • Si applica a:
  • Experience Manager 6.4
  • Argomenti:
  • Moduli adattivi

Creato per:

  • Esperto
  • Sviluppatore

Poiché un modulo adattivo viene instradato a utenti diversi in AEM Workflow, è necessario nascondere o disabilitare alcuni campi o pannelli in base alla persona che rivede il modulo. 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.

Impostazione del valore di un elemento nei dati JSON

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 Passaggio del processo nel flusso di lavoro di 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 DevelopingWithServiceUserBundle

  • 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 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.

NOTA
Poiché il modulo adattivo viene precompilato utilizzando il profilo utente, assicurati che l'amministratore fornisca informazioni sul profilo utente. Assicurati almeno di aver impostato i valori dei campi Nome, Cognome ed E-mail.
Puoi abilitare la registrazione di debug abilitando il logger per com.aemforms.setvalue.core.SetValueInJson da qui
NOTA
Il bundle OSGi per l’impostazione del valore degli elementi dati nei dati JSON attualmente supporta la possibilità di impostare un valore elemento alla volta. Se si desidera impostare più valori di elemento, sarà necessario utilizzare più volte il passaggio del processo.
Assicurati che il percorso del file di dati nelle opzioni di invio del modulo adattivo sia impostato su "Data.xml". Questo perché il codice nel passaggio del processo cerca un file denominato Data.xml nella cartella del payload.
recommendation-more-help
8de24117-1378-413c-a581-01e660b7163e