Foxtable(狐表)用户栏目专家坐堂 → 请教一个关于0库存作业的思路【附例子,望高手指点】


  共有7272人关注过本帖树形打印复制链接

主题:请教一个关于0库存作业的思路【附例子,望高手指点】

帅哥哟,离线,有人找我吗?
even0898
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:186 积分:1294 威望:0 精华:0 注册:2011/8/17 17:29:00
请教一个关于0库存作业的思路【附例子,望高手指点】  发帖心情 Post By:2013/3/1 11:17:00 [只看该作者]

公司的业务要求是尽量物料0库存作业,就是说客户有订单的时候,有库存的话,先出库存,库存不够再请购

请购量的公式就是 客户订单数-库存数

然而实际在业务操作上,经常会出现一颗物料2家客户同时采购同一物料的情况

比如说A物料的库存是10,客户1下了20个,那么这次的请购就是20-10=10个,在客户1的订单还没有出入库的情况下,客户2又下了同一物料30个

这个时候客户2的请购量就变成30-10 =20 ,总请购量30+库存10 =40,不够总客户订单量50

为解决这个问题,在库存表字段里加如合计待入库,合计待出库字段,

请购量的计算公式为: 客户订单数-库存数-合计待入库数+合计待出库数

计算的过程如下

A物料的库存是10,客户1下了20个,那么这次的请购就是20-10-0+0=10个,保存订单表后库存为10,合计待出20个,合计待入10个,客户2下单30个,订单生成时 请购量为30-10-10+20 = 30个,总请购40+库存10 =50,等于总客户订单量50,以此类推

 

现在的问题是,如果作业员在录单的时候临时改变了订单数的话,上述的公式又无效了,比如客户1的订单是20个,保存后订单表后,库存为10,合计待出20,合计待入10,如果发现订单数错了,改成30,请购量 = 30-10-10+20 =50个

 

请教一下有这方面流程经验的高手,这个请购量的公式到底要怎么写呢?附例子

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:库存演算.foxdb


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251060 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/3/1 11:47:00 [只看该作者]

呵呵,你的例子做得不错,将复杂的问题,用一个简单例子表述出来了。

 

改变设计思路,库存表增加请购量列,请购量本来就是某个产品的请购量量。

 

  

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:库存演算.foxdb

 


 回到顶部
帅哥哟,离线,有人找我吗?
muhua
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:等待验证 帖子:3855 积分:20692 威望:0 精华:5 注册:2012/6/21 14:03:00
  发帖心情 Post By:2013/3/1 11:48:00 [只看该作者]

用户已被锁定

 回到顶部
帅哥哟,离线,有人找我吗?
even0898
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:186 积分:1294 威望:0 精华:0 注册:2011/8/17 17:29:00
  发帖心情 Post By:2013/3/1 12:39:00 [只看该作者]

以下是引用狐狸爸爸在2013-3-1 11:47:00的发言:

呵呵,你的例子做得不错,将复杂的问题,用一个简单例子表述出来了。

 

改变设计思路,库存表增加请购量列,请购量本来就是某个产品的请购量量。

 

  

 下载信息  [文件大小:292.0 KB  下载次数:2]

图片点击可在新窗口打开查看点击浏览该文件:库存演算.foxdb

狐狸爸爸,这不对...第二次的请购量是不正确的..

如下图,第二次的请购量应该是50才对啊

 


 


图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
even0898
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:186 积分:1294 威望:0 精华:0 注册:2011/8/17 17:29:00
  发帖心情 Post By:2013/3/1 12:40:00 [只看该作者]

我要的请购量是单次订单实际要请购的...


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251060 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/3/1 12:41:00 [只看该作者]

库存是,第一次销售40,请购30,第二次销售50,请购就是(30+ 50) = 80


 回到顶部
帅哥哟,离线,有人找我吗?
even0898
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:186 积分:1294 威望:0 精华:0 注册:2011/8/17 17:29:00
  发帖心情 Post By:2013/3/1 12:54:00 [只看该作者]

Select Case e.DataCol.name
    Case "订单量"
        Dim pr As DataRow = e.DataRow.GetParentRow("库存表")
        For Each dr As DataRow In pr.GetChildRows("订单表")
            Dim flt As String = "料号 = '" & dr("料号")  & "' And [_Identify] > " & dr("_Identify")
            dr("请购量") = pr("请购量") - e.DataTable.compute("Sum(订单量)",flt)
        Next
End Select

还是  dr("请购量") 的问题图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
even0898
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:186 积分:1294 威望:0 精华:0 注册:2011/8/17 17:29:00
  发帖心情 Post By:2013/3/1 13:00:00 [只看该作者]

以下是引用狐狸爸爸在2013-3-1 12:41:00的发言:

库存是,第一次销售40,请购30,第二次销售50,请购就是(30+ 50) = 80

总请购量是没错的,我要的是在订单表里正确计算出该次的请购量,你给我的是总请购量啊


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251060 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/3/1 14:15:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:库存演算.foxdb


 回到顶部
帅哥哟,离线,有人找我吗?
even0898
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:186 积分:1294 威望:0 精华:0 注册:2011/8/17 17:29:00
  发帖心情 Post By:2013/3/1 16:36:00 [只看该作者]

图片点击可在新窗口打开查看谢谢狐爸爸,这个思路太精巧了...

奇怪,这个例子在实际应用当中很常见啊,肿么没人顶图片点击可在新窗口打开查看


 回到顶部
总数 11 1 2 下一页