以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  报表代码错误  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=111505)

--  作者:aza520
--  发布时间:2017/12/23 10:27:00
--  报表代码错误
以下代码,无法生成报表,请老师指点问题。

Dim Book As New XLS.Book(ProjectPath & "Attachments\\征地记录表.xls")

Dim fl As String = ProjectPath & "Reports\\征地记录表.xls"

book.AddDataTable("S征地记录","","Select *, 征地数量*政府征地补偿标准+青苗数量*政府青苗补偿标准as [政府补偿金额合计(元)], 征地数量*业主征地补偿标准*0.85+青苗数量*业主青苗补偿标准*0.85 as [业主补助金额合计(元)] fro m {S征地明细} where " & DataTables("S征地记录").LoadFilter)

Book.Build()

Book.Save(fl)

Dim Proc As New Process

Proc.File = fl

Proc.Start()


.NET Framework 版本:2.0.50727.8766
Foxtable 版本:2017.12.18.1
错误所在事件:
详细错误信息:
至少一个参数没有被指定值。


--  作者:有点蓝
--  发布时间:2017/12/23 10:40:00
--  
book.AddDataTable("S征地记录","","Select *,征地数量*政府征地补偿标准+青苗数量*政府青苗补偿标准 as [政府补偿金额合计(元)], 征地数量*业主征地补偿标准*0.85+青苗数量*业主青苗补偿标准*0.85 as [业主补助金额合计(元)] from {S征地明细} where " & DataTables("S征地记录").LoadFilter)

弹出完整sql看看

msgbox("Select *,征地数量*政府征地补偿标准+青苗数量*政府青苗补偿标准 as [政府补偿金额合计(元)], 征地数量*业主征地补偿标准*0.85+青苗数量*业主青苗补偿标准*0.85 as [业主补助金额合计(元)] from {S征地明细} where " & DataTables("S征地记录").LoadFilter)

--  作者:aza520
--  发布时间:2017/12/23 11:49:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20171223114845.png
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2017/12/23 11:54:00
--  
这个sql拿到sql窗口执行有没有问题?
--  作者:aza520
--  发布时间:2017/12/23 14:45:00
--  
在命令窗口执行出现这个:


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20171223144415.png
图片点击可在新窗口打开查看


--  作者:aza520
--  发布时间:2017/12/23 14:47:00
--  
老师,是不是因为有时数量和补偿标准数值为空的影响
--  作者:有点蓝
--  发布时间:2017/12/23 14:49:00
--  
执行3楼弹出的sql,不是执行代码


--  作者:aza520
--  发布时间:2017/12/23 15:05:00
--  
.NET Framework 版本:2.0.50727.8766
Foxtable 版本:2017.12.18.1
错误所在事件:
详细错误信息:
无效的 SQL语句;期待 \'DELETE\'、\'INSERT\'、\'PROCEDURE\'、\'SELECT\'、或 \'UPDATE\'。

--  作者:有点蓝
--  发布时间:2017/12/23 15:13:00
--  
执行sql,不是执行代码。打开命令窗口,执行

Output.Show("Select *,征地数量*政府征地补偿标准+青苗数量*政府青苗补偿标准 as [政府补偿金额合计(元)], 征地数量*业主征地补偿标准*0.85+青苗数量*业主青苗补偿标准*0.85 as [业主补助金额合计(元)] from {S征地明细} where " & DataTables("S征地记录").LoadFilter)

然后把命令窗口的输出结果复制到sql窗口执行

--  作者:aza520
--  发布时间:2017/12/23 15:26:00
--  
显示:WHERE 子句语法错误。