Foxtable(狐表)用户栏目专家坐堂 → [求助]统计求助


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

主题:[求助]统计求助

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


加好友 发短信
等级:五尾狐 帖子:1165 积分:8129 威望:0 精华:0 注册:2015/3/30 10:44:00
[求助]统计求助  发帖心情 Post By:2016/1/19 23:14:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:统计.png
图片点击可在新窗口打开查看
怎么感觉没新增一个入库单号的总数量。其他入库单号的总数量也会自动增加新的入库单号的总数量。这是怎么回事?
这是代码,感觉应该没问题。
For Each r As DataRow In DataTables("U8物料数量汇总表").DataRows
    Dim dr As DataRow = DataTables("U8物料编码入库单统计").Find("入库单号 = '" & r("入库单号") & "'")
    If dr IsNot Nothing Then
        dr("总数量") = dr("总数量") + r("总数量")
    Else
        Dim ddr As DataRow = DataTables("U8物料编码入库单统计").AddNew
        ddr("入库单号") = r("入库单号")
        ddr("总数量") = r("总数量")
        ddr("生成入库单时间") = r("生成入库单时间")
    End If
Next

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


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2016/1/20 8:39:00 [只看该作者]

没明白表达的意思。代码看不出什么问题。


试试加上DataTables("U8物料编码入库单统计").Save

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/1/20 9:25:00 [只看该作者]

代码没问题。有问题。做具体例子测试。

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


加好友 发短信
等级:五尾狐 帖子:1165 积分:8129 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2016/1/20 15:08:00 [只看该作者]



入库单号如果不重复,那估计应该是对的。
但是入库单号重复的呢,再次循环,发现在统计表已经存在这个入库单号了,就再次把每行的总数量加一遍。

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


加好友 发短信
等级:五尾狐 帖子:1165 积分:8129 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2016/1/20 15:09:00 [只看该作者]

总算可以上传附件了。

图片点击可在新窗口打开查看此主题相关图片如下:u8物料数量汇总表.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/1/20 15:24:00 [只看该作者]

那就是你的计算方式不对啊。

 

1、数据一定要保留,不要删除数据;

 

2、不要用累加的方式,要用compute的方式重新统计数据。


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


加好友 发短信
等级:五尾狐 帖子:1165 积分:8129 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2016/1/20 15:39:00 [只看该作者]

对,之前累加的计算方式有问题。要重新compute才行。
多谢。
For Each r As DataRow In DataTables("U8物料数量汇总表").DataRows
    Dim dr As DataRow = DataTables("U8物料编码入库单统计").Find("入库单号 = '" & r("入库单号") & "'")
    If dr IsNot Nothing Then
        Dim total As Integer = DataTables("U8物料数量汇总表").Compute("Sum(总数量)","入库单号 = '" & r("入库单号") & "'")
        dr("总数量") = total
    Else
        Dim ddr As DataRow = DataTables("U8物料编码入库单统计").AddNew
        ddr("入库单号") = r("入库单号")
        ddr("总数量") = r("总数量")
        ddr("生成入库单时间") = r("生成入库单时间")
    End If
Next

 回到顶部