前页 | 后页 |
带有链接事件的斐波那契数字生成器
链接事件是一种用于连接流程的两个部分的机制。可以使用链接事件:
- 要创建循环方案,请在流程级别将其作为通用的“转到”对象
- 为了避免较长的顺序流线;配对的链接事件可以用作“页外”连接器,以跨多页打印流程
可以有多个源链接事件,但是只能有一个目标链接事件。
- 目标链接事件标记未填充,以“捕获”源链接
- 源链接事件标记被填充为“抛出”到目标链接
创建BPMN模型
- 创建一个StartEvent S1
- 将序列流添加到目标abstractTask活动元素next = first + second (打开“属性”对话框,并将“类型”字段设置为“ abstractTask”)
- 将序列流添加到目标abstractTask 活动元素first = second
- 将序列流添加到目标abstractTask活动元素second = next
- 将序列流添加到目标abstractTask活动元素n ++
- 将序列流添加到目标专用网关元素loopNode (在即时菜单上,选择“专用”)
- 将序列流添加到以下每个目标元素:
-投掷链接中间事件元素SetNext (打开“属性”对话框并设置
将“类型”字段更改为“投掷>链接”) 和
-结束事件元素E1
- 创建一个捕捉链接中间事件元素SetNext (打开“属性”对话框,并将“类型”字段设置为“捕捉>链接”)
- 将序列流添加到目标元素next = first + second
配置BPSim
我们将使用属性参数来定义序列如何形成一个循环,在该循环中将生成斐波那契数。循环机制是通过一对链接事件实现的。
打开“配置BPSim”窗口(“模拟>过程分析> BPSim>打开BPSim Manager”)
任务 |
行动 |
---|---|
元素:S1 |
在左侧的元素类型列表中,展开Start Event组,然后单击S1 。 单击“控制选项卡”和“新参数”下拉箭头;选择“ TriggerCount”。 在“值”字段中,输入“ 1”。 点击“属性”标签 改写“ 新属性”文本以创建以下属性:
|
元素:next = first + second |
在元素类型列表中,展开“活动”组,然后单击next = first + second 。 单击“属性”选项卡,并在“ 新属性”文本上键入“下一个”。 在“值”字段中,单击按钮,单击“表达式”选项卡,然后键入表达式“ {first} + {second}”。 单击确定按钮。 |
元素:first = second |
在元素类型列表中,在“活动”组中,单击first = second 。 单击“属性”选项卡,并在“ 新属性”文本上键入“ first”。 在“值”字段中,单击按钮,单击“表达式”选项卡,然后键入表达式“ {second}”。 单击确定按钮。 |
元素:second = next |
在元素类型列表中,在“活动”组中,单击second = next 。 单击“属性”选项卡,并在“ 新属性”文本上键入“第二”。 在“值”字段中,单击按钮,单击“表达式”选项卡,然后键入表达式“ {next}”。 单击确定按钮。 |
元素:n ++ |
在元素类型列表中,在“活动”组中单击n ++ 。 单击“属性”选项卡,然后用“ n”覆盖新属性文本。 在“值”字段中,单击按钮,单击“表达式”选项卡,然后键入表达式“ {n} +1”。 单击确定按钮。 |
网关条件 |
在元素类型列表中,展开Gateway组和LoopNode元素,然后单击SetNext 。 单击“控制”选项卡,然后单击“新参数”下拉箭头,然后选择“条件”。 在“值”字段中,单击按钮,单击“表达式”选项卡,然后键入表达式“ {n} <= {N}”。 单击确定按钮。 现在单击E1 。 单击“控制”选项卡,然后单击“新参数”下拉箭头,然后选择“条件”。 在“值”字段中,单击按钮,单击“表达式”选项卡,然后键入表达式“ {n}> {N}”。 单击确定按钮。 |
运行模拟
- 在“配置BPSim”对话框中,在工具栏中,单击“运行”图标;显示“ BPSim Simulation Controller”对话框
- 单击“运行”图标下拉箭头,然后选择“标准模拟”
- 模拟完成后,单击工具栏中的图标。显示“ BPSim PropertyParameter Values”对话框
- 单击查询按钮,然后单击“按元素分组”选项卡,然后展开“ next = first + second”;列出了所有属性的快照值
- 应用过滤器“下一个”(右键单击列表标题,选择“切换过滤器栏”,然后在“元素”标题下键入“下一个”);结果将类似于此图像:
2,3,5,8,13,21,34,55,89,144