[摘要]本文通過對當前會計軟件以及會計審計數據接口現狀的分析,提出了一個基于XML的會計審計數據交換模型以及會計審計數據轉換流程。
[關鍵詞]數據接口;數據交換;審計;XML
[中圖分類號]F270.7 [文獻標識碼]A [文章編號]1673—0194(2006)06—0010—04
一、接口的困擾
長期以來,如何快速、方便、準確、有效地采集會計電子數據一直成為審計人員的一個難題。審計數據接口已經成為解決會計數據采集的一種行之有效的方法。審計數據接口的數量直接取決于這樣幾個因素:
(1)會計軟件的種類和版本
目前流行的會計軟件很多,如用友、安易、金蝶軟件等等。根據軟件工程的原理與實踐證明,軟件需要不斷地實施修正、完善和適應性的維護,因為在軟件運行的過程中可能會發現一些問題,或者用戶提出新的要求,或者環境發生變化,這樣,軟件就需要不斷地升級。升級后的財務軟件其數據存儲的形式往往會發生改變。不同類型的會計軟件其數據存儲格式不一定相同,即使是出自同一公司的軟件,由于版本不同,其后臺數據庫也可能不同,例如用友軟件8.0版本采用Access數據庫,8.21版本采用SQLserver數據庫等等。
(2)會計軟件采用的數據庫類型
基于不同的開發目的和開發技術,會計軟件采用的數據庫類型多種多樣,小到用于單機版的桌面數據庫Microsoft ACCESS,dbase,FoxProff'等,大到用于大型應用的Informix,Microsoft SQL Server,Oracle數據庫等等。
(3)數據庫結構與表結構
由于不同單位開發的軟件系統,使用的語言平臺、總體設計方案、數據結構及關鍵字等都不太可能相同,在數據庫結構、表結構、數據類型、數據表示上也可能會有較大的差異,這樣,在軟件系統間直接進行數據交換變得十分困難。例如,同樣用于存儲憑證信息的表文件,有些軟件中將憑證信息存儲在一張表文件中,而有些軟件將憑證內容分別存放在兩個相關聯的表文件中:憑證信息表和分錄信息表。
(4)運行平臺
當前會計軟件的運行平臺涵蓋了DOS、Windows、Unix和Linux等,當然,基于Unix和Linux的會計軟件比較少見,數據采集的難度會更大。
我們至少可以給出這樣一個公式:F:T*V*S*P(F:審計數據接口;T:會計軟件的種類;V:會計軟件的數據庫類型;S:數據庫結構與表結構;P:運行平臺),這樣的復雜度使得審計軟件的開發尤為繁瑣。同時,不同類型的審計軟件,對數據格式的定義通常是不規范的,基本上沒有可重用性,因此,造成了許多不必要的重復開發,也導致了許多本來可以協調工作的軟件由于數據格式的不統一而無法得到充分利用。我們認為,標準化是唯一的出路。各軟件開發單位只有按統一的標準開發,才能實現不同用戶間會計信息的交流,才有可能實現某些會計信息全社會共享的目標,才能解決審計數據采集的瓶頸問題。那么,當前國內眾多財務軟件所使用的不同數據庫平臺和數據庫結構,以什么作為標準呢?相對于數據庫技術,XML技術在數據應用和數據管理方面具有很多優點,采用擴展的標記語言XML,標記定義會計信息交換標準,還能適應于Internet/Intranet環境的信息交換和web展現方式,能更好地支持相關軟件的開發,以XML作為標準的數據格式是完全可行的。下面對XML技術有關的概念、特點等作一簡要介紹,再基于這樣一種技術探討會計審計數據交換模型、實施及其前景。
二、什么是XML
XML,即可擴展標記語言(eXtetlsible Markup Lan-guage),是一種用于描述數據的與平臺無關的語言,它是一門新興的面向Internet應用的標記語言, 是由W3C組織于1998年2月制定的一種通用語言規范。XML最大的特點是可擴展性,它也是一種界定文本數據的簡便而標準的方法。XML不僅可以描述結構化數據,還可以有效描述半結構化,甚至是非結構化的數據。相對于數據庫技術,XML具有以下特點:
(1)操作簡便:XML采用純文本格式,幾乎任何工具都可創建和編輯XML,使得程序可以更簡單,從而提供了從小配置文件到企業級數據倉庫的可擴展性。
(2)跨平臺:XML文件為純文本文件,不受操作系統、軟件平臺的限制。
(3)存儲與顯示分離:可擴展樣式語言XSL(eXten-sible Style Language)可以指定如何顯示數據。數據和顯示是分離的,可以為同一數據指定不同的樣式表用于不同輸出。
(4)易于處理:XML對格式的定義嚴格,具有層次結構,而且與廠商無關。
XML數據由嵌套和標記元素組成,標記包含對文檔存儲形式和邏輯結構的描述。使用者可自由定義標記,并通過元素之間的嵌套包含來體現層次關系。XML文檔中的元素包含開始標記和結束標記,標記之間的信息稱之為元素的內容。XML文檔中的標記表示數據的含義而不是數據的顯示形式。如圖1所示表示了一個簡單的XML文檔,存放余額表數據。

