李 霞,王 琦
(1.运城学院公共计算机教学部,山西运城 044000;2.运城学院计算机科学与技术系,山西运城044000)
基于.NET构件模型的用友U8凭证接口构件模型分析与设计
李 霞1,王 琦2
(1.运城学院公共计算机教学部,山西运城 044000;2.运城学院计算机科学与技术系,山西运城044000)
用友是国内最大的财务软件研发企业,其U8产品占有相当大的市场份额,随着各企业信息化建设的不断推进,与企业相关的业务软件也逐步形成,但是业务软件与财务软件之间大多还处于独立的状态,为了规范企业财务流程,业务和财务的集成势在必行.凭证接口模型的提出可以轻松实现业务和财务的无缝对接.
U8 凭证 接口 构件模型
目前,随着企业规模的不断扩大,企业的业务也变得越来越复杂,企业中的业务软件在规范企业业务流程、提升企业信息化程度方面发挥着越来越重要的作用.然而,业务软件中产生的财务数据与财务系统却很难集成,使得业务软件的财务数据孤岛逐步形成.针对企业存在的这些问题,在充分研究.NET构件模型以及用友U8凭证模型的基础上,结合构件技术,设计开发出了针对用友U8的凭证接口构件,并在多个企业业务软件项目中得到应用,效果良好.
目前比较流行的构件模型有COM/DCOM/CLR, EJB和CORBA.COM/DCOM/CLR是微软公司的技术,该技术凭借其在操作系统上的强大优势,获得了巨大的成功.其中CLR(Common Language Runtime)可以看作是COM和DCOM技术的继承和发展,可采用各种编程语言,利用托管代码来访问(例如C#、VB、F#、C++/CLI),使用的是 .NET的框架类库FCL(Framework Class Library).它是.NET的核心,所以CLR构件模型又被称为.NET构件模型.
.NET以程序集为基本的打包单元,程序集是一种功能上不可分割的逻辑单元,由一个或多个模块(module,DLL或EXE文件)组成,每个程序集中有一个程序清单,它包含了程序集内所有模块和其他文件的信息,如程序集的名称、版本号、文化和语言、程序集包含的所有文件列表、程序集所依赖的其他程序集等.所以程序集可以看作是.NET的构件.
图1 COM/DCOM/CLR之间的关系及应用
凭证又称会计凭证,是指能够用来证明经济业务事项发生、明确经济责任并据以登记账簿、具有法律效力的书面证明.它是记录经济业务事项发生或完成情况的书面证明,也是登记账簿的依据.
U8凭证对应的数据库表为:GL_accvouch,基本核心字段及说明如下:
凭证接口模型的设计目标是实现业务软件产生的财务数据与财务软件的集成,而不同的财务数据对应的会计科目可能不一样,因此该接口模型应包含两大核心功能:凭证设置和凭证生成.
2.2.1 凭证设置
在业务软件中,产生财务数据的单据都需要向财务软件写入凭证,而不同单据所产生的财务数据类型又不一样,因此需要根据所产生财务数据类型的不同,实现凭证设置的自定义.
为了实现凭证设置的自定义,需要解决如下两方面内容:
(1)凭证设置描述文档(XML)[5]
凭证设置描述文档主要提供与凭证相关的数据、类型、摘要、科目及借贷信息,为生成凭证数据提供一个模板.下面为一单据凭证设置的模板.
其实,最初我们只需要
(2)描述文档解析及设置
凭证设置描述文档生成之后,需要将其转换成可视化的界面,让用户通过这个界面来进行凭证的查看和设置.凭证设置界面如图2所示.
图2 凭证设置界面
如果凭证设置描述文档中
如果凭证设置描述文档中
2.2.2 凭证生成
凭证生成是凭证接口模型的核心功能,它需要从相应的单据中提取财务数据,然后根据设置好的凭证模板,形成凭证数据,最后以事务的方式向用友U8写入凭证.
形成凭证数据的核心功能由函数CreatePZ完成,该函数核心代码如下:
函数CreatePZ返回类型为DataTable,其中包含了相应单据的所有凭证数据,通过以下语句可以将其以参数形式传递给窗体frmPingZheng,并打开该窗体,利用该窗体的相关功能实现凭证向用友U8写入的.
图3 凭证生成界面
以上是凭证接口构件模型设计的核心内容,该模型包含的两大核心功能,经过系统编译之后,以dll的形式呈现,将二者加以集成,最终形成凭证接口构件.该构件具有很强的灵活性和扩充性,因为组成该接口构件的是两个相对独立的构件,如果需要扩充或修改某一方面的功能,只需要对对应的构件加以升级即可.
2.2.3 凭证接口构件模型的应用
凭证接口构件模型的定位是同时拥有用友U8和相应业务软件,并有数据集成需求的企业,可以根据业务软件产生的财务数据类型不同,自由定义凭证模板,单个或批量生成凭证数据,同时传入用友U8.可以实现财务和业务的无缝对接,极大提高员工的工作效率和企业的信息化程度.该接口构件模型已在笔者为国内某著名重卡制造企业开发的《汽车行业消费信贷管理系统》中成功运用,运行稳定,效果良好.
基于.NET构件模型设计的凭证接口构件充分体现了基于构件的软件开发(CBD)思想,具有极强的扩充性和灵活性,为企业业务和财务的集成提供了一种有效的解决方案.但该构件目前仅支持用友U8的各个版本,对其它版本的支持还有待改进.
[1]王珉,吴广茂,田林,等.CBD的组件选择方法及其应用[J].计算机工程与应用,2006(7):33-35.
[2]王志坚,费玉奎,娄渊清.软件构件技术及其应用[M].北京:科学出版社,2005.
[3]李益兵,董成亮,郭顺生.基于用户定义函数的财务接口研究与实现[J].组合机床与自动化加工技术,2005(3):108-109.
[4]吕英.企业资源计划系统财务模块特点及其接口开发[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
〔编辑 高海〕
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
山西省高等学校科技研究开发项目[20091150];运城学院项目[JC-2009015]
李霞(1979-),女,山西闻喜人,硕士,讲师,研究方向:软构件技术和优化计算技术.