以Forms为中心的AEM工作流使您能够自动执行以Forms为中心的真实业务流程。 工作流由一系列步骤组成,这些步骤按照关联工作流模型中指定的顺序执行。 每个步骤都会执行特定操作,例如向用户分配任务或发送电子邮件。 工作流可以与存储库中的资产、用户帐户和服务进行交互。 因此,工作流可以协调涉及Experience Manager任何方面的复杂活动。
可以通过以下任意方法触发或启动以表单为中心的工作流:
有关以Forms为中心的AEM工作流和功能的更多信息,请参阅 OSGi上以Forms为中心的工作流.
触发工作流时,会自动为工作流实例生成有效负载。 每个工作流实例都分配有一个唯一的实例ID和一个关联的有效负载ID。 有效负载包含与工作流实例关联的用户和表单数据的存储库位置。 此外,工作流实例的草稿和历史数据也存储在AEM存储库中。
工作流实例的有效负载、草稿和历史记录所在的默认存储库位置如下所示:
在创建工作流或应用程序时,您可以配置不同的位置来存储有效负载、草稿和历史记录数据。 要确定工作流或应用程序存储数据的位置,请查看工作流。
AEM 6.4 Forms | AEM 6.3 Forms | |
工作流 实例 |
/var/workflow/instances/[server_id]/<date>/[workflow-instance]/ | /etc/workflow/instances/[server_id]/[date]/[workflow-instance]/ |
有效负荷 | /var/fd/dashboard/payload/[server_id]/[date]/ [payload-id]/ |
/etc/fd/dashboard/payload/[server_id]/[date]/ [payload-id]/ |
草稿 | /var/fd/dashboard/instances/[server_id]/ [日期]/[工作流程实例]/draft/[工作项目]/ |
/etc/fd/dashboard/instances/[server_id]/ [日期]/[工作流程实例]/draft/[工作项目]/ |
历史 | /var/fd/dashboard/instances/[server_id]/ [日期]/[workflow_instance]/history/ |
/etc/fd/dashboard/instances/[server_id]/ [日期]/[workflow_instance]/history/ |
您可以从存储库中的工作流实例访问和删除用户数据。 要实现此目的,您必须知道与用户关联的工作流实例的实例ID。 您可以使用启动工作流实例的用户的用户名或工作流实例的当前被分配人的用户名来查找工作流实例的实例ID。
但是,在下列情形中标识与启动器关联的工作流时,您无法识别或结果可能模棱两可:
要识别并访问为工作流实例存储的用户数据,请执行以下步骤:
在AEM创作实例上,转到 https://'[server]:[port]'/crx/de
并导航到 “工具”>“查询”.
选择 SQL2 从 类型 下拉菜单。
根据可用的信息,执行以下查询之一:
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*'
查询会返回指定工作流发起人或当前工作流被分配人的所有工作流实例的位置。
例如,以下查询从 /var/workflow/instances
工作流发起者为的节点 srose
.
转到查询返回的工作流实例路径。 status属性显示工作流实例的当前状态。
在工作流实例节点中,导航到 data/payload/
. 此 path
属性存储工作流实例的有效负荷的路径。 您可以导航到路径,以访问有效负载中存储的数据。
导航到工作流实例的草稿和历史记录位置。
例如:
/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/
对步骤2中查询返回的所有工作流实例重复步骤3 - 5。
AEM Forms 应用程序还以离线模式存储数据。 工作流实例的数据可能存储在单个设备本地,然后提交到 Forms 应用程序与服务器同步时的服务器。
您必须是AEM管理员,才能通过执行以下步骤从工作流实例中删除用户数据:
按照中的说明操作 访问用户数据 并注意以下事项:
在中为工作流实例执行此步骤 正在运行, 已暂停,或 过时 状态:
转到 https://'[server]:[port]'/aem/start.html
并使用管理员凭据登录。
导航到 “工具”>“工作流”>“实例”.
为用户选择相关工作流实例并点按 终止 终止正在运行的实例。
有关使用工作流实例的详细信息,请参阅 管理工作流实例.
转到 CRXDE Lite 导航到工作流实例的有效负载路径,然后删除 payload
节点。
导航到工作流实例的草稿路径,然后删除 draft
节点。
导航到工作流实例的历史记录路径,然后删除 history
节点。
导航到工作流实例的工作流实例路径,然后删除 [workflow-instance-ID]
工作流节点。
删除工作流实例节点将删除所有工作流参与者的工作流实例。
对于为用户标识的所有工作流实例,重复步骤2 - 6。
识别并删除AEM中的离线草稿和提交数据 Forms 工作流参与者的应用程序发件箱,以避免向服务器提交任何内容。
您还可以使用API来访问和删除节点和属性。 有关更多信息,请参阅以下文档。