以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  SQLSQLGroupTableBuilder 表达式中日期类型问题(ok)  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=6154)

--  作者:mr725
--  发布时间:2010/3/11 17:28:00
--  SQLSQLGroupTableBuilder 表达式中日期类型问题(ok)
用系统自带的例子::::::自建立数据源名:tst
全局变量日期型为Date ,Access中日期类型为 日期/时间 ,下面代码提示标准表达式中数据类型不匹配』:

Vars("StartDate") = #1/1/1999#    
Vars("EndDate") =  #1/31/1999#
Dim b As New SQLGroupTableBuilder("统计表1","订单")
b. Connection Name = "tst"      Connection Name 中间空格没有的。
b.Filter = "[日期] >= \'" & Vars("StartDate") & "\' And [日期] <= \'" & Vars("EndDate") & "\'"
b.Groups.AddDef("产品ID") \'根据产品名称分组
b.Groups.AddDef("日期", DateGroupEnum.Year, "年") \'根据日期按年分组
b.Totals.AddDef("数量") \'对数量进行统计
b.Build \'生成统计表
Maintable = Tables("统计表1") \'打开生成的统计表   

帮看看是不是数据类型的问题。
[此贴子已经被作者于2010-3-11 18:55:18编辑过]

--  作者:mr725
--  发布时间:2010/3/11 17:38:00
--  
如果是内部表,这个代码没问题:
以下内容为程序代码:

Vars("StartDate") = #1/1/1999#
Vars("EndDate") =  #1/31/1999#

Dim b As New GroupTableBuilder("统计表1",Datatables("订单"))
b.Filter = "[日期] >= \'" & Vars("StartDate") & "\' And [日期] <= \'" & Vars("EndDate") & "\'"
b.Groups.AddDef("产品") \'根据产品名称分组
b.Groups.AddDef("日期", DateGroupEnum.Year, "年") \'根据日期按年分组
b.Totals.AddDef("数量") \'对数量进行统计
b.Build \'生成统计表
Maintable = Tables("统计表1") \'打开生成的统计表
[此贴子已经被作者于2010-3-11 17:48:17编辑过]

--  作者:狐狸爸爸
--  发布时间:2010/3/11 18:00:00
--  

Access的日期用#的


--  作者:mr725
--  发布时间:2010/3/11 18:05:00
--  
OK!  图片点击可在新窗口打开查看
--  作者:mr725
--  发布时间:2010/3/11 18:26:00
--  
再问: b.Build   可以直接在窗口中【生成统计表】吗? 如:

 Tables("窗口_Table1").Build   会提示错误。
--  作者:czy
--  发布时间:2010/3/11 18:36:00
--  
用BuildDataSource方法。
--  作者:mr725
--  发布时间:2010/3/11 18:39:00
--  

这个好,谢谢C版~