以文本方式查看主题

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

--  作者:aza520
--  发布时间:2018/1/20 17:04:00
--  后台打印报表代码错误
用的是外部数据源,如下代码想生成当前加载所有分页数据的报表,显示WHERE 子句语法错误。请老师指导

Dim Book As New XLS.Book(ProjectPath & "Attachments\\征地记录表.xls")
Dim fl As String = ProjectPath & "Reports\\征地记录表.xls"
book.AddDataTable("S征地记录","","Select *, 征地数量*政府征地补偿标准 as [政府补偿金额合计(元)], 征地数量*业主征地补偿标准*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()

--  作者:有点蓝
--  发布时间:2018/1/20 17:07:00
--  
book.AddDataTable("S征地记录","","Select *, 征地数量*政府征地补偿标准 as [政府补偿金额合计(元)], 征地数量*业主征地补偿标准*0.85 as [业主补助金额合计(元)] fro m {S征地明细} " & IIF(DataTables("S征地记录").LoadFilter > ""," where " & DataTables("S征地记录").LoadFilter,"") 
--  作者:aza520
--  发布时间:2018/1/20 17:25:00
--  
Dim Book As New XLS.Book(ProjectPath & "Attachments\\征地记录表.xls")
Dim fl As String = ProjectPath & "Reports\\征地记录表.xls"
book.AddDataTable("S征地记录","","Select *, 征地数量*政府征地补偿标准 as [政府补偿金额合计(元)], 征地数量*业主征地补偿标准*0.85 as [业主补助金额合计(元)] fro m {S征地明细} " & IIF(DataTables("S征地记录").LoadFilter > ""," where " & DataTables("S征地记录").LoadFilter,""))
Book.Build()
Book.Save(fl)
Dim Proc As New Process
Proc.File = fl
Proc.Start()


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


--  作者:有点蓝
--  发布时间:2018/1/20 17:33:00
--  

AddDataTable(Name,DataSouce,SelectString)
AddDataTable(Name,DataTable)

Name字符型,临时表的名称,必须和报表模板中的表名保持一致。
DataSouce字符型,用于指定数据源名称。
SelectString字符型,用于指定Select语句

--  作者:aza520
--  发布时间:2018/1/20 17:48:00
--  
老师,我改成以下后,只能生成当前页的报表,其它加载页不能生成数据

Dim Book As New XLS.Book(ProjectPath & "Attachments\\征地记录表.xls")
Dim fl As String = ProjectPath & "Reports\\征地记录表.xls"
book.AddDataTable("征地记录表","zcxt","Select *, 征地数量*政府征地补偿标准 as [政府补偿金额合计(元)], 征地数量*业主征地补偿标准*0.85 as [业主补助金额合计(元)] fro m {S征地明细} " & IIF(DataTables("S征地记录").LoadFilter > ""," where " & DataTables("S征地记录").LoadFilter,""))
Book.Build()
Book.Save(fl)
Dim Proc As New Process
Proc.File = fl
Proc.Start()

--  作者:aza520
--  发布时间:2018/1/21 21:16:00
--  
老师能帮看看吗
--  作者:有点甜
--  发布时间:2018/1/21 23:18:00
--  
请上传实例具体说明你的问题。