以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]改为SQLCompute后提示错误  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=149202)

--  作者:lyzhuo
--  发布时间:2020/4/26 11:51:00
--  [求助]改为SQLCompute后提示错误
在DrawCell表事件里

这段代码,原来用Compute统计正常,改为SQLCompute后提示错误,是需要匹配SQL的语法吗?怎么改呢?谢谢
用的是SQLServer2008R2数据库

 Dim y As Integer = e.Row("日期").Year
        Dim s1 As String = "[日期]>=#1/1/" & y & "# And [日期]<=#" & e.Row("日期") & "#"
        If e.Row("年总累计") = DataTables("收入日报表").SQLCompute("sum(日累计金额)",s1)
            e.Style = "正常"
        Else
            e.Style = "错误1"
        End If


提示错误如下:
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2020.4.19.8
错误所在事件:
详细错误信息:
\'#\' 附近有语法错误。

--  作者:有点蓝
--  发布时间:2020/4/26 13:31:00
--  
本年,参考?http://www.foxtable.com/webhelp/topics/2720.htm
--  作者:lyzhuo
--  发布时间:2020/4/26 13:59:00
--  
原来用这段代码,统计正常:
e.Row("年总累计") = DataTables("收入日报表").Compute("sum(日累计金额)",s1)
改为:
e.Row("年总累计") = DataTables("收入日报表").SQLCompute("sum(日累计金额)",s1)
统计异常,提示错误。
是不是用了SQLCompute与数据库类型有关?

--  作者:有点蓝
--  发布时间:2020/4/26 14:32:00
--  
如果是SqlServer数据库,后台查询#改为单引号:http://www.foxtable.com/webhelp/topics/2343.htm