我在K3CLOUDBOS设计器里,新建一个直接SQL报表,然后分布后,打开是空白的,点过滤或刷新时提示:“关键字 'SET' 附近有语法错误。
')' 附近有语法错误。”
直接在SQL查询分析器里是没有问题的
语句如下:
SET NOCOUNT ON
create table #a(
记账单位 varchar(80) ,
记账科目代码 varchar(80) ,
记账科目 varchar(80) ,
年初 decimal(28,10) default(0),
本年增加 decimal(28,10) default(0),
本年减少 decimal(28,10) default(0),
期末数 decimal(28,10) default(0),
挂账单位 varchar(80),
对应科目代码 varchar(80),
对应科目 varchar(80),
对应余额 decimal(28,10) default(0),
差异 decimal(28,10) default(0),
差异组成或原因 varchar(80))
create table #a1(
记账单位 varchar(80) ,
记账科目代码 varchar(80) ,
记账科目 varchar(80) ,
年初 decimal(28,10) default(0),
本年增加 decimal(28,10) default(0),
本年减少 decimal(28,10) default(0),
期末数 decimal(28,10) default(0),
挂账单位 varchar(80),
对应科目代码 varchar(80),
对应科目 varchar(80))
create table #a2(
记账单位 varchar(80) ,
记账科目代码 varchar(80) ,
记账科目 varchar(80) ,
年初 decimal(28,10) default(0),
本年增加 decimal(28,10) default(0),
本年减少 decimal(28,10) default(0),
期末数 decimal(28,10) default(0),
挂账单位 varchar(80),
对应科目代码 varchar(80),
对应科目 varchar(80))
insert into #a1
select t3.FNAME,t4.FNUMBER,t5.FFULLNAME,sum(t1.FBEGINBALANCEFOR),0,0,0,t7.fname,'1122','应收账款'
from T_GL_BALANCE t1
inner join T_BD_ACCOUNTBOOK t2 on t2.FBOOKID =t1.FACCOUNTBOOKID
inner join T_BD_ACCOUNTBOOK_L t3 on t3.FBOOKID =t2.FBOOKID
inner join T_BD_ACCOUNT t4 on t4.FACCTID =t1.FACCOUNTID
inner join T_BD_ACCOUNT_L t5 on t5.FACCTID =t4.FACCTID
inner join T_BD_FLEXITEMDETAILV t6 on t6.FID =t1.FDETAILID
inner join V_FIN_CONTACTTYPE_L t7 on t7.fitemid =t6.FFLEX4
inner join V_FIN_CONTACTTYPE t8 on t8.FITEMID =t7.fitemid and t8.FFORMID ='BD_Supplier'
where t4.FNUMBER='2202.04' and t2.fnumber >='#qsgs#' and t2.FNUMBER <='#jzgs#'
and t1.FCURRENCYID=1
and t1.FYEAR =2015 and t1.FPERIOD =1
group by t3.FNAME,t4.FNUMBER,t5.FFULLNAME,t7.fname
……………………………………………………中间省略
update a set a.对应余额=a2.期末数,a.差异=a.期末数+a2.期末数 from #a a
inner join #a2 a2 on a2.记账单位=a.挂账单位 and a2.记账科目代码=a.对应科目代码
where a.记账科目代码='1231.02'
select * from #a
drop table #a
drop table #a1
drop table #a2