信息系统审批流程项目流程开发手册11页.docx
《信息系统审批流程项目流程开发手册11页.docx》由会员分享,可在线阅读,更多相关《信息系统审批流程项目流程开发手册11页.docx(7页珍藏版)》请在冰豆网上搜索。
信息系统审批流程项目流程开发手册11页
信息系统审批流程项目_流程开发手册(以项目验收流程为例)
版本
修改者
日期
V1.0
2015-09-18
一、创建业务对象
1、在设计器里—>SF_APP_INFO_1.0下找到数据,点击+号,选择业务对象。
2、填写名称点击完成。
3、点击添加按钮,在名称处填写字段名,要与数据库字段一一对应。
二、创建流程
1、在设计器里找到流程点击+号——>业务流程定义。
2、填写名称点击完成。
3、选择通道,按着鼠标右键往里托通道。
4、根据需求,有多少环节托多少通道。
5、选中通道,在常规里可以修改通道名称。
6、点中活动往流程图里托。
7、同样选中活动,在常规里可以修改名称。
8、点中序列流,把各环节连接起来。
连接完成。
在流程里添加一些变量,具体哪些变量视需求而定。
专用变量的前三个是环节办理人。
lastOperation是驳回要用到的。
专用变量pi,变量类型选择GBO_PI。
选中环节,点击属性里的分配,如果当前环节是一个人办理,选择定制,并选择要分配的人。
如果要是多人会签,就选择用户列表,用户分发选择:
循环法。
绑定出选择LIST的变量。
在常规里,循环类型选择多实例循环。
复合条件直接从其他流程拷贝过来,不需要修改。
如果是团队,就选择团队,用户分配选择:
循环法。
绑定选择一个团队。
选择属性里的条件,条件可以从其他流程里拷贝过来,但是要注意的是,members要是当前办理人。
当前办理人是多人
当前办理人是团队。
三、添加资源束组
添加表单中需要的label显示
四、创建人员服务
1、创建人员服务
在设计器里——>用户界面点击+号,
人员服务。
2、添加常用变量
添加变量,具体都需要什么变量视需求组而定,但pi,bo,ti是必须的。
Pi在变量类型处选择GBO_PI,
Bo在变量类型处选择你前面建的数据,
Ti在变量类型处选择GBO_TI.
3、添加资源束组
在变量里,链接本地资源,选择上面添加的资源束组.
4、画扭转图1、初始化数据
在SFTK2.0里的实施找到组件GS_InitForDraft后续组件都是这样找。
初始化数据组件,要在数据映射里映射一些变量,其他组件大同小异。
有些组件会在前后置中写代码,详情看组件.
2、查询字典表
根据类型查询字典表里的值
添加专用变量typesString类型的List,并赋初始值,专用变量dataMap类型。
专用变量nvpDateDics和nvpDateDic前者是NameValuePair类型的List后者是NameValuePair类型
并把他们在数据映射里分别映射
并在组件后置里获得值
3、获得部门经理
获得申请人的部门经理,新建三个专用变量,分别是,ManagerEmployeeID、ManagerName、ManagerAccount。
并把这些变量在数据映射里映射。
4、获得历史附件
获得历史附件,新建专用变量oldTiid,并在数据映射里映射数据。
5、画表单
画表单,双击进去。
拉一个CVPageNavHeader控件。
并在配置里。
拉一个CVPageTotalBusinessInfo,其他的Coach都写在这个里面。
再拉一个CVPageTitleHead,表头,在常规的标签那,可以选择资源束组里定义的lebel。
拉一个CVPageselect2,并在常规里设置。
在配置里设置
选择立项申请单
单选框
人员选择组件CVPageSelectorUser
多行文本框CVPageTextArea
附件CVPageFiles
历史控件CVPageHistory
按钮控件CVPageButtonGroup,需要什么按钮就选择哪个
在做好加上一个CVPageBottom
托一个定制HTML控件,里面可以写js代码。
$(document).ready(function(){
$("#biz").parent().hide();
$("#biz").parent().parent().siblings().hide();
if($("#commCheck").prop("checked")){
$("#biz").parent().show();
$("#biz").parent().parent().siblings().show();
}else{
$("#biz").parent().hide();
$("#biz").parent().parent().siblings().hide();
$("#commCheck").on("click",function(){
if($("#commCheck").prop("checked")){
$("#biz").parent().show();
$("#biz").parent().parent().siblings().show();
}else{
$("#biz").parent().hide();
$("#biz").parent().parent().siblings().hide();
require(["dojo/ready","com.ibm.bpm.coach/engine"],function(ready,engine){
$("#deptId").val(engine.GlobalAssets.local.bo.PRO_NAME);
$("#deptnameid").val(engine.GlobalAssets.local.bo.PRO_DEPT_NAME);
functionselectdept(v){
$("#deptId").val(v.value.split("|")[1]);
$("#deptnameid").val(v.value.split("|")[6]);
现在就可以看一下表单了
回到流程图
在Coach前置后置写代码,前置是需要在页面初始化的数据,后置是要保存到数据库的数据
6、计算下一步审批人
拉一个GS_CheckAssigneesAndData控件
拉一个决策网关,和一个保留在页面上。
决策网关用来做判断的,有下一步审批人往下一步走,没有就留在当前页面
7、更改PI的值,把pi映射8、创建表单号9、更改pi里的表单号10、保存业务数据11、完成当前环节任务12、更改流程实例状态13、输出下一环节办理人14、点击保存
点击保存,前置写tw.local.bo.PI_STATUS="40";状态改为草稿。
更改流程实例为草稿
15、关闭按钮
关闭,什么不用改
16、绑定流程数据映射
五、第二环节
把第一个用户界面重复一个,绑定在第二个环节的的实施上。
把不需要的变量都删掉
把GS_InitForDraft组件删掉,拉一个GS_RetrieveBusinessDataFromDB读取业务数据
把GS_GetDataDictByTypes、IS_GetManagerInfo、GS_GetTiidByActivityName组件都删了
拉一个GS_GetTi组件
把GS_UpdatePi、GS_CreatBtNo、GS_UpdateProcessInstanceBtNo、GS_UpdateProcessInstanceStatus组件都删掉
把GS_SaveBusinessDataToDB的数据映射的updateOnly改成true
把GS_CompleteTi的数据映射的operation改为使用缺省值
把指定输出改为
转办
拉一个GS_ReassignTask组件,建两个专用变量reassignComments、reassignTo
Close为推迟任务,不用改
驳回:
拉一个GS_RejectTask组件,建一个输出变量calculatedOperation。
toSendMail,如果是驳回到申请人可为空,如果不是申请人,建一个String类型的List
变量toUsers在前置写如下代码
tw.local.toUsers=newtw.object.listOf.String();
tw.local.toUsers[0]=要驳回环节的处理人;
业务表单前置后置,不需要的代码删掉
把表单里面,上环节输入的值,本环节不需要修改的,改为只读的,并绑定bo里对应的值
附件改为只读的
审批意见,拉一个CVPageOpinionInfo
点击驳回的时候
在流程里连一条线
六、第三环节
和第二环节一样,就是该一些输出参数,具体要看业务需求。
七、第四环节
要改一个计算下一环节办理人
修改一下指定输出
添加三个组件
无标题2,判断是否需要最后一环节审批。
不需要最后一环节审批,GS_UpdateProcessInstanceStatus更改流程状态为完成。
GS_SendMail1发给申请人流程完成邮件。
发邮件要新建一个专用变量toUser类型为String的List
在前置写一下代码
tw.local.toUser=newtw.object.listOf.String();
tw.local.toUser[0]=tw.local.pi.creatorAccount;
需要改一下表单。
具体根据需求。
八、第五环节
和上一环节一样,把无标题二删了。
把表单全部改为只读的。
九、流程完善
加两个决策网关,分别用来判断是否需要业务部门审批和项目委员会审批
是否需要业务部门
是否需要项目委员会
希望以上资料对你有所帮助,附励志名言3条:
1、生命对某些人来说是美丽的,这些人的一生都为某个目标而奋斗。
2、推销产品要针对顾客的心,不要针对顾客的头。
3、不同的信念,决定不同的命运。