◆薛 寧/ 武漢市審計局
構建大數據審計工作模式,數據是基礎?,F階段,各類電子數據的整理工作,尤其是連續(xù)年度財務數據的采集轉換工作仍是難點。筆者以金蝶K3 財務軟件為例,創(chuàng)新思路,在MS SQL Server環(huán)境中手工分析整理數據,探索歸并采集連續(xù)年度財務數據的新方法,突破AO 中效率低下的多套數據合并功能的束縛,減少工作量、提高數據處理效率。
連續(xù)年度財務數據歸并采集的對象是同一單位相同賬簿連續(xù)年度的數據,歸并采集的本質是一次完成多個年度的數據處理。
審計人員在AO多套數據合并功能的基礎上,總結出如下思路:分解處理邏輯后重新組合(詳見圖1)——將使用AO 多套數據合并功能時“分次導入單個年度賬套數據后再合并滿足條件的連續(xù)年度賬套”的步驟,重組為“檢驗條件后歸并采集連續(xù)年度賬套并導入”。用正則表達式(Regular Expression)描述就是由“整理→(分離→采集→導入)+→檢驗→合并”的復雜模式,轉變?yōu)椤罢怼鷻z驗→采集→導入”的簡單模式。模式變化的關鍵在于將AO中多套數據合并功能中多次的分離、采集導入操作,改為一次完成分離、導入,將人工處理改為腳本執(zhí)行,大大提高財務數據采集轉換效率。
AO2011 的菜單項“審計分析-賬表分析-多套數據審查”下面的菜單項,分別提供以下功能:
1.合并前的檢查與調整
內容一致性:檢查待合并的多個賬套數據之間,科目、輔助核算項是否一致。如果不一致,需手工調整,以確保多個數據的內容一致性。調整界面分別由“科目變更檢查及調整”、“輔助核算項變更檢查及調整”菜單進入。
余額的連續(xù)性:檢查前一年度科目或輔助核算項的期末余額,是否等于下一年度同樣科目或輔助核算項的期初余額,即余額保持連續(xù)性。如果不連續(xù),則需要手工進行調整。調整界面分別由“科目余額檢查及調整”、“輔助核算項余額檢查及調整”菜單進入。
圖1 采集流程對比
2.多年數據的合并處理
通過內容一致性及余額連續(xù)性的檢查后,把多年財務數據內容“整合”為新的賬套數據。處理界面由“多套數據合并”菜單進入。合并后的單個賬套數據包含多年度財務數據,保證了數據的完整性。
以同一單位2014、2015兩個連續(xù)年度財務賬套為例,使用“多套數據合并”功能合并得到新的賬套。通過比較新賬套與合并前賬套發(fā)現:
1.會計期間合并兩個年度,會計年份定為第一個年度——2014,會計月份擴充至24 個,前12 個與第一個年度會計期間相同,第13 個月份對應第二年度的1月,后續(xù)以此類推。
2.會計科目、輔助核算項未發(fā)生變化。
3.會計科目、輔助核算項的期初余額為第一個年度——2014年的期初余額。
4.憑證表合并兩個年度的憑證,會計年份定位第一個年度——2014,會計月份擴充至24個,與會計期間的變化一致。
AO 合并處理多年度數據的方式,為數據歸并處理指明了方向:
1.內容一致性與余額連續(xù)性的檢查。
2.一個涵蓋多年度的會計期間——會計年份為首個年度,會計月份依次遞增,直至覆蓋全部時段。
3.一個包括多年度憑證信息的憑證表——將多年度的憑證記錄合并(或視為)為單個憑證表,擴展會計期間。
滿足了這三個條件,我們就可以把多個年度的財務數據整理在一起,作為一套“原始”數據,導入AO 建立電子賬套。知曉數據的處理細節(jié)與變化后,順其道而用之:“欺騙”AO使其以單年度的方式處理歸并整理后的多年度數據,生成等同于“多套數據合并”產生的單套多年度電子數據。
按照常規(guī)處理財務數據的經驗,結合對金蝶K3 財務軟件數據關系的理解,分析、整理出財務基礎數據(多個年度),包括科目信息、輔助項信息、科目余額、輔助項余額、憑證信息、輔助憑證信息。原則上,科目信息、輔助項信息分別是連續(xù)多個年度科目、輔助項的并集,刪除重復項。若存在編碼相同但名稱不同的沖突,要人為判斷后進行選擇,保證一個(類)編碼至少出現一次;科目余額、輔助項余額只需要首個年度的期初金額信息;憑證信息、輔助憑證信息分別是連續(xù)多個年度的憑證、輔助憑證數據的并集。
由AO中多套數據的合并原理得知,多套連續(xù)年度財務數據合并的一個關鍵內容是會計期間的擴展。擴展會計期間比較簡單,即將會計年份固定為首個年度,會計月份按照時間排序,從1(或者建賬月份)開始進行遞增值為1的順序編號。
圖2 腳本擴展會計期間的流程
對于時間跨度較少的情況,可以采取手動逐月擴展會計期間的方式。選擇步驟“生成財務數據臨時表的定義會計期間”,或者選擇步驟“會計期間及科目調整的檢查調整會計期間定義”,這兩個處理點都有輔助界面完成會計期間的擴展。
對于時間跨度較大的情況,可以使用腳本擴展會計期間,保存至中間表中備用。其實現算法如圖2 所示,其處理時機與方法將在下文“AO 中的采集實現”中單獨論述。
內容一致性檢查:金蝶K3 的多年度財務數據使用的是相同的科目和輔助信息,故不存在內容不一致的情況。對于其他財務軟件,科目信息、輔助項信息是多個年度數據的并集,要從集合的角度證明這兩個信息整理后的多年度數據滿足內容一致性的要求,檢查是否存在相同編號不同名稱的沖突記錄,若存在,則需人工處理,確保相同編號對應一個名稱,若無法處理沖突記錄,則不能進行后續(xù)歸并處理。
余額連續(xù)性檢查:只采集首個年度的科目余額、輔助項余額,后續(xù)會計月份的余額均由前一月份的期初余額、發(fā)生額迭代計算而得到。
憑證完整性檢查:多年度憑證數據的并集。前兩個檢查說明科目、輔助項及二者的期初余額可以覆蓋多個年度的信息,整理后的憑證、輔助憑證要包含多個年度的全部記錄,否則科目余額雖具備連續(xù)性,但結果與實際不符。
這三項檢查是保證整理后的單套數據包含原始連續(xù)年度一致、連續(xù)、完整財務信息必要但不充分條件。要想成為充分條件,必須正確理解數據及數據關系。
AO 中手動采集數據大致分為采集數據、生成財務數據臨時表、會計期間及科目調整、常規(guī)數據整理及賬表重建等5 個步驟,每個步驟中還分若干子步驟。具體操作可以參考AO2011 的幫助或《使用手冊》。為了實現歸并操作進行的附加處理如下。
1.附加處理的時機選擇
理論上,“生成財務數據臨時表”完成之后,“賬表重建”操作之前均可作為附加處理的執(zhí)行點。實際處理過程中,應在“生成財務數據臨時表”完成之后即刻開始附加處理,以便在“會計期間及科目調整”、“常規(guī)數據整理”等步驟中對特殊處理后的AO數據進行核對。
2.附加處理的內容
第一步:獲取本項目所在數據庫的相關信息及所用電子數據相關信息。
第二步:腳本擴展會計期間的中間表數據的處理。組合會計期間中間表、所在數據庫相關信息及所屬電子數據相關信息,把從第13個會計月份開始的記錄insert 到AO 項目所在財務數據庫的會計期間表中,實現AO 中電子數據會計期間的擴張,為賬表重建做好準備。
第三步:科目期初余額無數據的操作。使用自制模板或AO采集向導采集過程中,若采集的科目余額表中無記錄,則在賬表重建過程中會報余額表錯誤而終止后續(xù)處理。解決這個問題的方法,就是向AO 項目所在財務數據庫的科目余額表中添加一條末級科目余額為0的記錄,即可“治愈”AO,順利完成賬表重建。
在附加處理之后,即可在“會計期間及科目調整”步驟中看到擴展后的會計期間,若之前科目余額表為空,則還可以看到余額為0 的科目余額信息。核對之后,直接點擊“賬表重建”,AO就會根據前面的整體操作建立電子數據。