“三公”经费是指公务接待费、公务用车购置及运行维护费、因公出国(境)费用。审计过程中经常需要掌握“三公”经费的构成、各预算单位历年数据对比等情况,最基础的工作是统计出各预算单位在某年度内“三公”项目的支出数。下面以某县龙图平台数据为例,通过查询支付数据及财务核算数据计算“三公”经费的方法。 一、以支付数据为数据源计算“三公”经费 支付数据,即各预算单位向国库支付中心申请支付的数据,各预算单位在申请支付时,已按照支出的内容进行了归类并录入系统,财政部门审核同意后,即开出支付凭证,由代理银行直接支付。支付凭证中的内容对应到龙图平台中的t_payvch(支付凭证表),表中主要字段包括: BILLID 单据UID BILLCODE 单据编号 CREATER 制单人 CREATETIME 制单日期 WFSTATUS 状态(31—已支付,对应T_WFSTATUS表) FUNDTYPE 资金类型 BDGAGENCY 预算单位 EXPFUNC 支出功能分类 EXPECONORMIC 支出经济分类 AMT 支付金额 其中:BDGAGENCY—预算单位列对应t_fmagency(平台单位信息表)中的ITEMID列,从该表中获取单位编码(code)与单位名称(name);EXPECONORMIC—支出经济分类列,对应到t_pubexpeconormic(支出经济分类信息表)中的ITEMID列,从该表中可以获取经济分类编码(code)及名称(name),通过名称,审计人员很容易找到“三公”项目对应的ITEMID。以下是某县平台中“三公”项目对应的ITEMID(各地可能不同):
上表中NAME列中名称有重复,因为行政、事业单位的经济分类编码不同而名称相同,此处统计的范围是县级范围内纳入国库集中支付的所有行政、事业单位,审计人员只需关心ITEMID列即可。根据上述分析,审计人员应编写如下代码(直接在ORACLE中运行): SELECT* SELECT acode预算单位编码 ,a.name预算单位名称 ,e.name经济分类 ,p.amt支付金额 FROM t_payvch p JOIN t_pubexpeconormic e ON p.expeconormic=e.itemid JOIN t_fmagency a ON a.itemid=p.bdgagency WHERE p.wfstatus=31 AND e.itemid IN(289,292,4227,4228,4229,4230,4231,4232) PIVOT (SUM(支付金额)FOR经济分类IN(′公务接待费′AS"公务接待费" ,′公务用车运行维护费′AS"公务用车运行维护费" ,′其他交通工具运行维护′AS"其他交通工具运行维护" ,′公务用车购置′AS"公务用车购置" ,′其他交通工具购置′AS"其他交通工具购置" ,′因公出国(境)费用′AS"因公出国(境)费用") ORDER BY预算单位编码; 执行结果如图1:
审计人员也可以通过创建一张“三公”项目表,从该表中读出“三公”项目ITEMID,而不需在in列表中一个一个列示出来。 二、以财务核算数据计算“三公”经费 财务核算数据中的“三公”经费项目是通过凭证明细表(t_glrecordfm)的辅助核算列(expeconormic)来体现的。因此需要将t_fmagency、t_pubexpeconormic、t_glrecordfm、t_fmaccount(科目表)三表关联起来,从t_fmagency中取出核算单位编码与名称,从t_pubexpeconormic取出“三公”经费项目名称,从t_glrecordfm中统计出金额。值得注意的是在统计时需要将年终结转凭证剔除,因龙图软件的辅助核算的设计存在一定的缺陷,在统计时还要将科目编码限定为经费支出(行政类)或事业支出(事业类)科目。示例代码如下: SELECT* SELECT a.code ,a.name as bname ,e.name as ename ,DECODE(v.dc,1,v.amt,-1,v.amt*(-1)amt FROM T_GLRECORDFM v JOIN t_pubexpeconormic e ON v.expeconormic=e.itemid JOIN t_fmagency a ON a.itemid=v.hsagency