Foxtable(狐表)用户栏目专家坐堂 → [求助]关于列与列之间的计算问题


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

主题:[求助]关于列与列之间的计算问题

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


加好友 发短信
等级:婴狐 帖子:92 积分:744 威望:0 精华:0 注册:2013/7/19 8:55:00
[求助]关于列与列之间的计算问题  发帖心情 Post By:2013/10/6 17:05:00 [只看该作者]

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



我想实现的是:已交数 = 本次收货(有多个值的时候编号和名称相同的值求和,如果没有多个值则直接等于本次收货)

这个该怎么实现,请老师们指导一下!!

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


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2013/10/6 17:23:00 [只看该作者]

愿意听我建议的话,改为关联表模式,因为您这样,同一字段(已收数)会出现多个相同的数,看起来不太舒服,这种统计从逻辑上不太实用。
[此贴子已经被作者于2013-10-6 17:32:50编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2013/10/6 17:30:00 [只看该作者]

 把 本次收货 改成数值类型,在datacolchanged写入代码

If e.DataRow.IsNull("编号") = False AndAlso e.DataRow.IsNull("名称") = False AndAlso e.DataRow.IsNull("本次交货") = False Then
    e.DataRow("已收数") = e.DataTable.Compute("sum(本次交货)", "编号='" & e.DataRow("编号") & "' and 名称='" & e.DataRow("名称") & "'")
End If

 回到顶部