三、數據交換模型
隨著XML的標準化及其實現技術的增多,我們可以把XML技術應用到審計數據采集工作中來。可以說,XML提供了一種理想的異種數據交換的方案。我們將會計審計的數據交換分為兩個部分:會計數據到XML和XML到審計數據,亦即將XML作為會計數據和審計數據交換的中介,提出了如下的基于XML的會計審計數據交換模型,如圖2所示。

圖2基于XML的會計審計數據交換模型
由這樣一個模型,我們可以發現,在引入了XML技術之后,會計審計數據交換的方式發生了重大的變化,從步驟上講,分成了從會計數據到XML和從XML到審計應用兩步,但正是由于這兩步,使得審計接口的復雜度降低到與會計軟件的種類成常數比(假設原有會計軟件M個,審計軟件N個,則總的審計接口數目的為M*N,引入XML后,假設我們把一次數據轉換看成一個審計接口,則總的審計接口數目為M+N)。
四、數據交換流程
在以上的模型中,從會計數據到XML的轉換是最為重要的也是技術難度最大的一步,在這個過程中,我們至少要確定一個較為獨立的基于XML的數據標準,所有會計數據均可轉換為這個標準數據,所有審計應用也能夠讀取這個標準數據。值得欣喜的是,由國家審計署和財政部提出并組織專家研究起草的《信息技術,會計核算軟件數據接口》國家標準(GB/T19581-2004),經國家質量監督檢驗檢疫總局和國家標準委批準發布,于2005年1月1日起在全國范圍內實施。這個標準規定了會計核算軟件的數據接口要求,包括會計核算數據元素、數據接口輸出文件的內容和格式的要求;提出了數據元素和輔助核算的概念,為標準使用者理解會計核算的數據概念奠定了基礎;規范了文本格式和XML格式的數據接口,為會計核算軟件與其他信息系統之間的數據交換創造了條件。實現會計核算軟件數據接口標準化,對審計信息化建設有著重要意義,審計機關將可以方便、快捷、準確地獲取所需的財務數據,大大提高審計效率,擺脫了以往許多非標準數據接口的困擾。
在審計軟件系統中,審計數據的存放、分析、管理一般都基于數據庫技術,數據庫技術經過幾十年的發展,取得了豐碩的成果。現存的計算機文檔中,有很大一部分是采用數據庫技術存放的。相比較于XML文檔,數據庫中的數據在數據安全、操作數據的速度以及維護和管理上都有很大的優勢。如何將會計軟件中XML的標準數據方便地轉換到現有的審計軟件系統中,將是我們審計人員所關心和需要解決的問題。
通過對關系模型與XML的數據模型特征的比較,XML文檔中涉及的是元素、子元素、屬性、實體、實體引用等概念,而在一個數據中,涉及的是表、記錄、字段、關鍵字、外鍵等概念。為了實現XML文檔和數據庫之間的轉換,首先我們必須建立數據庫模式(databaseschema)和XML數據模式(XML schema)之間的映射關系。我們可以使用如下的映射規則:為每一個有子元素或者混合內容的元素建立一個表,該表具有一個關鍵字;為每一個混合元素建立一個獨立的表,該表通過父元素表中的關鍵字建立關聯,為每一個元素的單值屬性和只出現一次的子元素創建一個字段,字段類型與XML數據模式中聲明的類型一致;為每一個元素的多值的屬性或者能在文檔中多次出現的子元素創建獨立的表,該表與父表通過父表的關鍵字關聯。
訪問XML文檔的主要技術有DOM(Document Ob-iectModel,文檔對象模型),DOM是W3C的一種技術標準,實際上是提供一組APl(應用程序接口)來存取XML數據,DOM可以通過JavaScript,VBScript等腳本程序來實現,也可通過C++、Java、delph等高級程序設計語言來實現。
筆者在delph7.0的環境下應用Delph內置的XML文檔控件TXMLDocument,成功地實現了將XML的文檔轉換為Access類型的數據庫表,實現的代碼如下:
procedure TForml.BtnConvertClick(Sender:TObject);
var
i,j:integer,
root:IxmLNode;//根節點
code:IxmLNode;//科目節點
ValueNode:IxmLNode;//leaf(葉)節點
begin
root:xmlparser.DocumentElement;//取得xml文檔的根節點
for i:=0 to root.Childnodes.Count-ldo//遍歷根節點的子節點
begin
for i:=root.ChildNodes[i]//取得子節點,及各科目
destTable.Insert;//插入記錄,//
開始字段賦值
destTable.FieldValues[’cbegind_C’]=code.ChildNcdes[1],Text;
destTable.FieldValues[’cbegind_C’]=code.ChildNodes[2],Text;
destTable.FieldValues[’mb’]:=code.ChildNodes[3]Text;
destTable.FieldValues[’md’):=code.ChildNodes[4]Text;
destTable.FieldValues[’mc’]:=code.Chi ldNodes[5]Text;
destTable.FieldValues[’mc’]:=code.Chi ldNodes[6]Test;
destTable.Post;
end;
end;
對于圖1中的XML文檔進行映射,結果如表1所示。
表1數據庫表

