不同工作流的衔接
回顾一下在第10章定义的一个《出库单》模版,仓库保管员在填写出库单时,需要先选择一个未发货的订单号,如下图,也就是说,出库单必须有依据,这个依据就是订单。
从另一方面来说,一但一份订单审批通过,发货就是一项明确的必须做的工作,不允许出现订单审批早已通过,而保管员“忘了”发货的情况。
如何保证保管员不会“忘记”发货呢,如果保管员不去填报《出库单》,就无从知道有哪些订单正在等待处理。一种较好的“适时提醒”方式是待办事宜:每有一份订单审批通过,就在保管员的待办事宜列表中增加一项。
待办事宜列表是在表单的流转过程中产生的。工作流是基于模版的,它规定了特定的一种表单的流转方式。这里的问题是,订单和出库单是两个不同的模版。订单有订单的工作流,出库单也可以有出库单的工作流,两者没有关系。
本节要讲述的内容是,如何让不同模版的工作流衔接起来。具体来说,就是在订单流程的末尾,增加一个特殊的任务,它的作用就是“转填新报表”(出库单),并且把订单号传递到出库单上,结果就是:每份订单审批通过后,在保管员的待办事宜列表中会有一项任务,提示发货。
建立发货流程
- 打开《出库单》模版,进入设计状态
- 定义工作流,只建立一个任务“出库”,其有效区域选择“全部”。
- 修改表间公式“提取订单明细”,在其应用方式中增加一种,“修改(或办理)打开时”。
4.保存模版
在订单审批流程中建立“转填新报表”任务
- 请回顾第9章的练习题,我们在订单模板上定义了工作流
- 在设计栏目中找到《订单》模版,右键【工作流】。
- 弹出“工作流”窗口,点击窗口工具栏上的【转填任务】按钮,鼠标移动到画板上“审批任务”右侧单击,出现五边形框,并弹出“流程任务定义”窗口。在“常规”标签上输入任务名称“提示出库”,点击“转接流程”浏览按钮在打开窗口中选择“出库单”,在“转接节点”下拉列表中选择“出库”。
4.切换到“数据传递”标签,在“源数据项”栏的第2行下拉选择“订单_主表.订单编号”,如图,订单审批通过后,即自动提示出库,并把本订单上的“订单编号”自动传递到出库单上。
5.切换到“执行权限”选项卡,执行人选择“以下范围内用户→属于以下角色”,指定“仓库保管员”,多人协调方式选择“抢先式”,即每个储运部的仓库保管员都会接到一条待办事宜,无论谁先办理了,其它人的待办事宜即自动清除,不会出现重复发货的情况。
6.按【确定】,回到工作流画板。
7.在任务“审批”和“提示发货”之间建立一条流向,条件为:订单_主表.审批意见= 同意。
8.最后完成的工作流如下图所示。
流程相接
以某销售员的帐户登录填报一份订单,销售部经理审批同意,然后以仓库保管员的帐户登录,会看到一条待办事宜。办理此项,打开一张出库单,会看到订单的信息自动显示在出库单上。
思考题
订单的明细信息为什么会自动显示在发货单上?
提示:考虑一下从订单传递到出库单上什么信息(订单编号)?而出库单又是如何利用传递过来的信息的(表间公式)?