以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]关于列与列之间的计算问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=40929)

--  作者:foskycn
--  发布时间:2013/10/6 17:05:00
--  [求助]关于列与列之间的计算问题
先上实例:
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:计算.foxdb



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

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

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

--  作者:有点甜
--  发布时间: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