【案例背景:申请者填写申请单,启动流程,如果不大于10万元,部门经理审批,同意则告知申请人,不同意则流程直接结束;如果大于10万元,总经理审批,同意则告知申请人,不同意则流程直接结束。】
1.右键数据表 【添加工作流业务的字段】并执行【创建表】与【数据访问源码生成】
2.创建BC(添加业务组件)
3.创建VC(添加业务视图组件)
*VC需要创建3个,1个列表格式,2个编辑格式(一个做编辑用,一个做审批用)
4.创建BPO(添加业务单元)
*BPO需要创建3个,一个为列表主页面,一个为维护页面,一个为审批页面
1.右键【工作流管理】点击【添加工作流模型】
*若项目包内无工作流管理模块可右键项目包点击【工作流管理】即可
2.绘制工作流图
3.【流程状态数据】添加条件字段【申请金额】
*无需执行【创建表】与【数据访问源码生成】
4.右键工作流图的连接线点击【属性】进行【流程条件编辑】
*有条件的连接线都需要进行【流程条件编辑】
同意、不同意的线上使用IdeaCode字段, 1代表同,2代表不同意:
5.右键【抽象领域业务模型】点击【添加业务分类】
*若项目包内无抽象领域业务模型模块可右键项目包点击【抽象领域业务模型】即可
6.配置该业务分类
【业务注册表】
选择审批的BPO
选【是否启用】将其启用
【意见代码注册】:点击【自动添加常用意见】,若想自定义意见可右键插入或删除
【业务操作动作】:点击【自动添加流程常用动作】右键可插入自定义行为或删除
【节点模型表】:右键插入,选择审批用的BPO
*给每一个节点配置一个模型,因为每一个节点代表业务流程中的一个审核点,也许看到的内容一样,也许不一样,在此可根据业务的需要进行相关的配置。权限名称根据流程节点名称来命名,这样就不会混乱。每添加一个权限后,都需要点击【自动添加流程常用动作】和添加业务权限。
部门经理审批与通知申请人也如上操作
7.【单个导出业务类型信息】
8.绑定【所属业务分类】并在流程节点上选择定义好的节点模型表下的权限名称
*【部门经理审批】、【通知申请人】节点也选择对应的权限
1.点击【请款单列表】BPO使焦点在其身上,点击【工作流启动列表处理】
BCName:主BC的名字。
VCName:对应的列表格式的VC。
EditBPOName:用于维护页面的BPO名字。
ViewBPOName:可以用维护页面的BPO,也可以单独做一个BPO。
运行后对应的列表VC上会产生一组如下按钮:
2.点击【请款单维护】BPO使焦点在其身上,点击【工作流启动表单】
BCName:主BC的名字。
VCName:对应的编辑格式的VC。
FlowID:带版本号的流程编号。
FlowFrom:0---固定流程;1----从列表选择流程。这里选择0.
StartMode:0---直接启动;1----下一步按钮启动。这里选择0.
BusinessTypeID:领域业务种类包下的类型编码。BT_10001
FlowDataOID:默认值BusinessKey
运行后对应的编辑VC上会产生一组如下按钮:
以及如下一组函数:
需要把刚才在【流程状态数据】添加的条件字段【申请金额】加在__StarFlow函数参数中
添加此代码:
FlowSessionEx(FlowID).WriteFlowData(FlowID,FlowInst,"SQMoney",Convert.ToDecimal(SQmoney));
将参数SQmoney添加至Call__StartFlow
修改【请款单维护】VC里按钮【启动流程】代码:
3.点击【请款单审批】BPO使焦点在其身上,点击【工作流启动表单】
MainBC:主BC名称。
IsDate:是否和流程有关(1,0),并且通过读流程状态数据。填写默认值1.
FlowDataOID:填写默认值BusinessKey
BUDataOID:业务表主键字段(IsDate==1),填写主BC对应OID主键
FlowActionButtonVC:流程动作按钮所在的vc,可以填写,默认在流程处理VC上。
KeyDataType:主键的数据类型【ucmlkey,int,string】三种
运行后该BPO将产生3个行为参与者业务组件,4个挂载VC,3个函数
1.勾选【是否设计生成】后右键【款项申请流程模型】按顺序执行下图3个步骤
2.【编译工作流引擎终端程序】
3.生成下面3个业务单元并执行第14步进行整体编译(Ctrl+Alt+B)
1.【启动工作流服务器】
流程启动成功后可在【待办事宜】执行该任务即可往下走流程了