李卓異?楊見飛
Oracle數(shù)據(jù)庫是目前世界上使用最為廣泛的數(shù)據(jù)庫管理系統(tǒng)。由于其穩(wěn)定性強、安全性高,在國內(nèi)被大型企業(yè)集團廣泛采用。
在本次審計中,根據(jù)被審計單位的數(shù)據(jù)庫類型,運用相應的數(shù)據(jù)庫技術(shù),可以提高審計工作的效率和質(zhì)量,就Oracle數(shù)據(jù)庫而言,處理GB級別以上的數(shù)據(jù),通常要比SQL Server、MySQL等數(shù)據(jù)庫效率更高。在本案例的審計過程中,該集團結(jié)算系統(tǒng)后臺數(shù)據(jù)庫使用Oracle數(shù)據(jù)庫,體量在500GB以上,體量大、結(jié)構(gòu)復雜,尤其適合應用Oracle數(shù)據(jù)庫技術(shù)。
應用功能
一、數(shù)據(jù)庫備份與還原
根據(jù)具體數(shù)據(jù)環(huán)境,選擇恰當?shù)膫浞菖c還原方式,本次審計使用數(shù)據(jù)泵技術(shù)恢復被審計單位提供的業(yè)務數(shù)據(jù)。
二、業(yè)務數(shù)據(jù)分析
根據(jù)具體審計方向,了解被審計單位數(shù)據(jù)邏輯與結(jié)構(gòu),通過編寫SQL查詢語句實現(xiàn)相應的審計需求。
數(shù)據(jù)準備
在該審計項目中,數(shù)據(jù)準備涉及結(jié)算系統(tǒng)、智能調(diào)度系統(tǒng)等2套數(shù)據(jù),大小分別約為500GB、240GB,涉及客流分析、充電平臺、基本報表、公車定位等4套數(shù)據(jù),大小約15GB。下面以數(shù)據(jù)泵還原結(jié)算系統(tǒng)數(shù)據(jù)示例。
根據(jù)本次審計需求,運用數(shù)據(jù)泵技術(shù)對結(jié)算系統(tǒng)后臺數(shù)據(jù)庫進行全庫備份和還原,同時為提高效率,分配轉(zhuǎn)儲文件、設置壓縮參數(shù)和并行參數(shù)。
(一)了解本地系統(tǒng)、軟件版本,布置環(huán)境,使其能夠兼容被審計單位的數(shù)據(jù)。
(二)以system用戶的dba權(quán)限登錄,打開SQL操作平臺。
(三)根據(jù)實際需要,確定數(shù)據(jù)文件存儲位置,估計數(shù)據(jù)文件大小,建立表空間。
create tablespace ccen datafile 'D:\gjgs\bkj\ccen01.dbf' size 10000m autoextend on next 1000m maxsize unlimited;
(為提高效率,建議表空間名稱與原轉(zhuǎn)儲文件一致,同一表空間下可增加多個數(shù)據(jù)文件。)
(四)建立用戶,同時指定默認表空間。
create user ccense identified by 123456 default tablespaceccen;
(為提高效率,建議用戶名稱與原轉(zhuǎn)儲文件一致。)
(五)確定被審計單位數(shù)據(jù)存儲位置,建立對應的虛擬路徑。
create directory ccense_data as 'D:\gjgs\202205報送\結(jié)算數(shù)據(jù)';
(虛擬路徑。)
(六)給用戶授予角色、權(quán)限。
grant resource, connect, dba to ccense;
(給用戶授予基本角色。)
grant unlimited tablespace to ccense;
(給用戶授權(quán),無限使用表空間權(quán)限。)
grant read, write on directory ccense_data to ccense;
(給用戶授權(quán),虛擬路徑的讀寫權(quán)限。)
(七)利用數(shù)據(jù)泵還原數(shù)據(jù)。
impdp ccense/123456 directory=ccense_datadumpfile=mydb_%U.dmp logfile=mydb_in.log parallel=8 full=y;
(涉及8個轉(zhuǎn)儲文件,使用%U通配符;為提高還原效率,增加并行度參數(shù)。)
(八)執(zhí)行過程中,容易出現(xiàn)表空間缺失、容量不足、用戶不存在等報錯信息,這就需要根據(jù)具體問題,采取新建表空間、增加數(shù)據(jù)文件、新建用戶等策略。
應用步驟
一、了解數(shù)據(jù)
根據(jù)業(yè)務流程特點,掌握相關(guān)報表及數(shù)據(jù)結(jié)構(gòu),了解報表之間的關(guān)系,明白相關(guān)字段及含義。
二、驗證數(shù)據(jù)
驗證數(shù)據(jù)的真實性、完整性。本次驗證中發(fā)現(xiàn)2020年4―7月數(shù)據(jù)不完整、不真實,及時要求被審計單位補充所缺數(shù)據(jù)。建議數(shù)據(jù)分別存儲,避免數(shù)據(jù)合并過程中發(fā)生錯誤,影響前期數(shù)據(jù)。以次卡錢包消費明細數(shù)據(jù)為例。
select extract(year from OPDT) 年, extract(month from OPDT) 月, count(*) 消費次數(shù)from rec_vicecard_consume19 group by extract(year from OPDT), extract(month from OPDT) union select extract(year from OPDT) 年, extract(month from OPDT) 月,count(*) 消費次數(shù)from rec_vicecard_consume group by extract(year from OPDT), extract(month from OPDT) order by 1,2;
三、處理與分析數(shù)據(jù)
通過對結(jié)算中心業(yè)務流程的梳理,確定辦卡、充值、消費等方面的審計。(注:以下步驟涉及的編程語句較為冗長,故不再列出。)
1.辦卡情況
重點關(guān)注學生卡、老年卡、老年優(yōu)惠卡、愛心卡等辦理條件與實際情況。
問題一:核驗是否存在一人同時辦理兩張卡的問題。
(1)找出制卡信息表,利用卡類型字段對各類辦卡人員進行分類,分別篩選出敬老卡、學生卡和老年優(yōu)惠卡辦卡數(shù)據(jù),進行逐一分析(分析過程以敬老卡為例)。
(2)查看敬老卡制卡信息表的屬性,確定唯一主鍵字段,針對該字段進行計數(shù)和篩選操作,篩選出該字段出現(xiàn)兩次及以上的辦卡人員信息即為曾經(jīng)辦理過兩張或兩張以上敬老卡的人員。
(3)將篩選結(jié)果與注銷卡人員信息表相關(guān)聯(lián)剔除已注銷卡信息人員,并再次進行步驟(2)操作,得到在同一時段辦理兩張敬老卡的制卡信息表。
(4)將該表與基本人員信息表相關(guān)聯(lián),確定同時段辦理兩張及以上敬老卡人員身份信息,再將其與月票卡消費信息表相關(guān)聯(lián),篩選出同時段所產(chǎn)生的消費記錄,分析結(jié)束。
問題二:核驗是否存在年齡不符合規(guī)定而辦理公交卡的問題。
分析過程包括以下幾個步驟,其中步驟(1)和(4)同問題一:
(1)找出制卡信息表,利用卡類型字段對各類辦卡人員進行分類,分別篩選出敬老卡、學生卡和老年優(yōu)惠卡辦卡數(shù)據(jù),進行逐一分析(分析過程以敬老卡為例)。
(2)以唯一主鍵字段為依據(jù),將敬老卡制卡信息表與基本信息表相關(guān)聯(lián),獲取敬老卡辦理人員的身份證信息,利用身份證號字段計算敬老卡辦理人員的年齡并增加年齡字段。
(3)利用年齡字段篩選出年齡小于70周歲的辦卡人員即為不符合年齡辦理敬老卡的人員。
(4)將所得不符合年齡辦理敬老卡的人員信息與月票卡消費記錄相關(guān)聯(lián),篩選出違規(guī)辦理敬老卡人員的消費記錄,分析結(jié)束。
2. 充值情況
關(guān)注大額充值與實際消費情況。
問題一:核驗是否存在職工月票卡充值金額每年超過1200元。
根據(jù)“公交集團在職員工每月充值100元月票卡”的規(guī)定思路對結(jié)算中心的充值數(shù)據(jù)進行分析:
(1)找出基本信息表和職工花名冊,利用身份證號字段進行關(guān)聯(lián),篩選出在職職工名下?lián)碛泄豢ㄇ闆r。
(2)利用customerid字段與月票卡充值記錄表進行關(guān)聯(lián),篩選出在職職工的充值情況,依據(jù)次卡錢包交易金額字段值判定充值金額是否超過1200元,若超過即違反規(guī)定。
(3)再將其與月票卡消費信息表相關(guān)聯(lián),篩選出違反規(guī)定充值月票卡員工的消費記錄,分析結(jié)束。
問題二:核驗是否存在職工免費充值月票卡情況。
根據(jù)月票卡充值情況表中次卡錢包虛充金額字段和次卡錢包交易金額字段,以此為切入點對職工充值數(shù)據(jù)進行分析,步驟(1)和(3)同問題一:
(1)找出基本信息表和職工花名冊,利用身份證號字段進行關(guān)聯(lián),篩選出在職職工名下?lián)碛泄豢ㄇ闆r。
(2)判斷次卡錢包虛充金額字段值和次卡錢包交易金額字段值是否相同,若兩字段值相同,即為職工免費充值情況。
(3)再將其與月票卡消費信息表相關(guān)聯(lián),篩選出免費充值月票卡員工的消費記錄,分析結(jié)束。
3. 消費情況
重點關(guān)注每日異常消費情況。這里利用次卡錢包消費明細表和電子錢包消費明細表數(shù)據(jù)展開分析與評價。
問題一:總體消費情況評價。
(1)獲得年、月消費人次數(shù)據(jù)。
(2)以圖形直觀展示年月消費人次與趨勢變化。
問題二:異常消費數(shù)據(jù)情況。
(1)創(chuàng)建次卡錢包消費異常中間表,以日消費大于30次的卡號為消費異常標準。利用中間表(卡號、年月日等信息),結(jié)合消費明細表可分析異常消費數(shù)據(jù)特征。
(2)創(chuàng)建電子錢包消費異常中間表,以日消費大于30次的卡號為消費異常標準。利用中間表(卡號、年月日等信息),結(jié)合消費明細表可分析異常消費數(shù)據(jù)特征。
(3)獲得異常消費匯總數(shù)據(jù)。
4. 線路運營效益情況
根據(jù)結(jié)算中心提供的結(jié)算系統(tǒng)后臺數(shù)據(jù)庫與運營部提供的智能調(diào)度系統(tǒng)的線路運營里程數(shù)據(jù),將各條公交線路的收入與運營里程(反映一定的成本)關(guān)聯(lián)分析。
(1)獲得各公交線路的消費人次數(shù)據(jù)。
(2)獲得各公交線路的運營里程數(shù)據(jù)。
(3)將公交線路的消費人次數(shù)據(jù)與運營里程數(shù)據(jù)關(guān)聯(lián)分析,注意以實際線路名稱統(tǒng)一結(jié)算中心的線路編碼和運營部的線路編碼。
應用成果分析
在本次審計中,通過對結(jié)算數(shù)據(jù)的還原和校驗,發(fā)現(xiàn)2020年4―7月數(shù)據(jù)不完整(及時要求被審計單位補充報送完整數(shù)據(jù));通過對結(jié)算中心業(yè)務流程的梳理,確定辦卡、充值、消費等方面的審計,最終發(fā)現(xiàn)各個環(huán)節(jié)的不規(guī)范行為,尤其是存在大量非正常消費行為。
一、辦卡情況
1. 同時辦理兩張以上敬老卡、學生卡或老年優(yōu)惠卡,共計128人次,其中同一時段兩張卡均產(chǎn)生消費記錄共計1173條。
2. 年齡不符情況下辦理敬老卡、學生卡或老年優(yōu)惠卡,共計135人次,產(chǎn)生消費記錄共計25979條。
二、充值情況
1. ×××等4名在職職工享受退休員工卡免費充值月待遇,其中×××等3名職工還同時享受在職員工月票卡充值福利,退休員工卡涉及免費充值次數(shù)共計2880次,消費記錄共計18次,月票卡消費記錄共計5488次。
2. ×××等5名職工月票卡充值金額分別為1300元、1850元、1250元、1250元、1250元,均超過規(guī)定金額1200元,共計涉及金額6900元,共計消費次數(shù)9483次。
3. 三分公司職工×××在2021年免費充值乘車次數(shù)共計21次,包含5次學生卡免費充值和16次成人卡免費充值,涉及金額4200元,1元充值200次乘車次數(shù)共計7次,涉及金額1393元,共計金額5593元,共計消費記錄105條。
三、消費情況
1.總體消費情況:2019―2022年5月,消費人次分別為1.24億、0.72億、0.94億、0.23億。受疫情等因素影響,2020年消費人次較2019年下降41.8%,2020年、2021年、2022年1―5月消費人次分別為2019年同期的58%、76%、44%。
觀察月度數(shù)據(jù)變化情況,個別月份消費人次增幅異常,如2020年11月、2021年3月與4月。這個異常情況與異常刷卡問題在月度數(shù)據(jù)上的體現(xiàn)相吻合。
2.非正常消費情況:單張IC卡日刷卡次數(shù)在30次以上的合計3733.7777萬次,其中2019年達424.2108萬次,2020年達1060.5334萬次,2021年達1952.8494萬次,2022年1―5月達296.1841萬次。
3. 非正常消費主要特征:大量老年優(yōu)惠卡在非高峰時段(9―17時,免費乘車時間段)連續(xù)刷卡(電子錢包功能區(qū)),單張卡日消費次數(shù)最高達26426次;大量成人卡連續(xù)刷卡(次卡錢包功能區(qū),50元可月消費100次),單張卡日消費次數(shù)絕大多數(shù)維持在100次(含)以內(nèi)。
四、線路運營效益情況
自2019年1月至2022年4月,4年均在運營線路計113條,百公里消費人次(指每運營100公里所載客人次)平均值為144,其中低于平均值的線路合計75條,低于100人次的線路合計39條,低于50人次的線路合計10條。
2019年平均百公里消費人次183,其中低于平均值的線路合計81條,低于100人次的線路合計27條,低于50人次的線路合計8條。
2020年平均百公里消費人次125,其中低于平均值的線路合計75條,低于100人次的線路合計54條,低于50人次的線路合計15條。
2021年平均百公里消費人次123,其中低于平均值的線路合計72條,低于100人次的線路合計59條,低于50人次的線路合計11條。
2022年1―4月平均百公里消費人次108,其中低于平均值的線路合計72條,低于100人次的線路合計64條,低于50人次的線路合計15條。
通過比對分析發(fā)現(xiàn),連續(xù)4年百公里消費人次低于100的線路合計19條,低于50的線路合計3條。
應用特點
優(yōu)點:數(shù)據(jù)庫穩(wěn)定可靠、運行效率高,尤其適合大數(shù)據(jù)處理與分析。該技術(shù)在提升工作質(zhì)量和效率方面優(yōu)勢突出。一是該技術(shù)可覆蓋全部的業(yè)務數(shù)據(jù),避免抽樣審計帶來的審計誤差,提高審計質(zhì)量;二是該技術(shù)可通過科學的語句設計,優(yōu)化數(shù)據(jù)分析邏輯,提高工作效率。
缺點:數(shù)據(jù)庫邏輯結(jié)構(gòu)復雜,掌握、應用難度較高。
主要創(chuàng)新點:一是打造數(shù)據(jù)分析閉環(huán),全程跟進數(shù)據(jù)需求調(diào)研、采集、處理、分析與結(jié)果反饋;二是既關(guān)注微觀疑點問題,又注重宏觀數(shù)據(jù)評價。
推廣建議
Oracle數(shù)據(jù)庫技術(shù)已經(jīng)被國內(nèi)外大型企業(yè)集團廣泛使用,大型企業(yè)集團日常業(yè)務交易數(shù)據(jù)量極為龐大,以本案例涉及的企業(yè)為例,日均交易數(shù)據(jù)記錄達30萬條以上,因此在企業(yè)審計中有必要推廣使用該技術(shù),以更全面、更好地掌握審計對象業(yè)務情況。
該技術(shù)在使用中,需注意的地方很多,主要集中在:一是使用數(shù)據(jù)泵技術(shù)進行數(shù)據(jù)導入和導出環(huán)節(jié),在導入和導出工作進行前,需要提前配置好數(shù)據(jù)泵工作環(huán)境,如建立所需表空間、所需用戶、虛擬路徑等,并為用戶分配恰當?shù)臋?quán)限,否則數(shù)據(jù)導入和導出環(huán)節(jié)極易出現(xiàn)問題,直接影響下一步工作正常進行;二是在使用SQL查詢語言時,涉及的部分關(guān)鍵詞和函數(shù)等與SQL Server、MySQL等數(shù)據(jù)庫語言的不同。(作者單位:洛陽市審計局)