Las variables de tipo ArrayList se han introducido en AEM Forms 6.5. Un caso de uso común para usar la variable ArrayList es definir las rutas personalizadas que se utilizarán en AssignTask.
Para utilizar la variable ArrayList en un flujo de trabajo AEM, debe crear un formulario adaptable que genere elementos repetitivos en los datos enviados. Una práctica habitual es definir un esquema que contenga un elemento de matriz. A los efectos de este artículo, he creado un esquema JSON simple que contiene elementos de matriz. El caso de uso es que un empleado rellene un informe de gastos. En el informe de gastos, capturamos el nombre de administrador del remitente y el nombre de administrador del administrador. Los nombres del administrador se almacenan en una matriz denominada cadena de administración. La captura de pantalla siguiente muestra el formulario del informe de gastos y los datos del envío de Forms adaptable.
A continuación se muestran los datos del envío del formulario adaptable. El formulario adaptable se basaba en el esquema JSON en el que los datos enlazados al esquema se almacenan en el elemento de datos del elemento afBoundData. La cadena de administración es una matriz y es necesario rellenar la ArrayList con el elemento name del objeto dentro de la matriz de la cadena de administración.
{
"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"
}
}
}
Para inicializar la variable ArrayList de la cadena de subtipo, puede utilizar la Notación de datos JSON o el modo de asignación XPath. La siguiente captura de pantalla muestra cómo rellenar una variable ArrayList llamada CustomRoutes usando la Notación de datos JSON. Asegúrese de que está señalando a un elemento en un objeto de matriz como se muestra en la captura de pantalla siguiente. Se está rellenando el objeto ArrayList de CustomRoutes con los nombres del objeto de matriz de cadena de administración.
A continuación, se utiliza la ArrayList de CustomRoutes para rellenar las rutas en el componente AssignTask
Una vez que la variable ArrayList de CustomRoutes se inicializa con los valores de los datos enviados, las rutas del componente AssignTask se rellenan con la variable CustomRoutes. La captura de pantalla siguiente muestra las rutas personalizadas en una tarea Assign
Para probar este flujo de trabajo en su sistema, siga los siguientes pasos