按照国家有关低保金发放的政策规定,一户困难家庭只能享受一种低保待遇:即城镇居民最低生活保障或者农村居民最低生活保障,不能同时领取两种低保金。如果运用传统的手工审计方法,工作量很大,也难以核实违规发放低保金的问题。本文以对某市民政局的审计为例,提出运用AO系统开展对违规发放低保金的审计思路,即分析民政局提供的低保金发放明细表和低保家庭基本信息表,将低保家庭基本信息中同一家庭编号同时对应多个低保证号的记录筛选出来,将筛选结果和低保金发放明细进行比对,确定是否存在民政部门违规发放低保金,低保户重复享受城镇居民最低生活保障和农村居民最低生活保障待遇的现象。 一、前期数据准备 违规发放低保金审计所需资料为: (1)基础表:低保金发放明细2011。数据元素:行政区划代码、家庭编号、姓名户主、身份证号户主、低保证号、银行账号、发放时间、低保金、其他补贴金额。 (2)基础表:低保家庭基本信息。数据元素:行政区划代码、家庭编号、类别、姓名户主、身份证号户主、低保证号、银行账号、其他家庭成员姓名1、其他家庭成员身份证号1、其他家庭成员姓名2、其他家庭成员身份证号2、其他家庭成员姓名3、其他家庭成员身份证号3、其他家庭成员姓名4、其他家庭成员身份证号4、其他家庭成员姓名5、其他家庭成员身份证号5、其他家庭成员姓名6、其他家庭成员身份证号6、每户保障人口数、家庭每月收入。 二、分析步骤 1、数据采集,在AO中导入原始数据。 将民政局提供的低保家庭基本信息表和最低生活保障发放明细表导入AO2011系统中。 2、利用SQL语句,统计出同一家庭编号,低保证号大于1的记录,生成一个临时表2,为下一步审计做准备。 3、将业务数据中的低保金发放明细2011和第二步生成的临时表2相关联,筛选出同一家庭编号对应多个低保证号的发放记录,将筛选结果以EXCEL电子表格形式存放在资料树审计疑点文件夹中,以备进一步核实。 4、核实疑点,落实取证。根据数据分析生成的同一家庭编号对应多个低保证号的发放记录表,进一步调阅相关的原始资料,落实审计疑点。 三、流程图
四、方法语言 步骤一:数据采集整理 步骤二:在低保家庭基本信息表中统计出同一家庭编号,低保证号大于1的记录,生成一个临时表2,为下一步审计做准备。 var SqlStr; Begin SqlStr:='SELECT行政区划代码,家庭编号,COUNT(低保证号)as低保证号重复次数from低保家庭基本信息group bv行政区划代码,家庭编号having COUNT(低保证号)>1’; //生成临时表 CreateTempTable(’临时表2',SqlStr); AddTable('临时表2'); showmsg(’临时表创建完成,转下步审计,请等待') end. 步骤三:找到业务数据中的低保金发放明细2011,以家庭编号将其与临时表2相关联,筛选出同一家庭编号对应多个低保证号的发放记录。并将筛选结果以EXCEL电子表格形式存放在资料树审计疑点文件夹中,以备进一步核实。 Var SqlStr,CurQuery,IsEmpty;//定义变量 Begin //Sql语句赋值给变量 SqlStr:='select distinct a.行政区划代码,a.家庭编号,a.姓名_户主,a.身份证号_户主,a.低保证号,a.发放时间,a.低保金from低保金发放明细2011 a join临时表2 b on a.家庭编号=b.家庭编号group by a.行政区划代码,a.家庭编号,a姓名户主,a.身份证号 户主,a低保证号,a.发放时间,a,低保金’;//执行查询SQL CurQuery:=createq(SqlStr,-1); //查询结果集是否为空 IsEmpty:=qeof(CurQuery; if IsEmpty#1 then begin //循环将查询结果放入业务疑点临时库 repeat AddTransRslt(CurQuery,’发现疑点'); IsEmpty:=qmov(CurQuery,1); IsEmpty:=qeof(CurQuery); until IsEmpty=1; //将临时库结果集放入疑点库 TransBatch(CurQuery,’发现疑点'); showmsg(’发现疑点,已插入疑点库');