五、結束語
XML和關系數據庫在數據應用和數據管理方面各有優勢,應是一種相輔相成、揚長避短的關系?!耙詳祿鞛榇鎯κ侄?,以XML為交換載體”的數據管理模式將是一種發展趨勢。目前,用友、金算盤、金蝶、浪潮、SAP中國、新大中等多家著名軟件企業的產品,已經通過《信息技術,會計核算軟件數據接口》國家標準符合性測試和認證,越來越多的會計軟件產品將會向這個標準靠攏,這意味著今后政府監管部門可以方便、快捷、準確地獲取使用這些財務軟件的使用者的財務數據,從而提高國家經濟監督管理部門的信息化監督水平,為會計核算軟件與其他信息系統之間的數據交換創造了條件,可以將計算機審計工作從繁瑣的數據采集轉換工作中解放出來。利用相關的XML編程技術,實現XML文檔與審計數據庫之間自由地交換數據,方便對審計數據的查詢、分析、管理。我們相信,計算機會計與審計信息交換的研究及其應用,將會促進計算機會計審計事業的發展,基于XML的會計審計數據轉換即將成為一個必然趨勢。
主要參考文獻
[1]Didier Martin.XML高級編程[M].北京:機械工業出版社,2001.
[2]葉華,張森.一種異構數據庫間的XML接口方案[J].計算機應用,2001(21):15—17.
[3]金吳,李海峰,吳介一,張少博.基于XML的企業信息交換[J].計算機應用研究,2002,(11):27—29.
[4]卿秀華.基于XML的異構數據庫數據交換[J].武漢科技學院學報,2003,(16):65—68.
[5]施永香,丁國勇.基于XML的會計審計數據交換研究[J].審計理論與實踐,2003,(11):37—38.
[收稿日期]2006—03—10
[作者簡介]施永香(1963—),女,江蘇南通人,南京審計學院副教授,從事計算機應用與電算化會計與審計的教學與研究。
[基金項目]江蘇省教育廳高校哲學社會科學研究項目,項目批準號:03SJB790009。