李 霞,王 琦
(1.運城學院公共計算機教學部,山西運城 044000;2.運城學院計算機科學與技術系,山西運城044000)
基于.NET構件模型的用友U8憑證接口構件模型分析與設計
李 霞1,王 琦2
(1.運城學院公共計算機教學部,山西運城 044000;2.運城學院計算機科學與技術系,山西運城044000)
用友是國內(nèi)最大的財務軟件研發(fā)企業(yè),其U8產(chǎn)品占有相當大的市場份額,隨著各企業(yè)信息化建設的不斷推進,與企業(yè)相關的業(yè)務軟件也逐步形成,但是業(yè)務軟件與財務軟件之間大多還處于獨立的狀態(tài),為了規(guī)范企業(yè)財務流程,業(yè)務和財務的集成勢在必行.憑證接口模型的提出可以輕松實現(xiàn)業(yè)務和財務的無縫對接.
U8 憑證 接口 構件模型
目前,隨著企業(yè)規(guī)模的不斷擴大,企業(yè)的業(yè)務也變得越來越復雜,企業(yè)中的業(yè)務軟件在規(guī)范企業(yè)業(yè)務流程、提升企業(yè)信息化程度方面發(fā)揮著越來越重要的作用.然而,業(yè)務軟件中產(chǎn)生的財務數(shù)據(jù)與財務系統(tǒng)卻很難集成,使得業(yè)務軟件的財務數(shù)據(jù)孤島逐步形成.針對企業(yè)存在的這些問題,在充分研究.NET構件模型以及用友U8憑證模型的基礎上,結合構件技術,設計開發(fā)出了針對用友U8的憑證接口構件,并在多個企業(yè)業(yè)務軟件項目中得到應用,效果良好.
目前比較流行的構件模型有COM/DCOM/CLR, EJB和CORBA.COM/DCOM/CLR是微軟公司的技術,該技術憑借其在操作系統(tǒng)上的強大優(yōu)勢,獲得了巨大的成功.其中CLR(Common Language Runtime)可以看作是COM和DCOM技術的繼承和發(fā)展,可采用各種編程語言,利用托管代碼來訪問(例如C#、VB、F#、C++/CLI),使用的是 .NET的框架類庫FCL(Framework Class Library).它是.NET的核心,所以CLR構件模型又被稱為.NET構件模型.
.NET以程序集為基本的打包單元,程序集是一種功能上不可分割的邏輯單元,由一個或多個模塊(module,DLL或EXE文件)組成,每個程序集中有一個程序清單,它包含了程序集內(nèi)所有模塊和其他文件的信息,如程序集的名稱、版本號、文化和語言、程序集包含的所有文件列表、程序集所依賴的其他程序集等.所以程序集可以看作是.NET的構件.
圖1 COM/DCOM/CLR之間的關系及應用
憑證又稱會計憑證,是指能夠用來證明經(jīng)濟業(yè)務事項發(fā)生、明確經(jīng)濟責任并據(jù)以登記賬簿、具有法律效力的書面證明.它是記錄經(jīng)濟業(yè)務事項發(fā)生或完成情況的書面證明,也是登記賬簿的依據(jù).
U8憑證對應的數(shù)據(jù)庫表為:GL_accvouch,基本核心字段及說明如下:
憑證接口模型的設計目標是實現(xiàn)業(yè)務軟件產(chǎn)生的財務數(shù)據(jù)與財務軟件的集成,而不同的財務數(shù)據(jù)對應的會計科目可能不一樣,因此該接口模型應包含兩大核心功能:憑證設置和憑證生成.
2.2.1 憑證設置
在業(yè)務軟件中,產(chǎn)生財務數(shù)據(jù)的單據(jù)都需要向財務軟件寫入憑證,而不同單據(jù)所產(chǎn)生的財務數(shù)據(jù)類型又不一樣,因此需要根據(jù)所產(chǎn)生財務數(shù)據(jù)類型的不同,實現(xiàn)憑證設置的自定義.
為了實現(xiàn)憑證設置的自定義,需要解決如下兩方面內(nèi)容:
(1)憑證設置描述文檔(XML)[5]
憑證設置描述文檔主要提供與憑證相關的數(shù)據(jù)、類型、摘要、科目及借貸信息,為生成憑證數(shù)據(jù)提供一個模板.下面為一單據(jù)憑證設置的模板.
其實,最初我們只需要
(2)描述文檔解析及設置
憑證設置描述文檔生成之后,需要將其轉換成可視化的界面,讓用戶通過這個界面來進行憑證的查看和設置.憑證設置界面如圖2所示.
圖2 憑證設置界面
如果憑證設置描述文檔中
如果憑證設置描述文檔中
2.2.2 憑證生成
憑證生成是憑證接口模型的核心功能,它需要從相應的單據(jù)中提取財務數(shù)據(jù),然后根據(jù)設置好的憑證模板,形成憑證數(shù)據(jù),最后以事務的方式向用友U8寫入憑證.
形成憑證數(shù)據(jù)的核心功能由函數(shù)CreatePZ完成,該函數(shù)核心代碼如下:
函數(shù)CreatePZ返回類型為DataTable,其中包含了相應單據(jù)的所有憑證數(shù)據(jù),通過以下語句可以將其以參數(shù)形式傳遞給窗體frmPingZheng,并打開該窗體,利用該窗體的相關功能實現(xiàn)憑證向用友U8寫入的.
圖3 憑證生成界面
以上是憑證接口構件模型設計的核心內(nèi)容,該模型包含的兩大核心功能,經(jīng)過系統(tǒng)編譯之后,以dll的形式呈現(xiàn),將二者加以集成,最終形成憑證接口構件.該構件具有很強的靈活性和擴充性,因為組成該接口構件的是兩個相對獨立的構件,如果需要擴充或修改某一方面的功能,只需要對對應的構件加以升級即可.
2.2.3 憑證接口構件模型的應用
憑證接口構件模型的定位是同時擁有用友U8和相應業(yè)務軟件,并有數(shù)據(jù)集成需求的企業(yè),可以根據(jù)業(yè)務軟件產(chǎn)生的財務數(shù)據(jù)類型不同,自由定義憑證模板,單個或批量生成憑證數(shù)據(jù),同時傳入用友U8.可以實現(xiàn)財務和業(yè)務的無縫對接,極大提高員工的工作效率和企業(yè)的信息化程度.該接口構件模型已在筆者為國內(nèi)某著名重卡制造企業(yè)開發(fā)的《汽車行業(yè)消費信貸管理系統(tǒng)》中成功運用,運行穩(wěn)定,效果良好.
基于.NET構件模型設計的憑證接口構件充分體現(xiàn)了基于構件的軟件開發(fā)(CBD)思想,具有極強的擴充性和靈活性,為企業(yè)業(yè)務和財務的集成提供了一種有效的解決方案.但該構件目前僅支持用友U8的各個版本,對其它版本的支持還有待改進.
[1]王珉,吳廣茂,田林,等.CBD的組件選擇方法及其應用[J].計算機工程與應用,2006(7):33-35.
[2]王志堅,費玉奎,婁淵清.軟件構件技術及其應用[M].北京:科學出版社,2005.
[3]李益兵,董成亮,郭順生.基于用戶定義函數(shù)的財務接口研究與實現(xiàn)[J].組合機床與自動化加工技術,2005(3):108-109.
[4]呂英.企業(yè)資源計劃系統(tǒng)財務模塊特點及其接口開發(fā)[J].微計算機應用,2003(4):215-218.
[5]孫慧敏,邵麗麗,孫慧華.基于XML的電子病歷界面生成器的研究[J].長春大學學報,2004(6):27-29.
Abstract:UFIDA is one of the biggest financial software R&D enterprise of China.The Product of U8 have a considerable share in the market,with the further development and perfection of business informationization,business software forms gradually,but Business Software and financial software are still in independent state with each other.In order to standardize the financial.procedure,it is imperative to System Integration of financial software and business software.The representation of the Accounting Document Interface model achieve the seamless connection of Business and finances easily.
Key words:U8;accounting document;interface;component model
〔編輯 高?!?/p>
Analysis and Design of UFIDA U8 Accounting Document Interface Model based on.NET Component Model
LI Xia1,WANG Qi2
(1.Department of Public Computer Teaching,Yuncheng University,Yuncheng Shanxi,044000; 2.Department of Computer Science Technology,YunCheng University,Yuncheng Shanxi,044000)
TP311
A
1674-0874(2010)05-0016-04
2010-03-02
山西省高等學??萍佳芯块_發(fā)項目[20091150];運城學院項目[JC-2009015]
李霞(1979-),女,山西聞喜人,碩士,講師,研究方向:軟構件技術和優(yōu)化計算技術.