Crear un ProcessModel
- Abra la aplicación ABBYYFlexiCapture en Appian Designer y haga clic en New → ProcessModel. En el cuadro de diálogo que se abre, complete el campo Name e indique la ruta de la carpeta donde se guardará el proceso. Haga clic en Create & Edit.
- Modifique la configuración del proceso eliminando los siguientes nodos en la pestaña Process Modeler:
- Start Event;
- End Event;
- XOR;
- Delete Folder;
- Delete Document;
- Delete from Data Store Entities.
También puede hacer doble clic en un nodo para modificarlo.
- Vuelva a Appian Designer para agregar un cuadro de diálogo que pida al usuario que confirme la eliminación del registro. Para ello, haga clic en New → Interface, especifique un nombre para la interfaz y haga clic en Create & Edit.
- En el editor de código que se abre, cambie de Design View a Expression View y pegue el siguiente código:
- En el cuadro de diálogo Interface Input, agregue una variable cancel de tipo Booleano.
- Guarde la interfaz y vuelva a editar su modelo de proceso. Haga clic en Archivo → Propiedades y agregue la siguiente variable en la pestaña Variables:
- recordId de tipo Número (entero)
- DataStoreEntity de tipo Data Store Entity (una constante que vincula el almacén de datos con el tipo de datos)
- Abra la pestaña Process Start Form, seleccione la opción Select an interface option y agregue la interfaz recién creada, que solicitará la confirmación del usuario al eliminar un registro. Se abrirá un cuadro de diálogo preguntándole si desea importar las variables de la interfaz a la lista de variables del proceso. Haga clic en Sí. Podrá usar las variables agregadas en los nodos.
- El nodo Cancel (XOR) contiene la siguiente condición: si el usuario hace clic en Cancel, vaya al nodo End Event; de lo contrario, vaya al nodo Delete Doc?.
- El nodo Delete Doc? comprueba si hay documentos en la carpeta vinculada al registro que se está eliminando. Si la carpeta está vacía, se eliminará; de lo contrario, primero se eliminarán los documentos contenidos en la carpeta y después se eliminará la propia carpeta. Condición: =length(folder(pv!recordId, “documentChildren”)) > 0;
- El nodo Delete Document elimina todos los documentos que recibe como entrada. La lista de documentos la devuelve el método folder con el parámetro “documentChildren”: =folder(pv!recordId, “documentChildren”).
- El nodo Delete Folder elimina una carpeta en función de su identificador: =pv!recordId.
- El nodo Delete from Data Store Entities elimina registros del almacén de datos. El nodo recibe la constante que vincula el almacén de datos, el tipo de datos (del tipo personalizado “Table”) y el ID del registro (={{entity: pv!DataStoreEntity, identifiers: pv!recordId}}).
- Una vez que termine de configurar el proceso, haga clic en Archivo → Guardar & Publicar o presione Ctrl + Alt + S.
Añadir el modelo de proceso a los registros
- En Appian Designer, abra Record Type.
- En el cuadro de diálogo que se abre, haga clic en New Relater Action, complete el campo ProcessModel (introduzca el nombre del proceso recién creado) y especifique las variables de entrada del proceso:
- Para Credit Card Application: Constant_CreditApplication_DSE
- Para Account Payable Records: Constant_invoiceProcessing_DSE
- Añada la nueva acción relacionada al View Record Type correspondiente.
El usuario debe actualizar la ventana del navegador para asegurarse de que el registro se haya eliminado por completo.
Eliminar la acción Delete de Summary View
- Abra la aplicación ABBYYFlexiCapture en Appian Designer.
- Abra el tipo de registro que desea modificar.
- En el cuadro de diálogo que se abre, haga clic en Summary View y deshabilite la opción Related Action Shortcuts junto a la acción Delete.
- Haga clic en OK y guarde los cambios realizados en el tipo de registro.
