黎胜利;张文波;蒲亚军
【摘 要】In order to integrate the Oracle ERP and Gold Abacus financial software introduced by Company A for different purposes at different times, and to reduce the administrative cost and burden, the method proposed in \"Introduction of Software Sngineering\" is adopted in this paper to make a detailed research direction by using the Java
programming language as a development tool and on the basis of detailed analysis of Oracle ERP and Gold Abacus financial software used in Company A. The data inter-face between Oracle ERP and Gold Abacus financial software was implemented successfully. A new way to combine some large foreign softwares with large domestic softwares was explored through this method to make a full use of their respective advantages, and give an exellent service to enterprises to the full extent.%为了整合A公司为不同目的在不同时期引入的Oracle ERP与金算盘财务软件,减少管理成本和管理人员负担,在此采用《软件工程导论》中的方法,以程序设计语言Java作为开发工具,通过对A公司Oracle ERP与金算盘财务软件的详细分析研究,制定详细的研究方案,成功实现了A公司Oracle ERP与金算盘财务软件数据接口应用,进而探索一条国外大型软件与国内大型软件相结合的新路子,最终充分发挥各自的优势,最大程度地服务于企业.
【期刊名称】《现代电子技术》 【年(卷),期】2013(036)002
【总页数】3页(P48-50)
【关键词】Oracle;ERP;金算盘财务软件;数据接口;Java 【作 者】黎胜利;张文波;蒲亚军
【作者单位】沈阳理工大学,辽宁沈阳110159;西安北方光电科技防务有限公司,陕西西安710043;沈阳理工大学,辽宁沈阳110159;西安北方光电科技防务有限公司,陕西西安710043 【正文语种】中 文 【中图分类】TN964-34
Oracle ERP可谓是一个完美的物流和成本管理系统,其财务系统侧重核算过程的管理与控制,但是整个ERP系统更加关注的是经济业务,在账务核算方面则与国内公司的财务核算要求存在相当大的差异。而金算盘系统是国产财务软件,以财务为核心,控制的是资金流,财务核算明确,但业务流程管控薄弱,难以追溯[2]。 目前,国内企业在基于ERP的财务系统的应用方式上存在2种方式:一种方式是舍弃ERP中的财务模块,直接采用国产财务软件,并将ERP中相关数据导入到财务系统中。这种方式可以充分发挥ERP系统和国产财务系统各自的优点,但是也带来了管理分散,数据不集中等问题,不能充分发挥ERP的三流合一作用;另一种方式则是直接使用ERP中的财务系统,其优点在于可以集中完整的处理数据,但查询困难[2]。以上这2种方式虽然都各有优点,但都并不完美,能否探索一条新思路,既能充分发挥以上2种方法的优点,又能有效克服其各自存在的不足等问题是本文重点探讨的内容:A公司直接使用Oracle ERP财务系统录入财务数据,录入完成后通过接口将Oracle ERP财务数据导入金算盘财务系统,实现两套财务
系统数据共享,以确保财务基础事务处理数据来源惟一。 1 接口系统的需求分析
接口方案的设计需要建立在对接口系统深入理解的基础上。本文所接口的系统分别为金算盘财务系统和Oracle ERP财务模块,在接口设计前,我们需要清楚的认识其系统结构及运行现状。 1.1 Oracle ERP财务运行现状
A公司目前应用的ERP系统是基于ORACLE公司的11.5.6版本的Application产品,包括分销、制造、财务和人力资源4大模块,涵盖了采购、销售、库存、计划、车间、物料清单(BOM)、质量、成本、项目、应收、应付、总账、固定资产14个子模块。采用ORACLE8I作为数据库管理平台,是一种基于B/S的应用系统,实现了从产品销售订单签订,材料采购、零件加工完成并发货到财务核算的全过程管理,是一个集分销、生产、财务与人力资源与一体的管理系统[2]。如图1所示。
图1 A公司Oracle ERP系统功能模块图
Oracle ERP的账务体系采用了业务主导模式,通过每一个经济业务来推动财务业务的记录。总账模块出具财务报表,总账中的数据多数从其他模块中获取,也包括一部分手工录入的数据。涉及到本接口的业务模块主要是应收、应付、固定资产和总账模块。
1.2 金算盘财务系统运行现状
金算盘财务系统是重庆金算盘公司基于微软NET开发语言,ORACLE8I作为数据库管理平台开发的一套财务管理软件,是一种基于C/S架构的应用系统。它按照国家规定的会计科目组织会计核算,通过手工录入会计凭证,自动生成各类账表,具有强大的报表自定义及查询功能,以及账套及其操作人员的权限管理,会计科目和往来单位、部门、职员、项目、统计等辅助核算信息的增、删、改业务管理,会
计凭证的增、删、改、复核、记账等业务管理;账册查询、预算管理、期末结账等业务管理,自动进行通用转账和损益结转、收支结转管理,数据的“导入导出”管理,数据备份恢复管理等功能。 2 接口设计
解决金算盘财务系统与Oracle ERP系统财务凭证数据对接的关键在于接口边界和接口数据结构及导入规则的确定。Oracle ERP财务系统4个模块所涉及的财务业务类型众多,财务数据基础表非常多,内在逻辑关系也相当复杂;金算盘系统内部业务相对简单,但各基础表之间的关系也比较复杂,为了保护其内在的数据逻辑关系,对外部数据的输入也较谨慎,且具有选择性。这就要求在做接口前必须要明确接口数据应该从哪里接,接哪些内容,以及如何接[3]。 2.1 接口思路
将ERP系统作为公司日常财务业务中的基础事务处理工作平台,记录公司财务往来业务详细信息及固定资产卡片及账务信息,并根据每笔基础事务产生相应的会计分录信息。所有会计分录信息通过接口按照事务之间的关联关系进行合并后导入至金算盘系统,将金算盘系统作为公司财务凭证管理、财务月度/季度/年度各类账务及报表的管理平台,依据来源于ERP系统的基础事务处理凭证数据直接生成财务所需各类账务及报表信息,以此保证基础事务处理来源惟一[4]。 2.2 接口边界分析
A公司Oracle ERP系统和财务业务凭证关系密切的模块主要包括应付、应收、固定资产、总账4个模块。金算盘财务总账系统涉及到财务会计科目、部门、职员、统计、项目、往来单位等基础数据及会计凭证及其科目相关的辅助核算信息等内容。其中这样确定了金算盘系统对公司数据接受边界的分析:即会计科目、部门、职员、统计、项目、往来单位等基础数据及会计凭证及科目相关辅助核算信息的导入,且保证各类基础数据的编码、描述信息惟一,会计凭证及科目相关辅助核算、智能核
算信息的导入,会计凭证必须以头信息和行信息的形式分列,且头信息中的凭证号保证惟一[5]。 2.3 接口数据导入规则
(1)基础数据。通过前面的接口边界分析,需导入金算盘系统的基础数据有:部门、职员、统计、项目、往来单位、会计科目、操作员及一些辅助核算信息,导入时所有的在Oracle ERP中已经停用的基础资料,不导入金算盘系统中,如果原来已经导入到金算盘的基础编码,金算盘在本次导入的时候自动修改为停用。除科目以外,基础编码与Oracle ERP同步,科目只新增后增量导入。
(2)业务数据。业务数据以应付模块为例,应付模块所涉及的业务是由发票、付款、预付款核销、取消预付款核销、发票取消、付款取消、贷向通知单、退款等8余种最基本的事务组成的,每一种事务处理都产生相应的会计分录信息。将产生的会计分录信息以下面的规则处理后导入金算盘系统中。
合并规则:按照基本事务之间的关联关系进行凭证合并,相关联事务的会计日期相同时其会计分录方可进行合并,合并是指科目相同,辅助核算相同,金额相同,借贷方向相反的会计分录行在导入时相互抵消,不进行导入。
对于合并后仍存在中转科目的会计分录,应提示凭证信息不完整不能进行导入;对于未付款的预付款发票会计分录,应提示凭证信息不完整不能进行导入;对于取消类或贷向类业务,在导入时应将ERP会计分录转换为红冲凭证;导入时凭证会计科目所需的辅助核算信息也需要导入,若辅助核算信息不完整也应提示辅助核算信息不完整不能进行导入。 2.4 凭证导入方式
由于Oracle ERP系统基础数据与应收、应付凭证在系统增加完成后即无法再进行修改,因此在导入时应采用增量导入方式,固定资产、总账凭证在系统录入完成后,还可以进行修改或者重新生成,因此总账、固定资产凭证在导入时应采用覆盖式导
入方式。 2.5 接口方案
在确定了接口边界和接口数据后,剩下的问题即要解决接口过程的实现。接口的实现过程主要包括4个阶段的数据处理,即Oracle ERP数据提取,数据在Oracle ERP系统与金算盘财务系统间的传递,金算盘财务系统中的校验和实际导入处理,导入时产生的出错信息的再处理[2]。如图2所示。 图2 接口过程流程图 3 接口实现
(1)实现接口的其他辅助条件[6]。Oracle ERP和金算盘财务系统接口在上述的数据传递过程基础上,需要辅以相应的程序开发和环境搭建方可最终完成。为了能够最大程度地减轻财务人员的工作量及操作复杂性,提高接口应用效率,采取将接口系统作为一个相对独立的模块集成在金算盘财务系统菜单中,便于财务操作人员进行相关操作。开发主要涉及Oracle ERP系统数据的提取和数据的预处理过程、数据向临时表的导出提取过程、临时表数据提取、校验和写入目标系统过程,以及成功数据与失败数据的标记记录过程。由于Oracle ERP与金算盘系统都是基于oracle 8i数据库管理平台,两个系统服务器都比较稳定,且两套系统都应用于同一局域网环境内,因此从应用的角度出发,将临时表搭载在金算盘系统的数据库上,通过在两个数据库实体之间建立一条数据访问通道,利用接口程序实现接口数据的导入。
(2)接口开发环境。公司Oracle ERP系统已有近9年的历史,而金算盘系统也成功应用了近4年时间,两套系统相互独立,且都比较完善。系统的接口开发着重关注接口过程的安全性,以及接口数据的一致性,完整性以及可靠性。在安全性上,系统接口的设计应该完全在封闭过程中实现,任何的非系统内人工干预均可能带来安全隐患。而数据的一致性、完整性及可靠性正是依靠我们对上文设计模型在
现有环境基础上的实现来保障。
(3)接口开发关键技术。在系统开发接口过程中,关键技术的应用发挥了主要的作用。系统接口开发的关键技术主要包括.NET菜单及表单设计技术,Oracle存储过程设计与调用技术、Oracle存储函数设计及调用技术,以及基于该接口的数据读写及数据回传等技术。
(4)接口实现与应用。本方案实施运行后3个月基本进入稳定状态。月均导入凭证数百张,凭证行数据数千行,差错流程逐步下降,已基本正常运转。出错原因主要在于实施初期,开发的接口程序不完善,应付个别业务凭证存在重复导入的现象。再就是操作人员对业务规范不熟练,进行凭证导入时因凭证不合要求不能导入的现象也比较多。上线运行过程中通过对发现的接口程序问题及时修改完善,对操作员进行业务操作规范培训等一系列措施,接口基本顺畅运行。 4 结语
本文通过对Oracle ERP系统和金算盘财务系统接口的方法和过程的阐述,解决了金算盘财务系统和Oracle ERP系统间数据传递的关键问题,并提供了一种可扩展的接口模式。提高了金算盘财务系统和Oracle ERP系统的使用效率。通过实际运行证明,该模式实现了两套财务系统业务数据来源惟一性问题,大大减轻财务人员的工作量,避免人为因素的错误,也充分发挥了两套财务系统各自的优势,稳定有效的提高了企业财务工作效率。 参考文献
[1]苏珂.Oracle ERP企业管理系统[J].山东轻工业学院学报,2008(3):62-65. [2]梅雪,韩之俊.网络报销和ORACLE ERP系统的接口实现[J].中国管理信息化,2005(10):30-33.
[3]吕英.企业资源计划系统财务模块特点及其接口开发[J].微计算机应用,2003(4):43-46.
[4]汪晓华.Oracle ERP实施和估算方法的改进研究与应用[D].上海:上海交通大学,2009.
[5]吕亚楠.制作ERP与工商数据采集系统接口平台[J].黑龙江科技信息,2008(11):80-83.
[6]齐亦君.ERP系统的客户化和二次开发[J].企业技术开发,2004(2):68-70. [7]张海藩.软件工程导论[M].北京:清华大学出版社,2008.
因篇幅问题不能全部显示,请点此查看更多更全内容