马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册账号
×
本帖最后由 黄春雄 于 2021-5-12 08:46 编辑
生产用料预留释放 1. 预留 1.1 可预留信息(点计算) 选择要预留的生产订单,再点计算,会计算出订单待预留存货列表,和订单预留结果列表的存货现存量 订单待预留存货列表:默认本次预留数量等于净需求数量,已分配预留数量总计=现存量,从上往下分配。本次预留数量可以手工修改,修改后已分配预留数量等于本次预留数量。 1.2 分配(点自动) 调整完本次预留数量后,需要点一下自动,点了自动后,会调整 已分配预留数量=本次预留数量,未预留数量=净需求-本次预留数量 订单预留结果列表建议预留数量和本次预留数量=已分配预留数量合计 订单预留分配表显示准备分配的订单存货及本次预留数量 1.3 预留完成(点确定) 预留完成的图片
2. 预留后的现存量 原存货现存量数量会扣减预留的数量,在后面显示相应的PE预留数量,另外会把预留的汇总明细显示出来,需求跟踪号是对应的生产订单号(如果是销售预留,则是销售定订单号),现存数量为预留的数量,总的现存量会等于前面的PE预留数量。 预留后的现存量图片 3. 释放 点计算后,会显示可以释放的记录,录入本次释放数量后,点确定就释放完成了,如果是全部释放,可以点自动,会自动填入本次释放数量=预留数量,再点确定即可完成释放 释放的图片 4. 相关后台 ---Pe预留明细 /*预留点了确定后,会往ST_PELockedDetail里写数据,isotype=7(7是生产订单子件,是销售订单),isodid(生成订单子件mom_moallocate.AllocateId) itype=0,istate=0,iunlockqty=null,ddate=预留的时间,cmake=实际预留人,(cwhcode,cinvcode,iquanty 按实际值生成) 做了材料出库单后,优先扣减预留的数量,会ST_PELockedDetail里写数据,ddate出库的操作时间,cmaker='',itype=3,istate=0,(cwhcode,cinvcode,itemid,isotype,isodid与原先一致),iquanty=负的材料出库单数量 已经保存的材料出库单,修改或删除,不会调整已经生成的PE预留数据 做了释放后,会往ST_PELockedDetail里写数据,ddate=释放的时间,cmake=释放人,itype=1,istate=0,(cwhcode,cinvcode,itemid,isotype,isodid与原先一致),iquanty=负的释放数量*/ select * from ST_PELockedDetail ---PE预留账 /*预留点了确定后,按ST_PELockedDetail里的数据汇总,没有重复的记录 select cWhCode,cInvCode,ItemId,iSoType,iSodid,cFree1,cFree2,cFree3,cFree4,cFree5,cFree6,cFree7,cFree8,cFree9,cFree10,SUM(iQuantity)iQuantity from ST_PELockedDetail group bycWhCode,cInvCode,ItemId,iSoType,iSodid,cFree1,cFree2,cFree3,cFree4,cFree5,cFree6,cFree7,cFree8,cFree9,cFree10 做了材料出库单后,iquantity=iquantity-出库单数量 做了释放后,iquantity=iquantity-释放数量*/ select * from ST_PELockedSum ---现存量表 /*预留点了确定后会把预留的数量更新到相应的现存量记录的ipeqty里,前台现存量查询会把预留的汇总明细显示出来 做了材料出库单后,会把ipeqty更新为ipeqty-出库数量,修改或删除材料出库单,不会重新调整ipeqty 做了释放后,会把ipeqty更新为ipeqty-释放数量 */ select ipeqty,* from currentstock
可以直接后台删除PE预留账和明细,这样的话就清除了PE预留的数据,重新整理一下现存量就可以正常使用,现存量的PE预留量会为0。 delete ST_PELockedDetail delete ST_PELockedSum exec SP_ClearCurrentStock_ST ----整理现存量 5. 特殊说明 PE预留是按现存量预留的,如果库存选项--可用量控制--预计出库量勾了待发货数量和调拨待发量时,现存量表里的可用量就会减少,做预留的时候超过了可用量,就会提示出错PE存货的现存量或锁定量小于0,预留PE件失败! 如果要按可用量做预留,前台没有设置,需要调整后台视图v_reservStock_batch, 把视图里的可预留数量 convert(decimal(38,6) ,isnull(Cur.iQuantity,0)-isnull(cur.fStopQuantity,0))as iquantity 改成convert(decimal(38,6),isnull(Cur.iquantity,0)-IsNull(Cur.fOutQuantity,0)-IsNull(Cur.fTransOutQuantity,0)-IsNull(Cur.fStopQuantity,0))as iquantity 就可以了
|