第3章,Workflow基础篇|工作流的跳转,决策和分支等元素

305 阅读6分钟

Jump

Jump活动允许您跳转到工作流中的其他活动。例如,当您需要绕过多个任务或返回控制流中的另一个任务时,这很有用。

image.png

Jump活动属性由在General选项卡上指定的CaptionTarget和 Common选项卡上的Name组成。

Name是元素的内部名称。当引用应用项目中的元素时,您将使用此名称。它在工作流中必须是唯一的,但您可以在不同的工作流中拥有两个同名的元素。

Caption描述了在这个元素中发生的事情。它显示在工作流元素中,使工作流更易于阅读和理解,无需添加注释。

目标是工作流流程在执行期间将跳转到的活动。您可以从下拉菜单中选择您想参加的活动。

您不能在并行拆分中或在将结束工作流而没有任何其他路径继续的路径中使用 Jump 活动。

工作流程中的 Decision

决策是一个元素,它根据条件做出选择并遵循一个且仅一个传出路径。

image.png

工作流中的 Parallel Split

并行拆分用于在您的工作流程中具有并行分支。例如,当新员工入职时,您可以同时执行多项任务:HR 准备必要的文件,IT 部门准备工作站,以及行政部门为员工安排培训:

image.png

在工作流可以继续下一个活动之前,需要完成并行拆分的所有路径。

image.png

General Section Name是元素的内部名称。当引用应用程序项目中的元素时,您将使用此名称。它在工作流中必须是唯一的,但您可以在不同的工作流中拥有两个同名的元素。

Caption描述了在这个元素中发生的事情。它显示在工作流元素中,使工作流更易于阅读和理解,无需添加注释。

路径部分 Paths属性允许您添加与并行进程一样多
的路径。

基本工作流程函数和触发器

在处理工作流时,您可以执行以下基本功能:

  • Open a workflow
  • Create a workflow
  • Delete a workflow
  • Add elements to a workflow
  • View element properties

当您为入职应用程序创建工作流时,您将在下一个模块中发现其中的一些正在发挥作用。

工作流由页面上的调用工作流单击事件或微流中的工作流调用操作触发。

微流中的工作流调用活动

工作流 调用活动可用于调用和触发工作流。此活动只能在 Microflows 中使用。

image.png

工作流调用属性的示例如下图所示:

image.png

系统模块中的工作流实体

在您的应用项目的系统模块中有几个与工作流相关的实体,其中一些可以在 XPath 和表达式中使用。有些作为仅在内部的基本实体存在(例如,由运行时)。

image.png

您可以在系统模块中找到以下与工作流相关的实体:

  • WorkflowDefinition – 表示您在数据库中的工作流。它包含两个属性,其中NameTitle是工作流的 Name 和 Title 属性,Obsolete是在您删除工作流时标记为 true 的布尔值。在这种情况下,工作流仍然保留在数据库中(您仍然可以使用它创建报告),但 Mendix 标记它不再存在。有关属性的更多信息,请参阅下一讲中描述的工作流属性。
  • Workflow User TaskDefinition – 代表数据库中的用户任务和系统活动。它包含两个属性,其中Name是用户任务或系统活动的 Name 属性,Obsolete是一个布尔值,当您从工作流中删除用户任务/系统活动时,它被标记为 true。它们仍然保留在数据库中(您仍然可以使用它们创建报告),但 Mendix 标记它们不再存在。
  • 工作流– 正在运行的工作流的表示,因此每次启动新工作流时,运行时都会创建一个新实例。
  • WorkflowUserTask **-**此实体在运行时执行用户任务并且最终用户选择操作(例如,单击批准按钮以批准请求)时创建。此实体可用于工作流概览页面和应用程序逻辑。

工作流变量和属性

让我们看一下变量属性

工作流具有可在工作流编辑器内的XPath表达式中使用的专用变量。

变量列表如下所述:

  • $workflowContext – 贯穿工作流的业务相关实体的实例。
  • $workflowInstance – 当前正在运行的工作流(System . Workflow)的实例。

例如,您可以将这些变量用作用户任务的任务名称和任务描述属性中的参数。

image.png

General Section

Caption定义了工作流的标题。您不能更改工作流的名称,但可以更改Caption

Due by作为属性存储在Workflow实体的 System模块中,其数据可以动态显示在运行的应用程序中。例如,您可以使用它来设置工作流的截止日期并将其显示在您的应用程序中。但是,这不是自动提醒,而是您在跟踪工作流程时参考的截止日期。如果您使用的是 Workflow Commons 模块,则在页面模板中使用截止日期。

image.png

Display Information Section

覆盖管理页面是一个可选页面,用于向工作流管理员显示工作流实例。这会覆盖用于在应用程序中显示任何工作流实例的通用页面,例如,当您将打开工作流页面设置为点击事件或微流操作并希望覆盖为此事件/操作选择的页面时.

工作流名称作为属性存储在工作流实体的 系统模块中,其数据可以动态显示在运行的应用程序中。如果您使用的是 Workflow Commons 模块,则Workflow名称用于预配置页面:Admin CenterWorkflow Admin页面。

工作流描述作为属性存储在工作流实体的 系统模块中,其数据可以动态显示在运行的应用程序中。如果您使用的是 Workflow Commons 模块,则在页面模板中使用Workflow描述。

image.png

Common Section

Name是工作流文档的内部名称。在应用程序项目中引用工作流时,您将使用此名称。它在模块中必须是唯一的,但您可以在不同的模块中有两个同名的工作流。在引用工作流时,您通常会在模块名称前添加以确保唯一性并允许您在其他模块中使用工作流。

您不能更改工作流的名称,但可以更改Caption

文档允许您描述您的工作流程,以便人们更轻松地使用和修改它。

总结

在这几章中,我们学习了工作流的主要概念我们现在知道可以使用哪些元素来设计工作流程以及如何配置它们。随着工作流的引入,几个基本实体已嵌入系统模块的核心。我们已经了解了这些实体是什么以及它们的目的是什么。有了这些知识,您就可以在工作流程路径上迈出第一步!