以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  窗口统计数据  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=74712)

--  作者:xiaohuli
--  发布时间:2015/9/17 10:37:00
--  窗口统计数据

点击窗口中的查询按钮,然后将查询到的数据以交叉表的形式统计在窗口的table1中,虽然统计的数据放在窗口中的table1中了,但是同时又生成了一个临时表,能不能将统计的数据只放在窗口中,不要在生产临时表了。下面是我的代码,老师帮忙看看。

  Dim q As new QueryBuilder
    q.C
    q.TableName = "订单汇总"
    q.SelectString = ""
  q.Build
    Dim g As New CrossTableBuilder("订单汇总", DataTables("订单汇总"))
    g.HGroups.AddDef("编号")
    g.HGroups.AddDef("产品名称")
    g.VGroups.AddDef("区域")
    g.Totals.AddDef("销售数量", "销售数量")
  
    g.VerticalTotal = True
    g.Build()
    Tables("订单汇总_Table1").DataSource = g.BuildDataSource()
    Tables("订单汇总_table1").Font = New Font("宋体",11,FontStyle.Bold)
    Tables("订单汇总_table1").AutoSizeCols()


--  作者:大红袍
--  发布时间:2015/9/17 10:51:00
--  
直接去掉 g.Build()
--  作者:xiaohuli
--  发布时间:2015/12/15 21:07:00
--  

老师,查询出来的数据放在了窗口1中,去掉了  \'g.Build()

但还是生成了临时表,这是怎么回事?

代码如下:

Dim q As new QueryBuilder
    q.C
    q.TableName = "统计表1"

    q.SelectString = “”    
    q.Build()
    \'MainTable = Tables("统计表1")
    Dim g As New CrossTableBuilder("统计表1", DataTables("统计表1"))
       g.HGroups.AddDef("区域")
    g.VGroups.AddDef("月份")
    g.Totals.AddDef("金额", "金额")
    \'g.HorizontalTotal = True
    \'g.VerticalTotal = True
    \'g.Build()
    forms("窗口1").open
\'Tables("窗口1_Table1").DataTable.DataRows.Clear
    Tables("窗口1_Table1").DataSource = g.BuildDataSource()
    Tables("窗口1_table1").Font = New Font("宋体",11,FontStyle.Bold)
    Tables("窗口1_table1").AutoSizeCols()


--  作者:linswcfr
--  发布时间:2015/12/15 21:15:00
--  

统计表本身好就是临时表...

 


--  作者:linswcfr
--  发布时间:2015/12/15 21:21:00
--  
http://www.foxtable.com/help/index.html?n=1533.htm
--  作者:大红袍
--  发布时间:2015/12/15 21:43:00
--  

参考,不要build

 

http://www.foxtable.com/help/topics/2307.htm