Foxtable(狐表)用户栏目专家坐堂 → [求助]对每天变动的库存余量进行统计汇总问题


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

主题:[求助]对每天变动的库存余量进行统计汇总问题

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


加好友 发短信
等级:婴狐 帖子:34 积分:378 威望:0 精华:0 注册:2014/3/29 18:06:00
[求助]对每天变动的库存余量进行统计汇总问题  发帖心情 Post By:2014/5/9 7:18:00 [显示全部帖子]

我有库存表--记录着A、B、C三种商品的每天库存余量(来自于子表的sum求和,有时候出现空值),如下表:

   日期     商品编号    余量
2014-2-1  A  500
2014-2-2  B  600
2014-2-3  C  700
2014-2-6  B  500
2014-2-7  A   400
2014-2-9 B  350

现在想每当一种商品余量发生变化后都统计A、B、C三种商品总的余量(每种商品最近一天的记录)到总库存表中:
日期                总余量
2014-2-1           500
2014-2-2           1100
2014-2-3           1800
2014-2-6           1700
2014-2-7           1600
2014-2-9           1450

实现上述目的,我在库存余量表中表属性DataRowAdded中编写代码:
1、用sp = dt.GetValues("商品编号")取得不同商品编号
2、用dr1=DataTables("库存余量").find("商品编号='" & sp & "'","时间 desc")找到每种商品的最近一天的记录
3、用For Each sp1 As String In sp统计总余量:total=total+dr1("余量")
4、然后在总库存表中新增一行dr,把统计总余量total的值赋给dr("总余量")

出现错误信息:Exception has been thrown by the target of an invocation.
Object reference not set to an instance of an object.

我怀疑sum出现空值,导致的,于是加了一条:iif(dr1("余量") Is Nothing ,total,total=total+dr1("余量")  )

我应该怎么实现上述目的?









[此贴子已经被作者于2014-5-9 7:28:39编辑过]

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


加好友 发短信
等级:婴狐 帖子:34 积分:378 威望:0 精华:0 注册:2014/3/29 18:06:00
  发帖心情 Post By:2014/5/9 9:09:00 [显示全部帖子]

 我描述的就是这个例子
全代码如下:
Dim dt As DataTable = DataTables("库存余量")
Dim Total As Double=0

Dim sp As List(Of String)
sp = dt.GetValues("商品编号")
Dim dr As DataRow=DataTables("总库存").addnew

For Each sp1 As String In sp
    Dim dr1 As DataRow
    dr1=DataTables("库存余量").find("客户编号='" & sp1 & "'","时间 desc")
   Total=Total+dr("余量")    
iif(dr1("余量") Is Nothing ,total,=total+dr1("余量")  )
Next

dr("时间")=Date.Today
dr("总余量")=Total



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


加好友 发短信
等级:婴狐 帖子:34 积分:378 威望:0 精华:0 注册:2014/3/29 18:06:00
  发帖心情 Post By:2014/5/9 9:15:00 [显示全部帖子]



加了那个判断还是出现那个错误

[此贴子已经被作者于2014-5-9 11:25:54编辑过]

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


加好友 发短信
等级:婴狐 帖子:34 积分:378 威望:0 精华:0 注册:2014/3/29 18:06:00
  发帖心情 Post By:2014/5/9 11:44:00 [显示全部帖子]

请帮助解决啊

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


加好友 发短信
等级:婴狐 帖子:34 积分:378 威望:0 精华:0 注册:2014/3/29 18:06:00
  发帖心情 Post By:2014/5/9 12:03:00 [显示全部帖子]

也许我写的代码用的命令不对,有更好的命令来筛选

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


加好友 发短信
等级:婴狐 帖子:34 积分:378 威望:0 精华:0 注册:2014/3/29 18:06:00
  发帖心情 Post By:2014/5/9 12:09:00 [显示全部帖子]

当用A代替dr1=DataTables("库存余量").find("商品编号='A'","时间 desc")中的SP进行调试时,for each 统计了4次,可是总共才A/B/C 三个商品编号啊,应该循环3次啊?

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


加好友 发短信
等级:婴狐 帖子:34 积分:378 威望:0 精华:0 注册:2014/3/29 18:06:00
  发帖心情 Post By:2014/5/9 12:18:00 [显示全部帖子]

我试了,加的if 没有用,还是出现Exception has been thrown by the target of an invocation.
Object reference not set to an instance of an object.
我的问题是:
    我有库存表--记录着A、B、C三种商品的每天库存余量(余量值来自于子表的sum求和,有时候出现空值),库存余量表如下表:

   日期       商品编号       余量
2014-2-1      A            500
2014-2-2      B            600
2014-2-3      C            700
2014-2-6       B           500
2014-2-7       A           400
2014-2-9       B            350

现在想:每当一种商品余量新值加入到库存余量表新增一行中时,都统计A、B、C三种商品的余量之和(每种商品最近一天的记录)到总库存表中,总库存表如下:
日期                总余量
2014-2-1           500
2014-2-2           1100
2014-2-3           1800
2014-2-6           1700
2014-2-7           1600
2014-2-9           1450

要实现上述目的,代码怎么写,谢谢
[此贴子已经被作者于2014-5-9 12:28:28编辑过]

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


加好友 发短信
等级:婴狐 帖子:34 积分:378 威望:0 精华:0 注册:2014/3/29 18:06:00
  发帖心情 Post By:2014/5/9 12:26:00 [显示全部帖子]

日期                总余量        注释
2014-2-1           500         ‘=A的余量
2014-2-2           1100    '=A+B
2014-2-3           1800    '=A+B+C
2014-2-6           1700    '=A+B+C----其中B的最近一天余量从600变为500了--只取它最新一个值
2014-2-7           1600    '=A+B+C----其中A出货后的余量从500变为400了,只取它的最新一个值  
2014-2-9           1450    '=A+B+C----其中B有出货后从500变为350了,只取它的最新一个值来求总库存余量

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


加好友 发短信
等级:婴狐 帖子:34 积分:378 威望:0 精华:0 注册:2014/3/29 18:06:00
  发帖心情 Post By:2014/5/12 22:53:00 [显示全部帖子]

咋么没有高手来帮我解决这个代码啊?

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


加好友 发短信
等级:婴狐 帖子:34 积分:378 威望:0 精华:0 注册:2014/3/29 18:06:00
  发帖心情 Post By:2014/5/13 8:44:00 [显示全部帖子]

就是这个例子啊

  我有库存表--记录着A、B、C三种商品的每天库存余量(余量值来自于子表的sum求和,有时候出现空值),库存余量表如下表:

   日期       商品编号       余量
2014-2-1      A            500
2014-2-2      B            600
2014-2-3      C            700
2014-2-6       B           500
2014-2-7       A           400
2014-2-9       B            350

现在想:每当一种商品余量新值加入到库存余量表新增一行中时,都统计A、B、C三种商品的余量之和(每种商品最近一天的记录)到总库存表中,总库存表如下:
日期                总余量        注释
2014-2-1           500         ‘=A的余量
2014-2-2           1100    '=A+B
2014-2-3           1800    '=A+B+C
2014-2-6           1700    '=A+B+C----其中B的最近一天余量从600变为500了--只取它最新一个值
2014-2-7           1600    '=A+B+C----其中A出货后的余量从500变为400了,只取它的最新一个值  
2014-2-9           1450    '=A+B+C----其中B有出货后从500变为350了,只取它的最新一个值来求总库存余量  

要实现上述目的,代码怎么写,谢谢

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