以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助] 关于分组统计的设置于代码 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=56907) |
||||||
-- 作者:netfox168 -- 发布时间:2014/9/15 10:56:00 -- [求助] 关于分组统计的设置于代码 问题1:分组统计的设置如何删除? 问题2:分组统计的代码,能否用关联表? 问题起源:假设当前表是 “父表.子表”,这时统计出来的结果是正确的(仅统计当前记录),假如在窗口控件中用代码生成统计表,则是子表的全部记录。代码如下: Dim g As New GroupTableBuilder("进仓单分类汇总", DataTables("进仓单明细")) g.Groups.AddDef("合同号") g.Groups.AddDef("材料名称") g.Totals.AddDef("进仓数量") g.Build() MainTable = Tables("进仓单分类汇总") 我尝试将第一行后面的代码改成 DataTables(“进仓单.进仓单明细”),但出错。 |
||||||
-- 作者:Bin -- 发布时间:2014/9/15 10:59:00 -- 你只需要把G.Filter 条件设置为关联列=父表当前列即可 例如关联列 为 编号 g.Filter ="编号=\'" & tables("父表").current("编号") & "\'"
|
||||||
-- 作者:有点甜 -- 发布时间:2014/9/15 11:00:00 -- 1、删除是指什么?直接在菜单那里操作添加或删除
2、无法用关联表,如果是用子表,就这样写代码
Dim g As New GroupTableBuilder("进仓单分类汇总", DataTables("进仓单明细"))
g.Groups.AddDef("合同号")
g.Groups.AddDef("材料名称")
g.Totals.AddDef("进仓数量")
g.Filter = Tables("进仓单明细").Filter
g.Build()
MainTable = Tables("进仓单分类汇总")
3、如果是关联表,就这样写代码
Dim g As New GroupTableBuilder("进仓单分类汇总", DataTables("进仓单明细"))
g.Groups.AddDef("合同号")
g.Groups.AddDef("材料名称")
g.Totals.AddDef("进仓数量")
g.Filter = "关联列 = \'" & Tables("进仓单").Current("关联列") & "\'"
g.Build()
MainTable = Tables("进仓单分类汇总") |
||||||
-- 作者:netfox168 -- 发布时间:2014/9/15 11:11:00 -- 1. 删除是指回到设置前的状态,即是不设置。现在每次按 “重新分组统计” 按钮都生成原先设置的统计表。 2. 过滤设置已ok,谢谢!
|
||||||
-- 作者:有点甜 -- 发布时间:2014/9/15 11:15:00 -- 设置前的状态又是指什么?不设置是指把表删除还是怎样? |
||||||
-- 作者:netfox168 -- 发布时间:2014/9/15 11:51:00 -- 所谓设置前状态就是按 “重新分组统计” 按钮后出现设置画面,而不是统计结果。 |
||||||
-- 作者:有点甜 -- 发布时间:2014/9/15 12:00:00 -- 这个意思?
|