以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  ‘h’不是可以识别的datepart  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=46511)

--  作者:powermannico
--  发布时间:2014/2/25 0:58:00
--  ‘h’不是可以识别的datepart
如下代码,使用内部表时没问题,换外部表(MSSQL),报错“\'h\'不是可以识别的datepart”,问题应该出在第4行的时间格式,不知怎么改?此外,第12、13行的两种代码都不能让生成的临时表隐藏,有什么办法?
1   If DataTables("预约单").SourceType = 1 Then
2       theFilter = "[预约时间] >= #" & UserDate & " 00:00# And [预约时间] <= #" & UserDate & " 23:59#"
3   Else
4       theFilter = "[预约时间] >= \'" & UserDate & " 00:00\' And [预约时间] <= \'" & UserDate & " 23:59\'"
5   End If
6   Dim GTB2 As New GroupTableBuilder("预约统计按时",DataTables("预约单"))
7   GTB2.FromServer = True
8   GTB2.Filter = theFilter
9   GTB2.Groups.AddDef("预约时间",DateGroupEnum.Hour,"预约日期")
10 GTB2.Totals.AddDef("车牌号",AggregateEnum.Count)
11 GTB2.Build
12 \'Tables("预约统计按时").Visible = False
13 \'GTB2.TableVisible = False
--  作者:Bin
--  发布时间:2014/2/25 8:30:00
--  
你是MSSQL数据源 还是ACCESS数据源?
--  作者:powermannico
--  发布时间:2014/2/25 8:42:00
--  
MSSQL
--  作者:Bin
--  发布时间:2014/2/25 8:45:00
--  
theFilter = "[预约时间] >= \'" & UserDate & " 00:00:00\' And [预约时间] <= \'" & UserDate & " 23:59:00\'"

尝试一下这样

--  作者:powermannico
--  发布时间:2014/2/25 8:52:00
--  
 自己也尝试过,不行
--  作者:狐狸爸爸
--  发布时间:2014/2/25 8:54:00
--  

可能是foxtable自身的bug,我检查一下。

既然统计后台数据,你换成SQLGroupTableBuilder看看


--  作者:powermannico
--  发布时间:2014/2/25 9:32:00
--  
用以下代码替换1楼的6-11行,结果弹窗提示“生成的SQL语句错误,无法继续统计”
Dim SQLGTB2 As New SQLGroupTableBuilder("预约统计按时","预约单")
SQLGTB2.Filter = theFilter
SQLGTB2.Groups.AddDef("预约时间",DateGroupEnum.Hour,"预约日期")
SQLGTB2.Totals.AddDef("车牌号",AggregateEnum.Count)
SQLGTB2.Build
--  作者:狐狸爸爸
--  发布时间:2014/2/25 9:34:00
--  
嗯,我检查一下,在2014正式版中搞定。
--  作者:powermannico
--  发布时间:2014/2/25 9:36:00
--  
 老大,假如是bug,有没有可能基于13.10.14版出个升级呢,就要发布呢,可能等不到2014稳定版哦
--  作者:狐狸爸爸
--  发布时间:2014/2/25 9:36:00
--  
2014正式版下周发布