以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]“统计演示”如何仅统计加载行? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=14541) |
-- 作者:dqlgood -- 发布时间:2011/11/23 9:36:00 -- [求助]“统计演示”如何仅统计加载行? 打开软件附带的案例“统计演示”提问:
原代码如下:1、项目MainTableChanged事件: If MainTable.Name = "销售统计" Then 2、表DataColChanged事件: Dim dr As DataRow = e.DataRow 问题:现在统计的是所有行,如果我仅想统计加载行,如何改写? |
-- 作者:狐狸爸爸 -- 发布时间:2011/11/23 9:41:00 -- 上面的代码,本来就只统计已经加载的数据啊 |
-- 作者:dqlgood -- 发布时间:2011/11/23 10:15:00 -- 我是想当我用控件输入(如:Tables("订单").Filter = "[日期] = #1/3/1999#")时,重新转换到“销售统计”表时数据也同步发生变化。 |
-- 作者:狐狸爸爸 -- 发布时间:2011/11/23 10:32:00 -- 1、新版本已经没有Recalc了,建议升级你的foxtable 2、任何的统计都可以设置条件,加一行即可:
Filler.Filter = Tables("订单").Filter |
-- 作者:dqlgood -- 发布时间:2011/11/23 11:49:00 -- 我重新下载升级了,编码加在哪里呀?我是菜鸟加不进去。求老师帮忙!谢谢! |
-- 作者:狐狸爸爸 -- 发布时间:2011/11/23 14:47:00 -- Dim dr As DataRow = e.DataRow Dim dt As DataTable = DataTables("订单") If e.DataCol.Name = "产品" Then if Tables("订单").Filter = "" Then dr("数量") = dt.Compute("Sum(数量)","[产品] = \'" & dr("产品") & "\'") dr("金额") = dt.Compute("Sum(金额)","[产品] = \'" & dr("产品") & "\'") Else dr("数量") = dt.Compute("Sum(数量)","[产品] = \'" & dr("产品") & "\' And " & Tables("订单").Filter) dr("金额") = dt.Compute("Sum(金额)","[产品] = \'" & dr("产品") & "\' And " & Tables("订单").Filter) End if End If |