以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  from语法错误问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=118571)

--  作者:aza520
--  发布时间:2018/5/6 10:12:00
--  from语法错误问题
以下代码提示“FRO M"附近有语法错误,请老师帮看看?

Dim Book As New XLS.Book(ProjectPath & "Attachments\\项目汇总表.xls")
Dim fl As String = ProjectPath & "Reports\\项目征汇总表.xls"
book.AddDataTable("项目汇总表","zcxt","Selec t *, 已交付用地数量/设计征地数量 As [交地率(%)],  (Case When 第几期结算 = 0 Then 0 Else Round(Round(Case When 征地数量 Is null Then 0 Else 征地数量 End * Case When 业主征地补偿标准 Is null Then 0 Else 业主征地补偿标准 * 0.85 End,0) + Round(Case When 青苗数量 Is null Then 0 Else 青苗数量 End * Case When 业主青苗补偿标准 Is null Then 0 Else 业主青苗补偿标准 * 0.85 End,0),0)/10000 End fro m {S征地明细} b where a.项目名称=b.项目名称 and a.县区=b.县区 +  Case When 第几期结算 = 0 Then 0 Else Round(Round(Case When 面积或数量 Is null Then 0 Else 面积或数量 End * Case When 业主房屋补偿标准 Is null Then 0 Else 业主房屋补偿标准 End,0) + Round(Case When 宅基地补偿面积 Is null Then 0 Else 宅基地补偿面积 End * Case When 业主宅基地补偿标准 Is null Then 0 Else 业主宅基地补偿标准*0.85 End,0) + Round(Case When 业主安置费助偿 Is null Then 0 Else 业主安置费助偿 End,0) + Round(Case When 业主安置回建点基础设施建设补助 Is null Then 0 Else 业主安置回建点基础设施建设补助 End,0),0)/10000 End fro m { S房屋明细} b where a.项目名称=b.项目名称 and a.县区=b.县区 +  Round(Round(Case When 第几期结算 = 0 Then 0 Else Case When 附着物数量 Is null Then 0 Else 附着物数量 End * Case When 业主附着物补偿标准 Is null Then 0 Else 业主附着物补偿标准 End End,0),0)/10000 fro m { S明细其它} b where a.项目名称=b.项目名称 and a.县区=b.县区 +  Round(Round(Case When 第几期结算 = 0 Then 0 Else 杆管线数量*业主补偿标准 End,0),0)/10000 from { S明细杆管} b where a.项目名称=b.项目名称 and a.项目名称=b.项目名称) 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()

--  作者:有点甜
--  发布时间:2018/5/6 10:18:00
--  

一大段sql别人无法调试。

 

1、自己调试,把你的sql语句简化成一条简单的,然后测试,看能否执行,如果可以执行,然后逐步加入一些语句,看是哪些导致的错误;

 

2、如果自己不会调试,请上传具体foxtable实例测试。