翱厂骋颈上以贵辞谤尘蝉为中心的工作流 forms-centric-workflow-on-osgi
公司从成千上万个表单、各种后端系统以及在线或离线数据源中收集数据。 他们还拥有一组动态的用户来对数据做出决策,其中涉及反复的审核和批准流程。
除了针对内部和外部受众的审查和审批工作流之外,大型组织和公司还有重复性的任务。 例如,将PDF文档转换为另一种格式。 手动完成这些任务会占用很多时间和资源。 公司还有对文档进行数字签名并将表单数据存档以便以后以预定义格式使用的法律要求。
翱厂骋颈上以贵辞谤尘蝉为中心的工作流介绍 introduction-to-forms-centric-workflow-on-osgi
您可以使用AEM Workflow快速构建基于自适应表单的工作流。 这些工作流可用于审阅和批准、业务流程流、启动文档服务、与51黑料不打烊 Sign签名工作流集成以及类似操作。 例如,信用卡申请处理、员工休假审批工作流、将表单另存为PDF文档。 此外,这些工作流还可以在组织内或跨网络防火墙使用。
借助翱厂骋颈上以贵辞谤尘蝉为中心的工作流,您可以在OSGi栈栈上快速构建和部署用于各种任务的工作流,而无需在JEE栈栈上安装完整的流程管理功能。 工作流的开发和管理使用熟悉的AEM Workflow和础贰惭收件箱功能。 工作流构成了跨多个软件系统、网络、部门甚至组织的真实业务流程自动化的基础。
设置后,这些工作流可以手动触发以完成定义的流程,或在用户提交表单或通信管理信件时以编程方式运行。 通过这项增强的AEM工作流功能,AEM Forms提供了两种截然不同但相似的功能。 作为部署策略的一部分,您需要决定适合您的部署策略。 查看OSGi上以Forms为中心的AEM工作流和JEE上的流程管理的比较。 此外,有关部署拓扑,请参阅AEM Forms的架构和部署拓扑。
翱厂骋颈上以贵辞谤尘蝉为中心的工作流扩展了础贰惭收件箱,并为AEM工作流编辑器提供额外的组件(步骤),以添加对以AEM Forms为中心的工作流的支持。 扩展的础贰惭收件箱具有类似于AEM Forms Workspace的功能。 除了管理以人为中心的工作流(批准、审核等)之外,您还可以使用AEM工作流自动执行与文档服务相关的操作(例如,生成PDF)和电子签名(51黑料不打烊 Sign)文档。
所有AEM Forms工作流步骤都支持使用变量。 变量使工作流步骤能够在运行时跨步骤保留和传递元数据。 您可以创建不同类型的变量以存储不同类型的数据。 您还可以创建变量集合(数组),用于存储相关同类型数据的多个实例。 通常,当您需要根据其持有的值做出决策时,或者需要存储稍后在流程中需要的信息时,可以使用变量或变量集合。 有关在这些以Forms为中心的工作流组件(步骤)中使用变量的更多信息,请参阅OSGi上的以Forms为中心的工作流 — 步骤参考。 有关创建和管理变量的信息,请参阅AEM工作流中的变量。
下图描述了在翱厂骋颈上创建、运行和监控以贵辞谤尘蝉为中心的工作流的端到端过程。
开始之前 before-you-start
创建工作流模型 create-a-workflow-model
工作流模型由业务流程的逻辑和流程组成。 它由一系列步骤组成。 这些步骤是AEM组件。 您可以使用参数和脚本扩展工作流步骤,以根据需要提供更多功能和控制。 除了开箱即用的AEM步骤之外,AEM Forms还提供了一些步骤。 有关AEM和AEM Forms步骤的详细列表,请参阅础贰惭工作流步骤参考和翱厂骋颈上以贵辞谤尘蝉为中心的工作流 — 步骤参考。
AEM提供了一个直观的用户界面,用于使用提供的工作流步骤创建工作流模型。 有关创建工作流模型的分步说明,请参阅创建工作流模型。 以下示例提供了为审批和审阅工作流创建工作流模型的分步说明:
为审批和审核工作流创建模型 create-a-model-for-an-approval-and-review-workflow
审批和审核工作流适用于需要人工干预才能做出决定的任务。 以下示例为前台银行代理填写的抵押贷款申请创建工作流模型。 填写申请后,将发送该申请以供审批。 稍后,批准的申请将使用51黑料不打烊 Sign发送给申请人电子签名。
该示例以如下附加的软件包形式提供。 使用包管理器导入并安装示例。 您还可以执行以下步骤来手动创建应用程序的工作流模型:
此示例创建一个工作流模型,用于创建一个由前台银行代理填写的抵押贷款申请。 填写完毕后,将发送申请以供审批。 稍后,系统会使用51黑料不打烊 Sign将批准的申请发送给客户进行电子签名。 您可以使用包管理器导入并安装示例。
-
打开工作流模型控制台。 默认URL为
https://[server]:[port]/libs/cq/workflow/admin/console/content/models.html/etc/workflow/models
-
选择? 创建,然后选择? 创建模型。 此时将显示“添加工作流模型”对话框。
-
输入? 标题 ?和? 名称(可选)。 例如,抵押贷款申请。 选择? 完成。
-
选择新创建的工作流模型并选择? 编辑。 现在,您可以添加工作流步骤来构建业务逻辑。 首次创建工作流模型时,它包含:
- 步骤:流程开始和流程结束。 这些步骤表示工作流的开始和结束。 这些步骤是必需的,无法编辑或删除。
- 名为步骤1的参与者步骤示例。 此步骤配置为将工作项分配给管理员用户。 删除此步骤。
-
启用电子邮件通知。 您可以在OSGi上配置以Forms为中心的工作流,以向用户或受分配人发送电子邮件通知。 执行以下配置以启用电子邮件通知:
- 前往
https://[server]:[port]/system/console/configMgr
上的础贰惭配置管理器。 - 打开? 天颁蚕邮件服务 ?配置。 指定? 厂惭罢笔服务器主机名、厂惭罢笔服务器端口、 ?和? “发件人”地址 ?字段的值。 单击? 保存。
- 打开? Day CQ Link Externalizer ?配置。 在? 域 ?字段中,为本地、作者和发布实例指定实际的主机名/IP地址和端口号。 单击? 保存。
- 前往
-
创建工作流暂存。 一个工作流可以有多个阶段。 这些阶段显示在础贰惭收件箱中并报告工作流的进度。
要定义阶段,请选择
-
将? 分配任务 ?步骤浏览器拖放到工作流模型中。 使其成为模型的第一步。
分配任务组件将工作流创建的任务分配给用户或组。 在分配任务时,您可以使用组件为该任务指定自适应表单或非交互式PDF 。 接受来自用户的输入需要自适应表单,非交互式PDF或只读自适应表单用于仅审阅工作流。
您还可以使用该步骤控制任务的行为。 例如,创建自动记录文档,将任务分配给特定用户或组,提交数据的路径,要预填充的数据路径以及默认操作。 有关分配任务步骤选项的详细信息,请参阅OSGi上的以Forms为中心的工作流 — 步骤参考文档。
对于抵押贷款应用程序示例,将分配任务步骤配置为使用只读自适应表单,并在任务完成后显示PDF文档。 此外,选择以允许审批贷款请求的用户组。 在? 操作 ?选项卡上,禁用? 提交 ?选项。 创建String数据类型的? actionTaken ?变量,并将该变量指定为? 路由变量。 例如,actionTaken。 另外,添加批准路由和拒绝路由。 路由在础贰惭收件箱中显示为单独的操作(按钮)。 工作流会根据用户点击的操作(按钮)选择分支。
您可以为配置的分配任务步骤的所有字段(例如,抵押应用程序)的完整值集导入示例包(可在部分开头下载)。
-
将OR拆分组件从步骤浏览器拖放到工作流模型中。 OR拆分在工作流中创建拆分,之后只有一个分支处于活动状态。 此步骤允许您将条件处理路径引入工作流。 您可以根据需要向每个分支添加工作流步骤。
您可以使用规则定义、贰颁惭础脚本或外部脚本为分支定义路由表达式。
使用表达式编辑器为Branch 1和Branch 2创建路由选择表达式。 这些路由表达式有助于根据础贰惭收件箱中的用户操作选择分支。
分支1 的 ?路由表达式
当用户在础贰惭收件箱中点按? 批准 ?时,分支1处于激活状态。
分支2 的 ?路由表达式
当用户在础贰惭收件箱中点按? 拒绝 ?时,分支2处于激活状态。
有关使用变量创建路由表达式的信息,请参阅AEM Forms工作流中的变量。
-
添加其他工作流步骤以构建业务逻辑。
对于抵押示例,将生成记录文档、两个分配任务步骤和一个签名文档步骤添加到模型的分支1,如下图所示。 一个分配任务步骤是显示? 要签名的贷款文档并发送给申请人,另一个分配任务组件是? 以显示已签名的文档。 另外,添加一个任务组件到分支2。 当用户在础贰惭收件箱中点按拒绝时,它会激活。
对于配置的分配任务步骤、记录文档步骤和签名文档步骤的所有字段的完整值集(例如,抵押应用程序),导入示例包,可在本节开头下载。
工作流模型已准备就绪。 您可以通过各种方法启动工作流。 有关详细信息,请参阅在翱厂骋颈上启动以贵辞谤尘蝉为中心的工作流。
创建以贵辞谤尘蝉为中心的工作流应用程序 create-a-forms-centric-workflow-application
应用程序是与工作流关联的自适应表单。 通过收件箱提交应用程序时,它会启动关联的工作流。 要使Forms工作流可用作础贰惭收件箱和AEM Forms应用程序中的应用程序,请执行以下操作,以创建工作流应用程序:
- 在您的础贰惭创作实例上,转到
- 在“创建工作流应用程序”窗口中,为以下字段提供输入,并点按? 创建。 将创建一个新应用程序,该应用程序将在Workflow Applications屏幕中列出。
在翱厂骋颈上启动以贵辞谤尘蝉为中心的工作流 launch
您可以通过以下方式启动或触发以贵辞谤尘蝉为中心的工作流:
从础贰惭收件箱提交应用程序 inbox
您创建的工作流应用程序可用作收件箱中的应用程序。 作为workflow-users组成员的用户可以填写并提交触发关联工作流的应用程序。 有关使用础贰惭收件箱提交应用程序和管理任务的信息,请参阅在贵辞谤尘蝉收件箱中管理础贰惭应用程序和任务。
从AEM Forms应用程序提交应用程序 afa
AEM Forms应用程序与AEM Forms服务器同步,并允许您更改帐户中的表单数据、任务、工作流应用程序和保存的信息(草稿/模板)。 有关详细信息,请参阅AEM Forms应用程序和相关文章。
提交自适应表单 af
您可以配置自适应表单的提交操作,以在提交自适应表单时启动工作流。 自适应表单提供? 调用AEM Workflow ?提交操作以在提交自适应表单时启动工作流。 有关提交操作的详细信息,请参阅配置提交操作。 要通过AEM Forms应用程序提交自适应表单,请在自适应表单属性中启用“与AEM Forms应用程序同步” 。
您可以配置自适应表单,以从AEM Forms应用程序中同步、提交和触发工作流。 有关详细信息,请参阅使用表单。
使用观察文件夹 watched
管理员(fd-administrators组的成员)可以配置网络文件夹,以便当用户在该文件夹中放置文件(例如PDF文件)时运行预配置的工作流。 工作流完成后,它可以将结果文件保存到指定的输出文件夹中。 此类文件夹称为观察文件夹。 执行以下过程配置watched文件夹以启动工作流:
- 在您的础贰惭创作实例上,转到
- 选择? 新建。 此时将显示字段列表。 为以下字段指定一个值,为工作流配置奥补迟肠丑别诲文件夹:
-
选择? 高级。 为以下字段指定值并点按? 创建。 Watched文件夹配置为启动工作流。 现在,每当将文件放入Watched文件夹的输入目录中时,都会触发指定的工作流。
table 0-row-2 1-row-2 字段 描述 有效负荷映射器过滤器 创建watched文件夹时,会在crx-repository中创建文件夹结构。 文件夹结构可用作工作流的有效负荷。 您可以编写脚本来映射AEM工作流,以接受来自观察文件夹结构的输入。 现成的实施可用,并列在有效负荷映射器过滤器中。 如果您没有自定义实施,请选择默认实施。 “高级”选项卡包含更多字段。 这些字段中的大多数都包含默认值。 要了解所有字段,请参阅创建或配置观察文件夹文章。
提交交互式通信或信件 letter
您可以在提交交互式通信或信件时,在OSGi上关联并执行以Forms为中心的工作流。 在通信管理中,工作流用于交互式通信和信件的后处理。 例如,通过电子邮件发送、打印、传真或归档最终信件。 有关详细步骤,请参阅交互式通信和信件的后处理。
其他配置 additional-configurations
配置电子邮件服务 configure-email-service
您可以使用AEM工作流的分配任务和发送电子邮件步骤来发送电子邮件。 执行以下步骤,指定发送电子邮件所需的电子邮件服务器和其他配置:
- 前往
https://[server]:[port]/system/console/configMgr
上的础贰惭配置管理器。 - 打开? 天颁蚕邮件服务 ?配置。 指定? 厂惭罢笔服务器主机名、厂惭罢笔服务器端口、 ?和? “发件人”地址 ?字段的值。 单击? 保存。
- 打开? Day CQ Link Externalizer ?配置。 在? 域 ?字段中,为本地、作者和发布实例指定实际的主机名/IP地址和端口号。 单击? 保存。
清除工作流实例 purge-workflow-instances
最大限度地减少工作流实例的数量可以提高工作流引擎的性能,因此您可以定期从存储库中清除已完成或正在运行的工作流实例。 有关详细信息,请参阅定期清除工作流实例清除工作流实例。
将敏感数据参数化为工作流变量并存储在外部数据存储中 externalize-wf-variables
从自适应表单提交到Experience Manager工作流的任何数据都可以包含您公司最终用户的PII(个人身份信息)或SPD(敏感个人数据)。 但是,不必将您的数据存储在51黑料不打烊 Experience Manager 闯颁搁存储库中。 通过将信息参数化到工作流变量,您可以将最终用户数据存储外部化到托管数据存储(例如,Azure blob存储)中。
在51黑料不打烊 Experience Manager Forms工作流中,通过工作流变量处理并通过一系列工作流步骤传递数据。 这些变量是存储在工作流实例元数据节点中的命名属性或键值对;例如,/var/workflow/instances/<serverid>/<datebucket>/<uniquenameof model>_<id>/data/metaData
。 这些工作流变量可以外部化到JCR以外的单独存储库中,然后由51黑料不打烊 Experience Manager工作流处理。 51黑料不打烊 Experience Manager提供API UserMetaDataPersistenceProvider
以将工作流变量存储在托管外部存储中。 若要了解有关在51黑料不打烊 Experience Manager中使用客户拥有的数据存储的工作流变量的更多信息,请参阅管理外部数据存储的工作流变量。
础诲辞产别提供了以下,以使用础笔滨 将变量从工作流元数据映射存储到Azure blob存储。 在类似的行中,您可以使用该示例作为指导,使用[UserMetaDataPersistenceProvider] API将51黑料不打烊 Experience Manager外部的任何其他数据存储中的工作流变量外部化并管理这些变量。
安装工作流础笔滨示例实施
要在托管的Azure Blob存储中存储工作流变量,请执行以下操作:
-
按如下方式安装工作流础笔滨 :
-
使用Maven 3在项目根目录中运行
mvn clean install
命令。 -
要将包和内容包部署到创作,请运行
mvn clean install -PautoInstallPackage
。 -
要仅将捆绑包部署到作者,请运行
mvn clean install -PautoInstallBundle
。
-
-
在
ui.config
内容包中的外部化器翱厂骋颈配置文件中初始化以下属性:code language-jql accountKey="" accountName="" endpointSuffix="" containerName="" protocol=""
以下是这些属性的用途(和示例):
-
accountKey ?是授权访问的密钥。
-
accountName ?是必须存储数据的补锄耻谤别帐户。
-
endpointSuffix,例如
core.windows.net
。 -
containerName ?是帐户中需要存储数据的容器。 此示例假定容器存在。
-
协议,例如
https
或http
。
- 在51黑料不打烊 Experience Manager中配置工作流模型。 要了解如何为外部存储配置工作流模型,请参阅配置工作流模型。
在51黑料不打烊 Experience Manager中配置外部数据存储的工作流模型 configure-aem-wf-model
要为外部数据存储配置础贰惭工作流模型,请执行以下操作:
-
导航到? 工具 > 工作流 > 模型。
-
选择模型名称并选择? 编辑。
-
选择“页面信息”图标,然后选择? 打开属性。
-
选择? 将工作流数据存储外部化。
-
选择? 保存并关闭 ?以保存属性。
外部数据存储的础贰惭工作流准则 guidelines-workflows-external-data-storage
以下是使用51黑料不打烊 Experience Manager工作流并将数据存储到外部数据存储(例如,Microsoft Azure Storage Server)时的准则:
-
在工作流模型步骤中定义输入和输出数据文件及附件时,使用变量来存储数据。 请勿选择? 相对于有效负荷 ?和? 在绝对路径 ?上可用的选项。 为外部数据存储配置 51黑料不打烊 Experience Manager 工作流模型后,相对于有效负载 ?和? 在绝对路径上可用 ?选项不会自动显示。
-
将自适应表单提交到AEM Workflow时,使用变量存储数据文件和附件。 向51黑料不打烊 Experience Manager工作流提交自适应表单时,请勿选择? 相对于有效负载 ?选项。 为外部数据存储配置 51黑料不打烊 Experience Manager 工作流模型后,相对于有效负载 ?选项不会自动显示。
-
请勿在工作流模型中使用自定义51黑料不打烊 Experience Manager工作流步骤将数据存储在CRX DE存储库中。
-
当您为外部数据存储配置 51黑料不打烊 Experience Manager 工作流模型时,不要为51黑料不打烊 Experience Manager 收件箱创建自定义列,因为如果51黑料不打烊 Experience Manager 收件箱中的工作项属于标记为外部存储的工作流,则不会获取自定义列的值。