系统自动根据当天已审核的“销售订单”生成“生产计划”,一个“销售订单”对应一个“生产计划”;
根据“库存表”中已有的库存分配“生产计划”的“分配库存”;
“库存表”中的库存被“分配”减少库存,锁定分配库存的数量;
当库存不足时创建“采购订单”;
上述功能如何实现呢?
★利用计划任务每天自动执行无人值守操作,当计划任务保存表单时,触发业务公式的保存表单后事件,在该事件中调用子数据源对“销售订单”、“生产计划”、“库存表”、“采购订单”做操作。
详细实现步骤如下:
1)新建计划任务,并配置计划任务执行的模板“计划任务测试”。
①在云表浏览器的左侧导航栏中依次打开“系统管理”-“系统服务”-“计划任务服务”文件夹,找到“计划任务”,新建计划任务,设置计划任务的“开始”时间,间隔周期,并勾选“启用”,选择执行计划任务的模板“计划任务测试”;
如下图配置后,从9月13日开始,每天23:59:59分自动新建以后一张“计划任务测试”表单。
②给“计划任务测试”设置数据项“ID”,通过自动编号给该数据项自动赋值;
该数据项的作用,主要用于标注本次操作将对哪些“销售订单”,“生产计划”执行操作,便于数据接口的快速精准过滤;
2)标记当天审核的销售订单。在《计划任务测试》模板的保存表单后事件中,添加对《销售订单》的操作,给当天审核的销售订单赋值“任务ID”。
3)在《计划任务测试》模板的保存表单后事件中,根据当天审核的“销售订单”生成“生产计划”,一个“销售订单”对应一个“生产计划”。
①针对《生产计划》的基本信息操作时,调用子数据源 销售订单.销售订单列表(ID)对“生产计划”执行“新建表单”操作,并赋值任务ID;
该数据接口的数据源为“本模板(销售订单)”,数据列为销售订单的基本数据项,过滤条件如下;
②针对《生产计划》的明细信息操作时,需要完成2件事:根据销售订单的商品明细生成生产计划的商品明细,并计算商品的可分配库存。
当商品的库存为空的时候,直接分配库存为0;
当商品的销售数量 < 剩余库存( 库存数量 - 已合计分配库存 )时,直接分配库存销售数量;
当商品的销售数量≥剩余库存( 库存数量 - 已合计分配库存 )时,直接分配剩余库存;
★根据销售订单的商品明细生成生产计划的商品明细。调用数据接口 销售订单.查询销售商品明细(销售单号),查询该销售订单的商品明细;
该数据接口的数据源为“本模板(销售订单).明细”,数据列为明细的数据项,过滤条件如下:
★计算商品的可分配库存。查询《库存表》原料仓(为了简便以仓库编号02 为例)的商品库存数量 库存表.查询商品库存(仓库编号,商品编号),并查询合计被《生产计划》分配的库存 生产计划.商品合计分配库存(任务ID,商品编号);
数据接口“查询商品库存”,数据源为“本模板(库存表)”,数据列为本模板的数据项,过滤条件中有2个参数;
数据接口“商品合计分配库存”,数据源为“本模板(生产计划).明细”,数据列“合计分配库存”调用“合计”函数,合计已分配的库存,
过滤条件中有2个参数“任务ID”和“商品编号”;
4)在《计划任务测试》模板的保存表单后事件中,根据该“任务ID”对应的所有“生产计划”,计算商品的分配库存合计,将分配的库存进行锁定和扣减
给锁定数量赋值时,填写条件表达式,当库存表的库存≥合计分配库存时,锁定“合计分配库存”数量,否则,锁定库存表中已有的库存数量;
给库存数量赋值时,填写条件表达式 当 库存表的库存≥合计分配库存时,库存数量=库存数量-合计分配库存,否则为0;
①计算商品的分配库存合计,通过数据接口 生产计划.商品分配库存合计(任务ID)计算本次任务中不同商品的分配库存合计;
数据源为本模板(生产计划).明细,数据列添加“商品编号”和“合计(本模板.明细.分配库存)”,根据商品合计分配库存;
过滤条件添加参数“任务ID”,查询该任务ID下的所有商品明细;
5)在《计划任务测试》模板的保存表单后事件中,若有未足额分配的商品,自动生成“采购订单”;
①针对采购订单的基本信息操作,根据“任务ID”查询未分配足额的商品数,若未分配的商品数>0,则新建“采购订单”;
数据接口 生产计划.未分配足额商品数(任务ID) ,数据源为“本模板(生产任务).明细”,数据列中计数商品;
过滤条件中添加参数“任务ID”,过滤出该“任务ID”下 生产总量 > 分配库存 的商品;
②针对采购订单的“明细”操作,通过数据接口 生产计划.商品合计情况(任务ID) 查询该任务ID下所有商品的合计情况,当商品的生产总量 > 分配库存 时,需要采购;
设计数据接口 生产计划.商品合计情况(任务ID),数据源为“本模板(生产计划).明细”,数据列中根据商品分组小计 生产总量和分配库存,
过滤条件,根据“任务ID”过滤;
6)应用效果
①销售订单。9月13日审核2个销售订单,合计销售 001商品 25台,002商品 20台,008商品 30台;
②库存表如下:
③根据计划任务自动运行后
根据销售订单自动生成2个“生产计划”,并填写好分配库存,合计分配库存数量 001商品 25台,002商品0台,008商品24台;
④自动锁定已分配的库存
⑤自动生成“采购订单”,采购足额分配的商品数量