Variabile ArrayList nel flusso di lavoro AEM

Le variabili di tipo ArrayList sono state introdotte in AEM Forms 6.5. Un caso d'uso comune per l'utilizzo della variabile ArrayList è quello di definire percorsi personalizzati da utilizzare nell'oggetto AssignTask.

Per utilizzare la variabile ArrayList in un flusso di lavoro AEM, è necessario creare un modulo adattivo che generi elementi ripetuti nei dati inviati. Una pratica comune consiste nel definire uno schema contenente un elemento array. Ai fini di questo articolo, ho creato un semplice schema JSON contenente elementi array. Il caso d'uso è quello di un dipendente che compila una nota spese. Nella nota spese, acquisiamo il nome del responsabile del mittente e il nome del manager del responsabile. I nomi del manager vengono memorizzati in un array denominato managerchain. La schermata seguente mostra il modulo della nota spese e i dati dell’invio di Moduli adattivi.

rapporto costi

Di seguito sono riportati i dati dell’invio del modulo adattivo. Il modulo adattivo era basato sullo schema JSON, i dati associati allo schema vengono memorizzati nell'elemento dati dell'elemento afBoundData. La catena di gestione è un array e dobbiamo compilare ArrayList con l'elemento nome dell'oggetto all'interno dell'array della catena di gestione.

{
    "afData": {
        "afUnboundData": {
            "data": {
                "numericbox_2762582281554154833426": 700
            }
        },
        "afBoundData": {
            "data": {
                "Employee": {
                    "Name": "Conrad Simms",
                    "Department": "IT",
                    "managerchain": [{
                        "name": "Gloria Rios"
                    }, {
                        "name": "John Jacobs"
                    }]
                },
                "expense": [{
                    "description": "Hotel",
                    "amount": 300
                }, {
                    "description": "Air Fare",
                    "amount": 400
                }]
            }
        },
        "afSubmissionInfo": {
            "computedMetaInfo": {},
            "stateOverrides": {},
            "signers": {},
            "afPath": "/content/dam/formsanddocuments/helpx/travelexpensereport",
            "afSubmissionTime": "20190402102953"
            }
        }
}

Per inizializzare la variabile ArrayList della stringa di sottotipo è possibile utilizzare la modalità di mappatura JSON Dot Notation o XPath. La schermata seguente mostra la compilazione di una variabile ArrayList denominata CustomRoutes utilizzando la notazione del punto JSON. Assicurati di puntare a un elemento in un oggetto array come mostrato nella schermata sottostante. Compilazione dell'oggetto ArrayList CustomRoutes con i nomi dell'oggetto array managerchain in corso.
L'ArrayList CustomRoutes viene quindi utilizzato per popolare i cicli nel componente AssignTask
percorsi personalizzati
Una volta inizializzata la variabile ArrayList CustomRoutes con i valori dei dati inviati, i percorsi del componente AssignTask vengono quindi compilati utilizzando la variabile CustomRoutes. La schermata seguente mostra i percorsi personalizzati in un oggetto AssignTask
asingtask

Per testare questo flusso di lavoro sul sistema, segui i seguenti passaggi

  • Scarica e salva il file ArrayListVariable.zip nel file system
  • Importare il file zip utilizzando Gestione pacchetti AEM
  • Apri il modulo TravelExpenseReport
  • Inserire un paio di spese e i nomi dei 2 manager
  • Premi il pulsante Invia
  • Apri la inbox
  • Verrà visualizzata una nuova attività denominata "Assegna a amministratore spese"
  • Apri il modulo associato all’attività
  • Dovresti visualizzare due percorsi personalizzati con i nomi dei manager
    Esplora il flusso di lavoro ReviewExpenseReportWorkflow. Questo flusso di lavoro utilizza la variabile ArrayList, la variabile di tipo JSON, l'editor di regole nel componente Or-Split

In questa pagina