BPM流程开发入门视频_04 · 联通工业互联网联盟
概括:在(BPM流程——将审批权限给特定身份的人)基础上,使用表单设计器,设计请假表单,不使用自动生成的表单。

步骤预览

image.png
使用开发者账号登录平台

1.窗体设计

  • 新增功能文件夹,命名为演示流程,再在演示流程文件夹下创建请假流程文件,在请假流程文件下创建ds文件夹,方法如下图

BPM流程4——表单设计器 - 图2
BPM流程4——表单设计器 - 图3
(创建完成结果图)

  • 在请假流程文件夹下创建请假表单、请假窗体

image.png
(创建请假窗体步骤图)
image.png
(创建请假表单步骤图)

  • 在ds文件夹下创建数据服务,命名为初始化数据服务

image.png2.请假窗体设计

  • 为新增窗体添加参数IsEdit(是否可编)

image.png

请假窗体的窗体设计界面

BPM流程4——表单设计器 - 图8
1.添加控件panel
BPM流程4——表单设计器 - 图9
2.控件panel中添加bpmEngine控件

BPM流程4——表单设计器 - 图10BPM流程4——表单设计器 - 图11
3.控件panel中添加bpmToolbar控件
BPM流程4——表单设计器 - 图12
3.控件panel中添加excelForm控件
image.png
设置完毕后点击BPM流程4——表单设计器 - 图14

  • 设置请假窗体的初始化后脚本,关联请假表单

代码如下
excelForm1.IsEdit = Page.Request.IsEdit==1;
excelForm1.FormID = “D07E1D4AF36D4BCDB7285C1ABECCF6EA”;//插入请假表单
excelForm1.FormArgs = {
BizID:bpmEngine1.Context.BizID
};
excelForm1.Refresh();
BPM流程4——表单设计器 - 图15
设置完毕后点击BPM流程4——表单设计器 - 图16

2.为初始化数据服务添加参数和脚本

  • 在初始服务化数据服务中添加参数BizeID

BPM流程4——表单设计器 - 图17BPM流程4——表单设计器 - 图18

  • 编写脚本

脚本代码如下
—根据流程编码BizID、人员编码PersonID、更新流程表中的基本信息字段
—流程发起时,流程表单即可读取流程表BPM_pack5_Main中的数量
—实现自动获取当前发起人的基本信息

UPDATE BPM_D_pack5_Main—更新流程表BPM_D_pack5_Main
SET
B0001=A01.B0001,—所属公司
B0002=A01.B0002,—部门
B0003=A01.B0003,—岗位
A0101=A01.A0101,—姓名
PersonID=@Session_PersonID—人员编码
FROM BPM_D_pack5_Main M,A01 A
WHERE M.BizID=@BizID AND A01.PersonID=@Session_PersonID
BPM流程4——表单设计器 - 图19
设置完毕后点击BPM流程4——表单设计器 - 图20

3.请假表单的设计

1)添加参数

BPM流程4——表单设计器 - 图21BPM流程4——表单设计器 - 图22

2)单击设计按钮,登录表单设计器

设计表单,点击【导入】按钮,可以导入事先画好的请假表单
BPM流程4——表单设计器 - 图23
BPM流程4——表单设计器 - 图24

3)新建数据源,设置类型为返回单行结果,数据源名称和流程数据模型名称一致

BPM流程4——表单设计器 - 图25
image.png
BPM流程4——表单设计器 - 图27
代码如下:
SELECT
(SELECT UnitName FROM B01 WHERE UnitID=BPM_D_pack5_Main.B0001) AS 所属公司,
(SELECT UnitName FROM B01 WHERE UnitID=BPM_D_pack5_Main.B0002) AS 部门,
(SELECT JobName FROM G01 WHERE JobID=BPM_D_pack5_Main.B0003) AS 岗位,
A0101 AS 姓名,
(SELECT CodeItemName FROM SM_CodeItems WHERE CodeID=’QJ’ AND CodeItemID=BPM_D_pack5_Main.HolidayType) AS 请假类型,
Reason AS 请假原因,
StartDate AS 开始时间,
Holidays AS 请假天数,
EndDate AS 结束时间,
Attachment AS 附件,
Remarks AS 备注
FROM BPM_D_pack5_Main
WHERE BizID=@BizID
BPM流程4——表单设计器 - 图28

4)设置单元格条件

请假类型
BPM流程4——表单设计器 - 图29
注意:不可编辑单元格为蓝色;可编辑为红色
若在可编辑单元中,需要插入条件时,给【允许编辑】、【快速编辑保存SQL】打上勾,可在保存脚本框中检查系统自动生成的更新脚本,单击【保存脚本】或【插入】即可
>>开始时间和结束时间步骤相同
BPM流程4——表单设计器 - 图30
>>请假原因
image.png
>>备注
image.png
>>附件
image.png
BPM流程4——表单设计器 - 图34

4.回到BPM流程,在请假流程中新建自定义表单

BPM流程4——表单设计器 - 图35
BPM流程4——表单设计器 - 图36BPM流程4——表单设计器 - 图37

5.将流程pack5另存为pack6

BPM流程4——表单设计器 - 图38

6.为另存的pack6调整其请假流程设计界面的内容

点击空白的地方将任务表单修改为【只读表单】为流程的默认表单
BPM流程4——表单设计器 - 图39
申请人填写这一节点的任务表单为【编辑表单】
BPM流程4——表单设计器 - 图40

7.保存发布

BPM流程4——表单设计器 - 图41

8.演示

以admin的身份登录发起流程
BPM流程4——表单设计器 - 图42
BPM流程4——表单设计器 - 图43
可以查看流程状态,看到它的申请时间大于三天,审批人则是刘二
BPM流程4——表单设计器 - 图44
以刘二的身份登录审批
BPM流程4——表单设计器 - 图45
打开SQL Server查看演示表Demo_AskHoliday中是否存在数据
查询语句:
select * from Demo_AskHoliday
BPM流程4——表单设计器 - 图46