以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  SQLGroupTableBuilder统计报错  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=76453)

--  作者:一笑
--  发布时间:2015/10/29 13:39:00
--  SQLGroupTableBuilder统计报错
用SQLGroupTableBuilder进行统计,代码如下:

Dim b As New SQLGroupTableBuilder("统计表1","事件汇总")

b.ConnectionName = "data"

Dim Filter As String

Filter = "飞行日期 >= #1/9/2015# And 飞行日期 <= #30/9/2015"#"

b.filter = filter

b.Groups.AddDef("事件名称") \'分组

b.Totals.AddDef("次数")\'对数量进行统计

b.Build \'生成统计表

MainTable = Tables("统计表1")

1. 运行报错:“#附近错误”
2. 生成统计表1是希望加上序号列
求解,谢谢


--  作者:大红袍
--  发布时间:2015/10/29 13:55:00
--  

sqlserver数据库就这样写,access就用#号

 

Filter = "飞行日期 >= \'2015-09-01\' And 飞行日期 < \'2015-10-01\'"

 


--  作者:大红袍
--  发布时间:2015/10/29 13:56:00
--  

2、动态加入一列,然后循环每一行,给序号列赋值。

 

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

 


--  作者:一笑
--  发布时间:2015/10/29 14:11:00
--  
日期测试无误,但如下合成表达式又该如何写,谢谢

Dim b As New SQLGroupTableBuilder("统计表1","事件汇总")
b.C
Dim dr1 As DataRow = DataTables("月事件率").find("选择 = True")\'
Dim y As Integer = dr1("年")
Dim m As Integer = dr1("月")
Dim dt1 As New Date(y, m, 1)
Dim dt2 As New Date(y, m, Date.DaysInMonth(y, m)) \'获取本月的最后一天
Dim Filter As String
Filter = "飞行日期 >= " & dt1 &" And 飞行日期 <= " & dt2 & "\'"
b.filter = filter
b.Groups.AddDef("事件名称") \'分组
b.Totals.AddDef("次数")\'对数量进行统计
b.Build \'生成统计表
MainTable = Tables("统计表1")

--  作者:大红袍
--  发布时间:2015/10/29 14:14:00
--  
Filter = "飞行日期 >= \'" & dt1 &"\' And 飞行日期 <= \'" & dt2 & "\'"
--  作者:一笑
--  发布时间:2015/10/30 15:21:00
--  
动态增加1列后,新增列在最右侧,能否制定新增列在位置,比如在最左侧。
--  作者:狐狸爸爸
--  发布时间:2015/10/30 15:29:00
--  

增加后,移动:

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

 


--  作者:一笑
--  发布时间:2015/10/31 8:33:00
--  
关于统计表“序号”列赋值:

方法1. 能否生成统计表后增加序号列,在表达式中用_Identify给序号列赋值?谢谢

Tables("统计表1").DataTable.DataCols.Add("序号", Gettype(Integer),“[_Identify]”)

方法2. 以下代码报错,求解,谢谢!

b.Build \'生成统计表
Tables("统计表1").DataTable.DataCols.Add("序号", Gettype(Integer))
Tables("统计表1").Cols("序号").Move(0)
Dim cnt As Integer = Tables("统计表1").Rows.Count
For Each r As Row In Tables("统计表1").rows
\'r("序号") = r("_Identify")
For n As Integer = 0 To cnt - 1 \'遍历所有行
     r(n)("序号") = n + 1 
    Next
Next
[此贴子已经被作者于2015/10/31 8:51:40编辑过]

--  作者:Hyphen
--  发布时间:2015/10/31 8:57:00
--  

Tables("统计表1").DataTable.DataCols.Add("序号", Gettype(Integer))
Tables("统计表1").Cols("序号").Move(0)
Dim cnt As Integer = Tables("统计表1").Rows.Count

For n As Integer = 0 To cnt - 1 \'遍历所有行
    Tables("统计表1").Rows(n)("序号") = n + 1
Next