Foxtable(狐表)用户栏目专家坐堂 → 合计行


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

主题:合计行

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


加好友 发短信
等级:童狐 帖子:226 积分:1655 威望:0 精华:0 注册:2015/11/26 16:03:00
合计行  发帖心情 Post By:2017/2/20 16:26:00 [只看该作者]

请教一下,如何实现
图片点击可在新窗口打开查看此主题相关图片如下:1.bmp
图片点击可在新窗口打开查看
根据单据编号和物料代码,求总数,并先表中最后一行显示总数,效果如图

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


加好友 发短信
等级:超级版主 帖子:105948 积分:538809 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/2/20 18:06:00 [只看该作者]

先获取不重复的单据编号和物料代码,然后循环统计,赋值到主键最大的行中


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/2/20 18:08:00 [只看该作者]


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


加好友 发短信
等级:童狐 帖子:226 积分:1655 威望:0 精华:0 注册:2015/11/26 16:03:00
  发帖心情 Post By:2017/2/21 8:02:00 [只看该作者]

我这张表是查询出来的表,不是加载数据库的表,改怎么弄

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


加好友 发短信
等级:超级版主 帖子:105948 积分:538809 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/2/21 9:11:00 [只看该作者]

上传实例测试

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/2/21 9:45:00 [只看该作者]

生成后,写代码

 

Dim t As Table = Tables("查询表")
For Each dr As Row In t.Rows  
    Dim Val1 As Double = 0
    For i As Integer = 0 To dr.Index
        If t.Rows(i)("物料代码") = dr("物料代码") AndAlso t.Rows(i)("单据编号") = dr("单据编号") Then
            val1 += t.rows(i)("数量")
        End If
    Next
    dr("总数") = Val1
Next


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


加好友 发短信
等级:童狐 帖子:226 积分:1655 威望:0 精华:0 注册:2015/11/26 16:03:00
  发帖心情 Post By:2017/2/21 10:31:00 [只看该作者]

再请教一下,只在每个物料的最后一行显示总数其他的为空,该怎么实现
[此贴子已经被作者于2017/2/21 10:31:00编辑过]

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


加好友 发短信
等级:超级版主 帖子:105948 积分:538809 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/2/21 11:08:00 [只看该作者]

Dim t As Table = Tables("查询表")
Dim r As Row
Dim sum As Integer = 0
For i As Integer = 1 To t.Rows.Count - 1
    r  = t.Rows(i-1)
    Dim r2 As Row = t.Rows(i)
    If r("物料代码") = r2("物料代码") AndAlso r("单据编号") = r2("单据编号") Then
        sum += r("数量")
    Else
        r("总数") = sum + r("数量")
        sum = 0
    End If
Next
r  = t.Rows(t.Rows.Count - 1)
r("总数") = sum + r("数量")
    

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


加好友 发短信
等级:童狐 帖子:226 积分:1655 威望:0 精华:0 注册:2015/11/26 16:03:00
  发帖心情 Post By:2017/2/21 15:43:00 [只看该作者]

为什么r(“数量”)值就是一个字符串“数量”

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/2/21 16:05:00 [只看该作者]

 你执行了什么代码?8楼代码没问题。

 

 有问题,单独做一个项目发上来看看。


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