理论教育 流程上下文映射及网关判断定义

流程上下文映射及网关判断定义

时间:2023-05-19 理论教育 版权反馈
【摘要】:2)将上下文的根结点结构“Context”拖曳至右侧模型编辑器中,生成了“DO_Context”的流程上下文对象,即完成了流程上下文的声明。图7-98 绑定Web Dynpro项目后的效果图7-99 生成“DO_Context”对象3)接着选中用户动作,打开下方的“Input”页签,完成从左侧流程上下文到右侧流程任务所需上下文的映射,如图7-100所示。图7-100 流程上下文映射1图7-101 流程上下文映射26)接着进行网关判断的定义。

流程上下文映射及网关判断定义

1)在上一节中,完成了BPM中的流程流转动作与Web Dynpro中的事件绑定。而同时在BPM工程的数据类型中也完成了对Web Dynpro上下文的引用,展开BPM工程目录中的“Data Types”就能看到引用的结果,如图7-98所示。

2)将上下文的根结点结构“Context”拖曳至右侧模型编辑器中,生成了“DO_Con⁃text”的流程上下文对象,即完成了流程上下文的声明。完成上下文定义后,需要完成流程上下文映射网关判断逻辑任务审批人任务标题的配置,如图7-99所示。

978-7-111-58177-2-Chapter07-116.jpg

图7-98 绑定Web Dynpro项目后的效果

978-7-111-58177-2-Chapter07-117.jpg

图7-99 生成“DO_Context”对象

3)接着选中用户动作,打开下方的“Input”页签,完成从左侧流程上下文到右侧流程任务所需上下文的映射,如图7-100所示。

4)打开下方的“Output”页签,完成从左侧流程任务输出的上下文到右侧流程上下文的映射,如图7-101所示。

5)按照同样的操作,将其余的用户动作结点进行上下文映射。参考Web Dynpro开发模式,可以将“DO_Context”流程上下文对象想象成Web Dynpro中的组件控制器,工作流中的数据流转都需要通过“DO_Context”进行同步,但与组件控制器不同的是,“DO_Context”只有数据定义而没有逻辑定义。

978-7-111-58177-2-Chapter07-118.jpg

图7-100 流程上下文映射1

978-7-111-58177-2-Chapter07-119.jpg

图7-101 流程上下文映射2

6)接着进行网关判断的定义。选中流程中的网关,勾选“refuse”为默认的,接着选择“Appr”并单击“Edit”按钮,打开条件编辑,如图7-102所示。

978-7-111-58177-2-Chapter07-120.jpg

图7-102 修改网关判断条件

7)根据设计,当上下文中的“tasknode”特性值为“30”时,代表审核通过并到二级审批步骤,默认为拒绝。条件表达式的关键字可以从右侧的清单中选择,也可以手动编写,如图7-103所示。输入对应条件表达式:

string-equal(DO_Context/ProcessNode/BusiData/taskNode,"30")

978-7-111-58177-2-Chapter07-121.jpg

图7-103 修改网关判断条件表达式(www.daowen.com)

8)使用同样的方式设置二级审批的网关判断条件。

9)接着选中任务,切换至“Roles”角色页签,选中“Use an expression”单选按钮,随后单击“Ed⁃it”按钮,如图7-104所示。

10)表达式的关键字与网关逻辑判断时一样,审批人通过上下文中的“nextApprPers”传递,如图7-105所示。

978-7-111-58177-2-Chapter07-122.jpg

图7-104 编辑角色所有者

getPrincipal(UIRequest/Context/ProcessNode/BusiData/nextApprPers)

978-7-111-58177-2-Chapter07-123.jpg

图7-105 编辑表达式

11)使用同样的方式设置另外两个流程任务的审批人。

12)接着打开任务的“User Texts”页签,在“Variables”中单击“Add”按钮添加一个“taskName”的参数,随后单击“Edit”按钮,如图7-106所示。

978-7-111-58177-2-Chapter07-124.jpg

图7-106 添加变量

13)使用上下文中的“taskName”进行传递(见如图7-107),输入:

UIRequest/Context/ProcessNode/BusiData/taskName

14)完成变量创建后,接着在下方的任务标题中输入该参数,在“Subject”中输入“{taskName}”,其中“{}”表示引用参数的名称。完成设置后,所有待办的标题也可以通过Web Dynpro中的上下文进行自定义修改了,如图7-108所示。

978-7-111-58177-2-Chapter07-125.jpg

图7-107 编辑表达式

978-7-111-58177-2-Chapter07-126.jpg

图7-108 定义任务标题

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