Forms-centric AEM workflows enable you to automate real-world Forms-centric business processes. Workflows consist of a series of steps that execute in an order specified in the associated workflow model. Each step performs a specific action such as assigning a task to a user or sending an email message. Workflows can interact with assets in the repository, user accounts, and services. Therefore, workflows can coordinate complicated activities that involve any aspect of Experience Manager.
A forms-centric workflow can be triggered or launched through any of the following methods:
For more information about Forms-centric AEM workflows and capabilities, see Forms-centric workflow on OSGi.
When a workflow is triggered, a payload is auto-generated for the workflow instance. Each workflow instance is assigned a unique instance ID and an associated payload ID. The payload contains the repository locations for user and form data associated with a workflow instance. In addition, drafts and historical data for a workflow instance are also stored in the AEM repository.
The default repository locations where payload, drafts, and history of a workflow instance reside are as follows:
You can configure different locations to store payload, draft, and history data when creating a workflow or application. To identify the locations where a workflow or application stored data, review the workflow.
AEM 6.4 Forms | AEM 6.3 Forms | |
Workflow instance |
/var/workflow/instances/[server_id]/<date>/[workflow-instance]/ | /etc/workflow/instances/[server_id]/[date]/[workflow-instance]/ |
Payload | /var/fd/dashboard/payload/[server_id]/[date]/ [payload-id]/ |
/etc/fd/dashboard/payload/[server_id]/[date]/ [payload-id]/ |
Drafts | /var/fd/dashboard/instances/[server_id]/ [date]/[workflow-instance]/draft/[workitem]/ |
/etc/fd/dashboard/instances/[server_id]/ [date]/[workflow-instance]/draft/[workitem]/ |
History | /var/fd/dashboard/instances/[server_id]/ [date]/[workflow_instance]/history/ |
/etc/fd/dashboard/instances/[server_id]/ [date]/[workflow_instance]/history/ |
You can access and delete user data from a workflow instance in the repository. To achieve this, you must know the instance ID of the workflow instance associated with the user. You can find instance ID of a workflow instance by using the user name of the user who initiated the workflow instance or who is the current assignee of the workflow instance.
However, you cannot identify or the results may be ambiguous when identifying workflows associated with an initiator in the following scenarios:
To identify and access user data stored for a workflow instance, perform the following steps:
On AEM author instance, go to https://[server]:[port]/crx/de
and navigate to Tools > Query.
Select SQL2 from the Type drop-down.
Depending on the available information, execute one of the following queries:
SELECT * FROM [cq:Workflow] AS s WHERE ISDESCENDANTNODE([path-to-workflow-instances]) and s.[initiator]='*initiator-ID*'
SELECT * FROM [cq:WorkItem] AS s WHERE ISDESCENDANTNODE([path-to-workflow-instances]) and s.[assignee]='*assignee-id*'
The query returns the location of all workflow instances for the specified workflow initiator or the current workflow assignee.
For example, the following query returns two workflow instances path from the /var/workflow/instances
node whose workflow initiator is srose
.
Go to a workflow instance path returned by the query. The status property displays the current status of the workflow instance.
In the workflow instance node, navigate to data/payload/
. The path
property stores the path to the payload for the workflow instance. You can navigate to the path to access data stored in the payload.
Navigate to the locations for drafts and history for the workflow instance.
For example:
/var/fd/dashboard/instances/server0/2018-04-09/_var_workflow_instances_server0_2018-04-09_basicmodel_54/draft/
/var/fd/dashboard/instances/server0/2018-04-09/_var_workflow_instances_server0_2018-04-09_basicmodel_54/history/
Repeat steps 3 - 5 for all workflow instances returned by the query in step 2.
AEM Forms app also stores data in offline mode. It is possible that data for a workflow instance is locally stored on individual devices and gets submitted to the Forms server when the app synchronizes with the server.
You must be an AEM administrator to delete user data from workflow instances by performing the following steps:
Follow the instructions in Access user data and take note of the following:
Perform this step for workflow instances in RUNNING, SUSPENDED, or STALE status:
https://[server]:[port]/aem/start.html
and log in with administrator credentials.For more information about working with workflow instances, see Administering Workflow Instances.
Go to CRXDE Lite console, navigate to the payload path for a workflow instance, and delete the payload
node.
Navigate to the drafts path for a workflow instance, and delete the draft
node.
Navigate to the history path for a workflow instance, and delete the history
node.
Navigate to the workflow instance path for a workflow instance, and delete the [workflow-instance-ID]
node for the workflow.
Deleting the workflow instance node will remove the workflow instance for all workflow participants.
Repeat steps 2 - 6 for all workflow instances identified for a user.
Identify and delete offline draft and submission data from AEM Forms app outbox of workflow participants to avoid any submission to the server.
You can also use APIs to access and remove nodes and properties. See the following docs for more information.