以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  非表达式列,如何实现子表统计?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=169778)

--  作者:lgz518
--  发布时间:2021/6/30 10:27:00
--  非表达式列,如何实现子表统计?
帮助大部介绍了表达式统计子表,非表达式如何统计?

统计子表数据

假定我们在产品表和订单表之间通过产品编号建立关联,而且我们希望在产品表中增加两列,分别统计该产品总的订购数量和金额。

首先我们假定选择产品表,按照前面的讲述,增加一个整数型的表达式列,列名称设为“订购数量”表达式设为:

Sum(Child.数量)

然后增加一个双精度小数型的表达式列,列名称设为“订购金额”计算公式设为:

Sum(Child.金额)

下图是设置好的产品表:


--  作者:有点蓝
--  发布时间:2021/6/30 10:28:00
--  
参考:http://www.foxtable.com/webhelp/topics/1454.htm
--  作者:lgz518
--  发布时间:2021/6/30 10:59:00
--  
那个方法,需重置列,有不需要重置列方法?
--  作者:有点蓝
--  发布时间:2021/6/30 11:03:00
--  
没有的,更改datacolchanged事件,已有数据必需要重置一下列。新增加和编辑的数据就不需要了。
--  作者:lgz518
--  发布时间:2021/6/30 12:18:00
--  
If e.DataCol.Name = "产品" Then \'发生变化的是产品列。
    \'则累计订单表中同名产品总的销售量,然后赋值给变动行的数量列

    e.
DataRow("记录数") = DataTables("订单").Compute("Sum(
产品)","[产品] = \'" & e.NewValue & "\'")
End If

"Sum(产品)这是字符要转整数,看帮助半天,还是不会,请老师帮忙,谢谢

http://www.foxtable.com/webhelp/index.htm?page=1454.htm数据转换函数

--  作者:有点蓝
--  发布时间:2021/6/30 13:32:00
--  
数值列才能求和。如果是要计数改为count(产品)