第 12 章 Business Central 中的业务流程
迁移过程是描述必须使用流图执行一系列步骤的顺序。此过程由一组节点组成,它们通过连接相互链接。每个节点代表整个过程中的一个步骤,而连接指定如何从一个节点转换到另一个节点。
Mortgage_Process 示例包含以下预定义的 MortgageApprovalProcess 过程。
12.1. 创建业务流程 复制链接链接已复制到粘贴板!
以下流程指导您创建组成 MortgageApprovalProcess 此过程的任务、连接和网关。mortgage 验证流程决定了一个月化应用程序是否包含所有必需的数据。如果满足指定数据要求,应用程序会继续进入电池计算流程。
流程
-
在 Business Central 中,进入 Menu
Design Projects mortgage-process。 -
点 Add Asset
Business Process。 输入以下值:
-
迁移过程:M rrt
gageApprovalProcess 软件包 :选择
com.myspace.mortgage_processPackage 指定创建资产的现有项目中的位置。在本例中,它在
com/myspace/mortgage_process中创建。
-
迁移过程:M rrt
- 点 确定。图编辑器将打开。
-
在右上角点击 Properties
图标。
-
向下滚动并展开 Process Data,然后点击 Process Variables 部分中的
。
输入以下值:
-
名称 :
应用程序 -
数据类型 :application
[com.myspace.mortgage_process]
-
名称 :
12.1.1. 创建出站连接和专用网关 复制链接链接已复制到粘贴板!
本节介绍如何创建传出的连接、专用网关和业务逻辑任务。使用专用网关根据可用数据做出决策并对事件做出响应。
Red Hat Process Automation Manager 包含预定义的节点类型,以简化流程创建。预定义的节点面板位于图形编辑器的左侧。
流程
- 将启动事件节点拖到 canvas 中。
从启动事件到专用网关创建传出连接:
在 canvas 上,点启动事件节点,然后点 Create Parallel 图标。
将鼠标悬停在并行的
图标上,然后点击 Convert into Exclusive 图标。
创建从专用网关到业务规则任务的传出连接:
- 在 canvas 上,点 exclusive 网关并点 Create Task 图标。
将鼠标悬停在任务的
图标上,然后点击 Convert into Business Rule 图标。
配置业务规则任务:
- 点 Business rules 任务。
-
如果没有打开 Properties 面板,请在右上角点击 Properties
图标。
-
在 Properties 面板中,在 Name 字段中输入
Validation。 - 展开 Implementation/Execution,从 Rule Flow Group 菜单中选择 New,并输入 验证。
在 On Exit Action 字段中,输入以下 Java 表达式:
System.out.println(application.getProperty());
System.out.println(application.getProperty());Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
展开 数据分配,然后点击分配
旁边的。
在 Validation Data I/O 窗口中,点 Add 并创建以下分配:
数据输入和分配
- 名称 :应用程序
- 数据类型:Application [com.myspace.mortgage_app]
- 源:应用程序
数据输出和分配
- 名称 :应用程序
- 数据类型:Application [com.myspace.mortgage_app]
目标:应用程序
图 12.1. 验证数据 I/O 分配
- 在 canvas 下,单击 Save 以确认您的更改。
12.1.2. 定义验证数据 复制链接链接已复制到粘贴板!
本节介绍如何定义确定应用程序数据是否正确、包含错误或缺少信息的验证数据。
流程
从 Validation 任务创建到专用网关的传出连接:
- 点 Validation 任务,再点 Create Parallel 图标。
将鼠标悬停在并行的
图标上,然后点击 Convert into Exclusive 图标。
从专用网关创建到新业务逻辑任务的传出连接:
- 点 exclusive 网关,点 Create Task 图标。
- 将新任务拖到专用网关下方,如下所示。
将鼠标悬停在任务的
图标上,然后点击 Convert into Business Rule 图标。
-
如果没有打开 Properties 面板,请在右上角点击 Properties
图标。
-
在 Properties 面板中,在 Name 字段中输入
Retract Validation。 -
展开 Implementation/Execution,从 Rule Flow Group 菜单中选择 New,然后输入
错误。
配置专用网关和业务规则任务之间的连接:
点连接。
-
如果没有打开 Properties 面板,请在右上角点击 Properties
图标。
-
在 Properties 面板中,在 Name 字段中输入
Invalid。 - 展开 Implementation/Execution,然后在 Condition Expression 部分中选择 Expression。
从列表中选择 drools,然后在 Condition Expression 字段中输入
ValidationErrorDO ()。
从 Retract Validation 任务创建到新用户任务的传出连接:
- 点 Retract Validation 任务,然后点 Create Task 图标。
- 将新任务拖到 Validation 任务下,如下所示。
将鼠标悬停在任务的
图标上,然后点击 Convert into User 图标。
-
点新用户任务并在 Properties 面板中,在 Name 字段中输入
Correct Data。 -
展开 Implementation/Execution,然后在 Task Name 字段中输入
CorrectData。 -
从 Groups 菜单中选择 New,并输入
代理。 -
点 Assignments 旁边的
。
在 Correct Data Data I/O 窗口中,点 Add 并创建以下分配:
- 名称 :应用程序
- 数据类型:Application [com.myspace.mortgage_app]
源:应用程序
- 数据输出和分配
- 名称 :应用程序
- 数据类型:Application [com.myspace.mortgage_app]
目标:应用程序
图 12.2. 正确的数据 I/O 分配
- 在 canvas 下,单击 Save 以确认您的更改。
单击 Correct Data 用户任务,然后单击 Create sequence Flow 图标,并将它拖回到第一个专用网关。您的工作流应类似以下示例:
12.1.3. 计算 mortgage 复制链接链接已复制到粘贴板!
mortgage 计算业务流程决定了 applicant 的电池障碍。
流程
- 返回到第二个专用网关,并创建到新新规则任务的传出连接。
点创建的连接,并在 Properties 面板中,在 Name 字段中输入
Valid。- 展开 Implementation/Execution,然后在 Condition Expression 部分中选择 Expression。
-
从列表中选择 drools 并在 Condition Expression 字段中输入
not ValidationErrorDO ()。
单击新的业务规则任务,并在 Properties 面板中,在 Name 字段中输入
Mortgage Calculation。-
展开 Implementation/Execution,从 Rule Flow Group 菜单中选择 New,并输入
mortgagecalculation。
-
展开 Implementation/Execution,从 Rule Flow Group 菜单中选择 New,并输入
-
展开 数据分配,然后点击分配
旁边的。
在 Mortgage Calculation Data I/O 窗口中,单击 Add 来创建以下分配,然后单击 Save。
图 12.3. mortgage Calculation Data I/O 分配
点 canvas 上的空空间,向下滚动、展开 Process Data,然后点击 Process Variables 旁边的
。输入以下值:
-
名称:
inlimit -
数据类型 :
布尔值
-
名称:
- 从 Mortgage Calculation 任务创建一个出站连接到新用户任务。
-
点用户任务,在
Name字段中输入 Qualify。 -
展开 Implementation/Execution,然后在 Task Name 字段中输入
Qualify。 -
从 Groups 菜单中选择 New,输入
approver。 点 Assignments 旁边的
。在 Qualify Data I/O 窗口中,点 Add 来创建以下分配:
图 12.4. 合格数据 I/O 分配
- 在 canvas 下,单击 Save 以确认您的更改。
- 单击 Qualify 用户任务,单击 Create parallel 菜单图标,并将它转换为专用网关。
- 将新专用网关拖到 Qualify 用户 任务 下。
- 从专用网关创建传出连接,并将它连接到新用户任务。
-
在 Properties 面板的 Name 字段中点 connection 和 input
In Limit。 - 展开 Implementation/Execution,然后在 Condition Expression 部分中选择 Condition。
从 Process Variable 下拉菜单中选择 inlimit,然后从 Condition 下拉菜单中选择 Is true。
-
单击用户任务,在 Name 字段中输入
Final Approval。 -
展开 Implementation/Execution,然后在 Task Name 字段中输入
FinalApproval。 -
从 Groups 菜单中选择 New,输入
管理器。 点 Assignments 旁边的
。在 Final Approval Data I/O 窗口中,点 Add 来创建以下分配:
图 12.5. 最终批准数据 I/O 分配
- 在 canvas 下,单击 Save 以确认您的更改。
12.1.4. 增加关闭付款 复制链接链接已复制到粘贴板!
增加支付流程的减少,以查看通过增加他们的付款来是否对 loan 的 applicant 量化。最终的结果是最后的 loan 批准,或基于 applicant 无法增加付款的 loan 拒绝。
流程
- 点 Final Approval user 任务,然后从用户任务快速菜单中选择 Create End。
将结束事件移到 Final Approval user 任务下。
返回到与 Final Approval 用户任务连接的专用网关。创建第二个传出连接,并将它连接到新用户任务。
-
在 Properties 面板的 Name 字段中点连接和输入
Not in Limit。 - 展开 Implementation/Execution,然后在 Condition Expression 部分中选择 Condition。
- 从 Process Variable 下拉菜单中选择 inlimit,然后从 Condition 下拉菜单中选择 Is false。
点 canvas 上的空空间,向下滚动、展开 Process Data,然后点击 Process Variables 旁边的
。输入以下值:
-
名称 :
incdownpayment 数据类型 :
布尔值
-
名称 :
-
单击新用户任务,然后在 Properties 面板中,在 Name 字段中输入 increasing
Down Payment。 -
展开 Implementation/Execution,然后在 Task Name 字段中输入 increase
DownPayment。 -
从 Groups 菜单中选择 New,并输入
代理。 点 Assignments 旁边的
。在 增加关闭支付数据 I/O 窗口中,点 Add 来创建以下分配:
图 12.6. 增加关闭数据 I/O 分配
- 在 canvas 下,单击 Save 以确认您的更改。
- 单击 增加关闭支付 用户任务,单击 Create parallel 菜单图标,并将它转换为专用网关。
- 将新的专用网关拖到 增加关闭用户任务 下。
- 从专用网关到结束事件创建传出连接。
-
在 Properties 面板的 Name 字段中点 connection 并输入
Down 支付。 - 展开 Implementation/Execution,然后在 Condition Expression 部分中选择 Expresssion。
- 输入 返回 !incdownpayment; 然后从下拉菜单中选择 java。
- 从专用网关创建传出连接,并将它连接到第一个专用网关。
-
在 Properties 面板的 Name 字段中点 connection 并输入
Down 支付。 - 展开 Implementation/Execution,然后在 Condition Expression 部分中选择 Expresssion。
- 输入 返回 incdownpayment; 然后从下拉菜单中选择 java。
- 在 canvas 之上,单击 Save 以确认您的更改并保存整个流程。
图 12.7. 过程的最终版本