作者:张伟
一、实例概述
(一)审计项目名称:衢州市本级20xx年度财政专项资金(基金)存量专项审计调查
(二)所属行业:财政
(三)项目实施时间:20xx年3月12日至5月15日
(四)项目背景介绍
财政预算外专项资金(基金)是财政预算外收支核算与管理的重要组成,也是财政预算执行审计和全部政府性资金审计的重要内容。针对各类专项资金(基金)数量多、类别复杂的特点,采用以AO为平台的计算机审计方法,快速查询核对各类专项资金(基金)的数量、类别用途、比重结构、收支发生额、结存数的真实情况及收支发生频率,分析其设立和使用是否符合公共财政的要求,并审查专项资金(基金)应纳未纳一般预算及基金预算管理情况,促进各类财政预算外专项资金(基金)的管理和使用绩效。
(五)项目审查数据量
预算外专项资金(基金)核算采用《浙江省行政事业性收费和政府性
基金管理信息系统(简称CFS)。共三个子系统:财政管理子系统、单位收费子系统、银行代收子系统,其中以财政业务子系统为核心。后台数据库为SQL SERVER 7.0。审计项目实施中,采集了相关SQL备份数据库数据,数据量为1.1GB。
(六)项目最终成果
1、利用计算机审计理清了纳入预算外管理核算的31项专项资金的收支规模、结余量、财政收支分类状况等情况。
2、利用计算机查询并核实应纳入未纳入一般预算和基金预算专项资金974万元。
3、根据计算机审查结果进行了进一步延伸,发现问题如下:一是部分专项资金使用缺乏预算约束,凭抄告单在综合预算外使用专项资金1331.9万元;二是部分专项资金(基金)用于征收单位一般行政经费补助73.57万元。
上述情况引起了被审单位重视,进行了相关问题整施。省财政部门还专门对市财政预算外管理情况进行了调研。
二、项目具体实施过程
(一)AO应用介绍
1、开展审前调查与编制计算机审计方案。
对该项目审前调查结合财政同级审一并进行,审计组制定了 “财政信息化系统应用现状”调查表,对财政部门目前应用的各类财税软件、后台数库库、使用处室和内控情况进行了详细了解,掌握信息系统流程及管理环境状况,并在此基础上制定了计算机审计实施方案。实施方案中确定了人员分工、数据采集转换方法、实施重点和步骤、数据安全保障等涉及计算机审计实施的有关内容和重点。
2、AO与OA交互建立审计项目。
在OA中完成项目分解与下达,将OA中项目和人员信息下载到AO中,利用OA与AO交互自动建立审计项目,将已完成OA流程签批的项目方案、通知书等有关项目文档导入AO。主审编制审计事项并分发各审计组成员导入。
3、电子数据采集与转换。
取得非税系统SQL SERVER备份数据库,将备份数据库数据在SQL SERVER中还原。对系统结构分析,该数据库以财务核算为核心,包含涉及单位项目收费管理、票据管理、银行数据等业务数据模块,因此在数据采集与转换时应兼顾财务数据与业务数据的关联与对应。采集转换步骤:
第一步,在SQL SERVER中对有关数据表进行预处理,取得适合AO导入的表结构和规则数据,转换处理关系如下(有关数据表预处理SQL
语句见附件1):
Sections表——> 科目表 余额表
Book 表——> 凭证表
Remain 表——> 分单位分项目年初余额表(辅助余额表) incomeitem表 ——> 项目表
enterprise表 ——> 单位表
凭证表+余额表+单位表+项目表——> 分单位分项目整理余额表凭证表
验证凭证表与分单位分项目整理余额表凭证表数据、余额表与分单位分项目年初余额表,数据一致性。
第二步,根据财政非税收入系统年末资产负债表样式,在AO中增加非税收入行业模版,采用AO财务数据库采集方式,将科目表、余额表、凭证表导入AO,生成中间表,进行账表重建生成财务电子帐簿,与财政部门取得的非税收入总账发生额、结余额及全年资产负债表核对,确定电子帐簿数据的准确性。
第三步,采用AO业务数据采集方式,将项目表、单位表、分单位分项目年初余额表、分单位分项目整理余额表凭证表等业务数据表导入
AO。
4、利用AO平台进行全过程审计。
(1)审计查询与分析过程。应用AO账表分析模块:审核资产负债表准确与完整性;使用“科目明细账”、“会计科目审查”、“凭证审查”等功能进行账表查询分析,了解预算外核算资金各科目资金基本情况,重点对“省级预算外资金专项补助”、“专项预算外资金”、“暂存款”等科目收支余总量及明细情况进行查询分析。应用AO数据分析模块:使用SQL查询、分组表与图表查看、数值分析等功能,对预算外专项资金、一般预算专项资金、行政事业性收费等情况进行了数据层分类分析和汇总分析。
(2)AO资料编制与实施取证过程。应用审计底稿与日记编制模块、底稿关联证据编制模块、将审计现场查询和分析的过程和结果进行记录,相关资料导入资料树,对审计疑点进行延伸核实。
5、审计终结。使用审计底稿形成初始审计报告,整理导出项目档案数据包,采用OA与AO交互进行上传,形成现场归档数据资料,同时按电子档案归档要求进行保存。
(二)项目取得成果
1、采用AO数据分析功能,对预算外专项资金进行分类汇总和收支余分析。
第一步, 在业务数据表“分单位分项目整理余额表凭证表”中筛选S1=401科目,按项目类/款/项生成专项预算外收入分类明细: select 项目类,
项目款,incomename,enterprisename,sectionname,sum(DebMoney) as 借方合计,sum(cremoney) as 贷方合
计,enterprisecode,incomecode,e1,e2,e3,e4,e5,单位状
态,i1,i2,i3,i4,i5,项目状态,资金性质,管理方式,收入级次,收费对象,行政事业单位上缴财政专户比例,上缴中央比例,上缴省比例,上缴市比例,政府调剂比例,s1,s2,s3,s4,s5,期初余额,yefx into 专项预算外收入汇总
from [业务_分单位分项目整理余额表凭证表]
where s1=401
group by e1,e2,e3,e4,e5,enterprisecode,enterprisename,单位状态,i1,i2,i3,i4,i5,incomecode,incomename,项目款,项目类,项目状态,
资金性质,管理方式,收入级次,收费对象,行政事业单位上缴财政专户比例,上缴中央比例,上缴省比例,上缴市比例,政府调剂比例, s1,s2,s3,s4,s5,sectionname,期初余额,yefx
order by 项目类,项目
款,incomename,enterprisename,sectionname
select 项目类,项目款,incomename,sectionname,count(*) as 计数,sum(借方合计) as 借方合计,sum(贷方合计) as 贷方合计, s1,s2,s3,s4,s5,i1,i2,i3,i4,i5
into 专项预算外收入分类汇总
from [专项预算外收入汇总]
group by 项目类,项目
款,incomename,sectionname,s1,s2,s3,s4,s5,i1,i2,i3,i4,i5 第二步,在业务数据表“分单位分项目整理余额表凭证表”中筛选S1=502科目,按项目类/款/项生成专项预算外支出分类明细: select 项目类,项目
款,incomename,enterprisename,sectionname,sum(DebMoney) AS 借方合计,sum(cremoney) AS 贷方合
计,enterprisecode,incomecode,e1,e2,e3,e4,e5,单位状态, i1,i2,i3,i4,i5,项目状态,资金性质,管理方式,收入级次,收费对象,行政事业单位上缴财政专户比例,上缴中央比例,上缴省比例,上
缴市比例,政府调剂比例,
s1,s2,s3,s4,s5,期初余额,yefx
into 专项预算外支出汇总
from [业务_分单位分项目整理余额表凭证表]
where s1=502
group by e1,e2,e3,e4,e5,enterprisecode,enterprisename,单位状态,i1,i2,i3,i4,i5,incomecode,incomename,项目款,项目类,项目状态,
资金性质,管理方式,收入级次,收费对象,行政事业单位上缴财政专户比例,上缴中央比例,上缴省比例,上缴市比例,政府调剂比例, s1,s2,s3,s4,s5,sectionname,期初余额,yefx
order by 项目类,项目
款,incomename,enterprisename,sectionname
select 项目类,项目款,incomename,sectionname,count(*) AS 计数,sum(借方合计) AS 借方合计,sum(贷方合计) AS 贷方合计,
s1,s2,s3,s4,s5,i1,i2,i3,i4,i5
into 专项预算外支出分类汇总
from 专项预算外支出汇总
group by 项目类,项目
款,incomename,sectionname,s1,s2,s3,s4,s5,i1,i2,i3,i4,i5 第三步,将专项预算外支出分类汇总、专项预算外收入分类汇总及分单位分项目年初余额表,通过项目编码进行关联,生成专项预算外收、支、余明细表:
(1) 按当年收入 (包括了当年有收入而无支出)
select a.项目类,a.项目款,a.incomename,a.贷方合计,b.借方合计,
a.i1,a.i2,a.i3,a.i4,a.i5
into 专项预算外收支分析_按收入
from [专项预算外收入分类汇总] a left join
[专项预算外支出分类汇总] b on
(a.i1=b.i1 and a.i2=b.i2 and a.i3=b.i3 and a.i4=b.i4 and
a.i5=b.i5)
(2)按当年支出(包括了当年无收入而有支出)
select b.项目类,b.项目款,b.incomename,a.贷方合计,b.借方合计,
a.i1,a.i2,a.i3,a.i4,a.i5
into 专项预算外收支分析_按支出
from [专项预算外收入分类汇总] a right join
[专项预算外支出分类汇总] b on
(a.i1=b.i1 and a.i2=b.i2 and a.i3=b.i3 and a.i4=b.i4 and a.i5=b.i5)
(3)对上述专项预算外收支分析_按收入、专项预算外收支分析_按支出进行合并,保存为专项预算外收支分析_合并。
select *
from 专项预算外收支分析_按收入
union
select *
from 专项预算外收支分析_按支出
(4)将专项预算外收支分析_合并与分单位分项目年初余额表关联,生成专项预算外收支余合并分析表
先将项目类、款、项名称加入分单位分项目年初余额表中: select
[S1],[S2],[S3],[S4],[S5],[Cum00],[yefx],a.[i1],a.[i2],a.[i3],a.[i4],a.[i5],[e1],[e2],[e3],[e4],[e5],[payoutid],b.项目类,b.项目款,b.incomename
into [业务_分单位分项目年初余额表新]
from [业务_分单位分项目年初余额表] a left join [业务_项目表] b on a.i1=b.i1 and a.i2=b.i2 and a.i3=b.i3 and a.i4=b.i4 and a.i5=b.i5
生成收支余分析_按上年结余(包括上年有结余而当年无收支): select b.[项目类],b.[项目款],b.[incomename],b.[Cum00] as 期初余额,b.[yefx] AS 余额方向,[贷方合计],[借方合计]
into 专项预算外收支余分析_按上年结余
from 专项预算外收支分析_合并 a right join [业务_分单位分项目年初余额表新] b on a.i1=b.i1 and a.i2=b.i2 and a.i3=b.i3 and
a.i4=b.i4 and a.i5=b.i5
where b.s1=301
生成收支余分析_按收支(包括上年无结余而当年发生收或支): select a.[项目类],a.[项目款],a.[incomename],b.[Cum00] as 期初余额,b.[yefx] AS 余额方向,[贷方合计],[借方合计]
into 专项预算外收支余分析_按上年结余
from 专项预算外收支分析_合并 a left join [业务_分单位分项目年初余额表新] b on a.i1=b.i1 and a.i2=b.i2 and a.i3=b.i3 and a.i4=b.i4 and a.i5=b.i5
合并上述专项预算外收支余分析_按上年结余、专项预算外收支余分析_按收支,保存为专项预算外收支余合并分析表:
select *
from 专项预算外收支余分析_按上年结余
union
select *
from 专项预算外收支余分析_按收支
2、专项资金(基金)应纳入未纳入一般预算和基金预算。 根据财政部预算收支分类科目,审核前述1中最后生成的“专项预算外收支余合并分析表”中专项资金(基金)款项是否属于应纳入一般预算或基金预算但实际并未缴纳国库情况。
(1)审查应纳未纳一般预算专项资金(基金)
select *
from [专项预算外收支余合并分析表]
where incomename like '%排污费%' or incomename like '%水资源费%' or incomename like '%教育费附加%' or incomename like '%矿产资源补偿%' or incomename like '%铀产品出售%' or incomename like '%探矿%采矿%使用费%价款%' or incomename like '%内河航道养护费%' and incomename like '%公路运输管理费%' or incomename like '%水路运输管理费%' or incomename like '%三峡库区移民专项%'
审查发现“水资源费”存在应纳未纳一般预算情况,进一步对账表凭证进行审查,剔除正常上划省级117万元:
SELECT 项目类,项目款,incomename,sum(debmoney) as 上划省级金额
into 专项预算外资金支出_水资源费支出_上划省级分成 FROM [业务_分单位分项目整理余额表凭证表]
WHERE (项目款 LIKE '水资源费') AND (sectionname LIKE '专项预算外资金支出') AND summary LIKE '%上划省级分成%' group by 项目类,项目款,incomename
关联专项预算外收支余合并分析表和专项预算外资金支出_水资源费支出_上划省级分成,计算水资源费应纳未纳一般预算金额957万元: select a.项目款,a.incomename,期初余额,贷方合计,借方合计,b.上划省级金额,(期初余额+贷方合计-借方合计)+(借方合计-b.上划省级金额) as 应纳未纳一般预算金额
into 水资源费应纳未纳一般预算
from [专项预算外收支余合并分析表] a,[专项预算外资金支出_水资源费支出_上划省级分成] b
where a.incomename like '水资源费'
(2)审查应纳未纳基金预算专项资金(基金)
select *
from [专项预算外收支余合并分析表]
where incomename like '%农网还贷资金%' or incomename like '%能源建设基金%' or incomename like '%库区建设基金%' or
incomename like '%媒代油基金%' or incomename like '%铁路建设%' or incomename like '%民航%建设%' or incomename like '%养路费%' and incomename like '%公路客运附加费%' or incomename like '%燃油附加费%' or incomename like '%散装水泥%'or incomename like '%新型墙体材料%' or incomename like '%旅游发展基金%'or
incomename like '%文化事业建设费%' or incomename like '%地方教育费附加收入%' or incomename like '%地方教育基金%' or incomename like '%农业发展基金%' or incomename like '%林业基金%' or incomename like '%新增建设用地有偿使用费%' or
incomename like '%育林基金%' or incomename like '%地方水利建设基金%' or incomename like '%水资源补偿费%' or incomename like '%残疾人就业保障金%' or incomename like '%政府住房基金%' or incomename like '%国有土地使用权出让金%'
审查发现“新型墙改材料基金”存在应纳未纳基金预算情况,进一步对账表凭证进行审查,剔除缴入国库金额948万元:
SELECT 项目类,项目款,incomename,sum(debmoney) as 支出金额 into 专项预算外资金支出_新型墙体材料支出_上缴国库
FROM [业务_分单位分项目整理余额表凭证表]
WHERE (项目款 LIKE '%新型墙体材料%') AND (sectionname LIKE '专项预算外资金支出') AND summary LIKE '%缴国库%'
group by 项目类,项目款,incomename
关联专项预算外收支余合并分析表和专项预算外资金支出_新型墙体材料_上缴国库,计算新型墙体材料基金应纳未纳基金预算金额17万元:
select a.项目款,a.incomename,期初余额,贷方合计,借方合计,b.支出金额,(期初余额+贷方合计-借方合计) as 应纳未纳基金预算金额
into 新型墙体材料基金应纳未纳基金预算
from [专项预算外收支余合并分析表] a,[专项预算外资金支出_新型墙体材料支出_上缴国库] b
where a.incomename like '%新型墙体材料%'
三、审计创新与亮点
1、采用财务电子账审查与业务数据查询分析相结合的办法,较好地解决了对财务与业务系统混合核算的计算机审计思维与模式。
2、对于涉及较多资金种类的调查类项目,采用计算机筛选分类方法,可快速解决规模测算、类别统计等审计汇总工作,为进一步深入调查延伸创造审计时间。
3、采用计算机方法将财政收支分类等规范性文件要求进行语句模型化,可直观发现被审计单位违规问题,使计算机审计更精确而富有成效。
四、提交资料说明:
文档数据包、AO执行语句包、原始数据包、案例材料。
五、提交单位:浙江省衢州市审计局
作者: 周波 童彩根 张伟
附件1:数据表预处理SQL语句。
二00八年十一月二日
附件1:
---财务数据处理部分
declare @年份 smallint,@账套 smallint
set @年份=2007
set @账套=1
begin
--生成科目表
select S1,S2=(case when len(S2)=1 then '0'+cast(S2 as varchar(2)) else cast(S2 as varchar(2)) end),
S3=(case when len(S3)=1 then '0'+cast(S3 as varchar(2)) else cast(S3 as varchar(2)) end),
S4=(case when len(S4)=1 then '0'+cast(S4 as
varchar(2)) else cast(S4 as varchar(2)) end),
S5=(case when len(S5)=1 then '0'+cast(S5 as varchar(2)) else cast(S5 as varchar(2)) end),
SectionName into 科目表 from dbo.Sections where Year=@年份 and SetId=@账套
-----整理科目表
-------去掉0
update 科目表 set S2='' where S2=00
update 科目表 set S3='' where S3=00
update 科目表 set S4='' where S4=00
update 科目表 set S5='' where S5=00
-----生成余额表
select S1,S2=(case when len(S2)=1 then '0'+cast(S2 as
varchar(2)) else cast(S2 as varchar(2)) end),
S3=(case when len(S3)=1 then '0'+cast(S3 as varchar(2)) else cast(S3 as varchar(2)) end),
S4=(case when len(S4)=1 then '0'+cast(S4 as varchar(2)) else cast(S4 as varchar(2)) end),
S5=(case when len(S5)=1 then '0'+cast(S5 as varchar(2)) else cast(S5 as varchar(2)) end),
SectionName,Cum00,yefx=(case when left(S1,1) in ('1','5') then '借' else '贷' end),
cum12 十二月底累计余额,deb12 十二月底借方累计,cre12 十二月底贷方累计,
cum13 十三月底累计余额,deb13 十三月底借方累计,cre13 十三月底贷方累计,
bank 开户银行,account 银行帐号,fundproperty 资金性质,isused 业务是否已发生,isleaf 是否底级科目,
isenterprise 是否分单位核算,
ispayout 是否分支出明细核算,isallocate 是否拨款科
目,isinterest 是否应计算利息,isoutincome 是否上缴调剂科目, isallocre 是否拨款贷方 --fundproperty 资金性质 为0:不分收入项目核算;1 一般预算外资金;2 专项预算外;3纳入预算;4 往来款
into 余额表
from dbo.Sections where Year=@年份 and SetId=@账套
-----整理余额表
update 余额表 set Cum00=0 where Cum00 is null
update 余额表 set S2='' where S2=00
update 余额表 set S3='' where S3=00
update 余额表 set S4='' where S4=00
update 余额表 set S5='' where S5=00
-----生成凭证表
select
dbo.Book.VoucherNo,dbo.Book.line,dbo.Book.Summary,dbo.Book.VoucherDate,realdate,dbo.Book.S1,
S2=(case when len(S2)=1 then '0'+cast(S2 as varchar(2)) else cast(S2 as varchar(2)) end),
S3=(case when len(S3)=1 then '0'+cast(S3 as varchar(2)) else cast(S3 as varchar(2)) end),
S4=(case when len(S4)=1 then '0'+cast(S4 as varchar(2)) else cast(S4 as varchar(2)) end),
S5=(case when len(S5)=1 then '0'+cast(S5 as varchar(2)) else cast(S5 as varchar(2)) end),
dbo.Book.DebMoney,dbo.Book.CreMoney,i1,i2,i3,i4,i5,e1,e2,e3,e4,e5,payoutid --payoutid 专项资金支出明细编码 对应payoutdetail 专项资金支出明细表 realdate 计算利息科目的实际发生日期
into 凭证表
from dbo.Book
where year(dbo.Book.VoucherDate)=@年份 and
dbo.Book.SetId=@账套
-----整理凭证表
update 凭证表 set S2='' where S2=00
update 凭证表 set S3='' where S3=00
update 凭证表 set S4='' where S4=00
update 凭证表 set S5='' where S5=00
-----生成分单位、分项目年初余额表(辅助余额表)
select dbo.Remain.S1,S2=(case when len(S2)=1 then
'0'+cast(S2 as varchar(2)) else cast(S2 as varchar(2)) end), S3=(case when len(S3)=1 then '0'+cast(S3 as varchar(2)) else cast(S3 as varchar(2)) end),
S4=(case when len(S4)=1 then '0'+cast(S4 as varchar(2)) else cast(S4 as varchar(2)) end),
S5=(case when len(S5)=1 then '0'+cast(S5 as varchar(2)) else cast(S5 as varchar(2)) end),
Cum00,yefx=(case when left(S1,1) in ('1','5') then '借' else '贷' end),i1,i2,i3,i4,i5,e1,e2,e3,e4,e5,payoutid into 分单位分项目年初余额表
from dbo.Remain
where dbo.Remain.Year=@年份 and dbo.Remain.SetId=@账套
----整理辅助余额表
update 分单位分项目年初余额表 set S2='' where S2=00 update 分单位分项目年初余额表 set S3='' where S3=00 update 分单位分项目年初余额表 set S4='' where S4=00 update 分单位分项目年初余额表 set S5='' where S5=00
end
--业务数据处理部分
--项目表
select a.i1,a.i2,a.i3,a.i4,a.i5,a.incomecode,a.incomename, a.standards,a.incomestatus 项目状态,a.isleaf 是否底级收入项目,
a.approveorgan 批准机关,a.fundproperty 资金性
质,a.managemode 管理方式,a.incomelevel 收入级
次,a.chargetache 执收级次,a.chargetype 收费类型,
a.chargeobject 收费对象,a.changes 调整情况,a.companyscale 行政事业单位上缴财政专户比例,a.centerscale 上缴中央比例, a.provincerscale 上缴省比例,a.cityscale 上缴市比
例,a.planscale 政府调剂比例
into 项目表_项
from incomeitem a
select i1,i2,i3,i4,i5,incomecode,incomename 项目类 into 项目表_类
from 项目表_项
where i1<>0 and i2=0 and i3=0 and i4=0 and i5=0
select i1,i2,i3,i4,i5,incomecode,incomename 项目款 into 项目表_款
from 项目表_项
where i1<>0 and i2<>0 and i3=0 and i4=0 and i5=0
select a.*,b.项目款,c.项目类
into 项目表 --包含类/款/项
from 项目表_项 a left join 项目表_款 b on (a.i1=b.i1 and a.i2=b.i2) left join 项目表_类 c on a.i1=c.i1
--单位
select
e1,e2,e3,e4,e5,enterprisecode,enterprisename,budgetlevel 预算级次,financialorgan 财务主管部门,enterpriseproperty 单位性质,isspecial 是否财政专户,
isdeposit 是否纳入预算,isselfbuid 是否自筹基建,isnotspecial 是否财政代管,isother 是否其他,legalman 法定代表
人,chargecard 收费许可证,
haveinvoicecard 是否有票据领用许可证,invoicecarddate 票据许可证日期,invoicecardstatus 票据许可证状态,haveaccount 银行账户信息,balancescale 收支结余政府调剂比例,
enterprisestatus 单位状态,isleaf 是否底级单位,isinventory 所属单位是否从该单位领用票据
into 单位表
from enterprise --enterprisestatus 单位状态 1 正常;0 停止 其他类同
--分单位分项目整理余额表凭证表
if exists (select * from sysobjects
where id = object_id(N'[分单位分项目整理余额表凭证表]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table 分单位分项目整理余额表凭证表
select a.S1,a.s2,a.s3,a.s4,a.s5,c.sectionname,c.cum00 期初余额,c.yefx,
VoucherNo,line,Summary,VoucherDate,--b.cum00 辅助期初余额, realdate,DebMoney,CreMoney,a.payoutid,a.e1,a.e2,a.e3,a.e4,a.e5,
d.enterprisecode,d.enterprisename,d.单位状态,d.收费许可证,d.是否有票据领用许可证,d.票据许可证状态,d.预算级次,d.单位性质,d.是否财政专户,
d.是否纳入预算,
a.i1,a.i2,a.i3,a.i4,a.i5,
e.incomecode,e.incomename,--e.detailincomename,
e.项目款,e.项目类,e.项目状态,e.资金性质,e.管理方式,e.收入级次,
e.收费类型,e.收费对象,e.调整情况,e.行政事业单位上缴财政专户比例,e.上缴中央比例,e.上缴省比例,e.上缴市比例,e.政府调剂比例
into 分单位分项目整理余额表凭证表
from dbo.凭证表 a --left join dbo.分单位分项目年初余额表 b on (a.s1=b.s1 and a.s2=b.s2 and a.s3=b.s3 and a.s4=b.s4 and a.s5=b.s5)
left join dbo.余额表 c on (a.s1=c.s1 and a.s2=c.s2 and a.s3=c.s3 and a.s4=c.s4 and a.s5=c.s5)
left join dbo.单位表 d on (a.e1=d.e1 and a.e2=d.e2 and
a.e3=d.e3 and a.e4=d.e4 and a.e5=d.e5)
left join dbo.项目表 e on (a.i1=e.i1 and a.i2=e.i2 and a.i3=e.i3 and a.i4=e.i4 and a.i5=e.i5)
--inner join dbo.科目表 f on (a.s1=f.s1 and a.s2=f.s2 and a.s3=f.s3 and a.s4=f.s4 and a.s5=f.s5)
--验证凭证表与分单位分项目整理余额凭证表是否一致
SELECT COUNT(*) AS Expr1, SUM(DebMoney) AS Expr2, SUM(CreMoney) AS Expr3
FROM 凭证表
SELECT COUNT(*) AS Expr1, SUM(DebMoney) AS Expr2, SUM(CreMoney) AS Expr3
FROM 分单位分项目整理余额表凭证表