资源描述:
《多单位拆并箱》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、多单位拆并箱多单位出货/杂发时..出现当前单位的imgg库存不足,但是总库存img又可以满足的情况,我们希望通过拆合其它imgg单位的数据,力图使可以出货/杂发…程序代码:sub/4gl/s_dismantle.4gl功能:拆箱/并箱前提:该拆箱功能只对料件的多单位使用方式ima906=’2’母子单位的料件有效一些说明转换率:各多单位imgg09对ima25的转换率拆箱:对大于本单位转换率的单位进行拆开的动作合箱:对小于本单位转换率的单位进行合并的动作本功能发生的时机:对可以拆箱的单位都进行了拆箱动作.但是数量还是不够满足那只能对小于本单位转换率的单位
2、做合并的动作了所以合箱一定是在拆箱之后噢..如果够拆了..但不做合箱零头:拆箱了..但是可能拆的那个单位和当前需求的单位没有转换关系,那有可能除了满足需求之外,多出一些数量来需要10个PCS,但是拆了1个KPCS,则会多出990个PCS出来噢.当前系统的处理是把多出来的数量换算成ima25,然后增加imgg09=ima25数据的数量因为每个单位都会有对ima25的转换率数量保留:自身单位就是画面上的需求的单位/又是其它单位拆箱过程中的的拆并单位的时候,本作业设置为先对自身的需求进行保留.如有多余数量再进行拆合,如果有不明白,请看示例三.(建议看过示例一
3、/二后再看它)参数(asms290):拆并箱的顺序sma903[1,1]1.从大至小拆并箱按转换率从大至小拆开/合并2.从小至大拆并箱按转换率从小至大拆开/合并零头不受上面顺序的限制,零头拆并的顺序高于正常的单位,请看示例二逐层累加拆并箱数量sma903[2,2]有可能光拆一个单位,还是不能满足数量需求.那要接着拆另一个单位的数量若此参数设为’Y’,则会累计一个个拆箱单位的数量‘N’,若本次拆箱的单位不能满足,则本个单位不做拆箱,继续看下一个单位了设这个参数的用意:希望可以尽可能多的减少拆箱的单位的数量若存在着一些数量或是转换率大的单位,则希望只对这些
4、单位进行拆合,这样就可以减少系统中的单据的数量如果还是不明白的话.请看示例一:示例一:需要PCS1000个库存PCS:10个DPCS:20个TPCS:30个KPCS:10个转换率1231000拆箱顺序:从小至大拆合1.sma903[2,2]=’Y’拆箱数量tot需要1000个PCS,自身只有10个,所以还缺990个PCStot=1020DPCS=20*2=40PCS..tot=5030TPCS=30*3=90PCStot=140还是不够..还缺860个PCS,那接着拆KPCS1KPCS=1*1000=1000PCS………………………………..够了,而且
5、还拆剩了140个PCS共拆DPCS/TPCS/KPCS三个单位,满足需要之外,还有零头140个PCS2.sma903[2,2]=’N’拆箱数量tot需要1000个PCS,自身只有10个,所以还缺990个PCStot=1020DPCS=20*2=40PCS..不够,不拆tot=1030TPCS=30*3=90PCS不够,不拆tot=101KPCS=1*1000=1000PCS………………………..………..够了,而且还拆剩了10个PCS共拆KPCS一个单位,满足需要之外,还有零头10个PCS所以可以比较出来了吧..但是第二种有不利的地方,就是有可能没有一
6、个单一单位是满足的,但是合计多个单位又是可以满足的..所以选哪个,要衡量示例二:需要PCS1130DPCS25库存PCS:10个DPCS:20个TPCS:30个KPCS:10个转换率1231000拆箱顺序:从小至大拆合sma903[2,2]=’N’逐层拆箱不累加PCS1130第一轮需求:拆箱结束后,各单位的数量库存PCS:0个DPCS:20个TPCS:30个KPCS:8个公式:2*1000-(1130-10)=880零头PCS:880DPCS25第二轮需求DPCS:25-20个DPCS,所以还缺5个DPCS没有满足因为上一轮有拆剩零头880PCS所以第
7、二轮的时候先处理零头部分880-5(DPCS)*2(转换率)=870零头870PCS如果还有需求要满足,则接着处理,如果处理结束了.多出来的零头换算成ima25的数量,然后update/insertimgg_file870pcs*1=870pcs然后更新imgg_filesetimgg10=imgg10+870whereimgg09=ima25如果没有相应的imgg_file,则做insert之所以零头先处理..先是为了要减少拆并箱的单位的数量示例三:需要PCS30DPCS15库存PCS:10个DPCS:20个TPCS:30个KPCS:10个转换率12
8、31000拆箱顺序:从小至大拆合sma903[2,2]=’N’逐层拆箱累加PCS30自身10个