以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]先进的先出 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=86739) |
||||
-- 作者:huhu -- 发布时间:2016/6/24 15:48:00 -- [求助]先进的先出 在库存明细里面都是按照序列号来进行管理的。 每个序列号都有自己的在库生命周期,单位是天。 出库的原则是先进先出。 比如现有一个订单号为123的订单需要发货100台。在库存明细里面有50台在库时间是2天的,100台在库时间是1天的。 也就是说在库时间为2天的50台必须出掉,同时在在库时间为1天的100台里面随便出50台出就行。 不能为了方便直接把在库时间为1天的100台出掉。
这个怎么写呢? |
||||
-- 作者:大红袍 -- 发布时间:2016/6/24 15:56:00 -- 思路:统计出库总数,比如已出库1234,现在要出库100。循环入库每一行,累加每一行的值,直到大于1234,然后接着循环,减去100的值
参考
http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=82143&skin=0
|
||||
-- 作者:大红袍 -- 发布时间:2016/6/24 15:56:00 -- 不会做请上传实例。 |
||||
-- 作者:huhu -- 发布时间:2016/6/24 16:10:00 -- 思路我还是不懂,能再说明白一下么。 比如我现在已经找出来可以满足发货要求的行,然后在这些行里面挑出先进的先出。没搞懂。 Dim drs As List(of DataRow) = DataTables("库存明细表").SQLSelect("订单号 = \'" & Vars("xsddh") & "\' and 状态 = \'入库完成\'") End If |
||||
-- 作者:大红袍 -- 发布时间:2016/6/24 16:14:00 -- 看2、3楼。不会做,单独做个例子发上来。 |
||||
-- 作者:huhu -- 发布时间:2016/6/24 16:38:00 --
例子简单。 问题说一下。在销售出库单双击发货单号,会打开配货整理窗体,里面绑定了配货明细表。 现在每扫一个SN,就需要到库存明细里面找符合要求的,物料编码相等,订单号相等,然后按照先进先出的原则出库。当出库总数量和预发货数量相等,销售发货单的配货状态就变为true。再扫到序列号都不能出库, |
||||
-- 作者:大红袍 -- 发布时间:2016/6/24 17:05:00 -- 直接新增行测试。
|
||||
-- 作者:huhu -- 发布时间:2016/6/24 17:12:00 -- 一定要升级到最新版本才能打开吗?我的是老ft版本,还没敢升级。 |
||||
-- 作者:大红袍 -- 发布时间:2016/6/24 17:14:00 -- 安装最新版,然后拷贝最新的文件出来,重新安装你的旧版本。
要打开新版,就先启动那个拷贝出来的文件夹exe |
||||
-- 作者:huhu -- 发布时间:2016/6/25 12:12:00 -- Select Case e.DataCol.name 单从看代码,我觉得有问题。你是先得到物料编码和订单号,然后得到SN。 正常情况SN不是得到的,是扫描枪扫出来的,根据SN在库存明细管理表里得到物料编码和订单号,然后与销售出库单比较,是否一致。如果一致,那么先进先出。 |