一种预留接口的实现方法

文档序号:8257997阅读:2081来源:国知局
一种预留接口的实现方法
【专利说明】一种预留接口的实现方法
[0001]
技术领域
[0002]本发明涉及计算机ERP软件开发领域,具体地说是一种预留接口的实现方法。
【背景技术】
[0003]当前,各企业在信息化方面,因处理业务的不同,往往会同时应用多套软件,而为了消除信息孤岛问题,不同软件之间就需要进行数据交换、甚至是数据的同步,因此不同软件之间的接口需求广泛存在。
[0004]目前接口的实现方式主要有两种:一种是根据客户需求进行专项开发,在源代码中嵌入接口处理代码的方式;另一种是提供配置功能,由客户根据自己的需求进行配置,由软件进行翻译并执行的的方式。这两种方式都存在很大的缺陷。
[0005]在一项目上应用智能编码平台的时候,就遇到该需求:其ERP软件是另外一家软件公司的,我们提供编码平台,并将所生成编码同步到该ERP数据库中。如果使用在软件中嵌入接口代码的方式,则会影响的编码平台的版本一致性,造成后期编码平台版本控制、维护升级的困难;而使用软件配置数据交换的方式,却又无法实现数据的实时同步。
[0006]在源代码中嵌入接口处理代码的接口实现方式,就是根据客户需求进行专项开发,在需要做接口的功能部分,增加代码,这就导致整个功能都被做成该客户的专用代码了,之后,当该功能有改动时,就需要单独对该客户的专用代码再改一次。例如:需做物料目录数据的同步,则需要将物料维护卡片对象w_js_wlzd_card复制一份给客户专用,增加接口处理代码,因此,要对该对象进行变更,则要同步对该客户的同一对象进行相应的修改;这很难保证各客户对该对象的同步升级,可谓牵一发而动全身!
该方式的缺陷很明显:阻碍了软件升级、降低了公共代码的复用率、极大增加了软件维护的复杂性。
[0007]为此,后来逐渐出现各种各样的可通过软件配置实现接口数据交换的方式,这种接口实现方式,允许客户根据自己的需求进行配置,建立数据来源表与数据目标写入表的对应关系,由程序根据已经设置好的表间对应关系,将来源表的数据传送到目标表中。该方式主要是实现了数据的传输功能,但缺陷也很明显:对实时性、事务完整性以及复杂业务处理方面,功能捉襟见肘,尤其是在数据同步(增、删、改)功能需求方面,实现很吃力,完全没有代码实现的高效与逻辑的完整。

【发明内容】

[0008]本发明的技术任务是针对上述现有技术的不足,提供一种预留接口的实现方法。按该方法可以在接口需求未知的情况下,先行布置好接口,并实现原系统与接入系统之间的消息互通,即是实现对被接入系统嵌入业务逻辑中,尤其是嵌入到事务处理中,保障集成系统之间的数据一致性。软件开发过程中,在有接口需求之处,预留接口,不同系统之间集成的时候,仅仅针对接口进行开发,即可实现系统的互联互通,而无需再向原程序中嵌入处理代码,给原程序带来不稳定因素。
[0009]本发明的技术任务是按以下方式实现的:一种预留接口的实现方法,其特点是: 软件开发过程中,在所有可能会出现接口需求的地方(如单据、数据字典等)预留接口函数处理;
将所有的预留接口函数放在接口函数库(假定为interface_pub.pbl)中;
为项目预留一个项目专用库(假定为interface_zx.pbl);
在不同的项目上,对有接口需求的,将接口函数复制到项目专用库中,并在函数中实现接口功能。
[0010]以上述方法增加接口,不再需要对原产品功能模块进行开发,而是对接口函数进行二次开发即可。因此,不同的项目,配备不同的专用接口库(interfaCe_ZX.pbl)即可,程序体无需修改。
[0011 ] 作为优选,程序运行过程中可优先使用项目专用库中的接口函数。
[0012]接口函数可预留在commit命令之前,返回值分‘I’、‘-1’两种。返回值‘I’表示接口数据已处理完毕,原程序事务处理可以提交commit;返回值‘-1’表示接口数据出现异常,原程序处理不可以commit,需回滚rollback,即保证了与接口数据的同步及实时性。
[0013]本发明的预留接口的实现方法中,每一编码段的编码规则包括:软件开发过程中,在有接口需求的过程或事务中预留通用接口,如需与其它系统进行集成,仅需对接口进行开发即可,而无需对原主体程序进行改动,即可实现业务的动态衔接。与现有技术相比,具有以下突出的有益效果:
(一)提供了模式统一的接口实现、预留技术;
(二)彻底消除了因接口的开发对原程序本体的影响,将接口开发工作量降至最低;
(三)实现简单、高效,极易推广普及;
(四)有效降低了不同项目上、不同接口需求及后期维护复杂度;
(五)实现简单,结构清晰,简单易用,降低了编程的复杂度,进而提高了编程的效率。
【附图说明】
[0014]附图1是实施例中新增或修改物料目录时预留接口处理示意图;
附图2是实施例中删除物料记录时预留接口处理示意图;
附图3是实施例中在产品库中增加接口函数库和项目专用库示意图;
附图4是实施例中接口函数库示意图;
附图5是实施例中物料目录的专项接口示意图(一);
附图6是实施例中物料目录的专项接口示意图(二);
附图7是本发明预留接口的实现方法中不同项目上接口切换示意图。
【具体实施方式】
[0015]参照说明书附图以具体实施例对本发明的预留接口的实现方法作以下详细地说明。
[0016]实施例: 本发明方法适合各种编程语言的开发,本实施例代码谨以PowerBuilder语言代码作为实例,不再列举其它语言的实例了。
[0017]本发明的预留接口的实现方法包括以下步骤:
不同项目上的接口切换情况如图1所示。
[0018]1、接口预留:
1-1、在可能会出现接口需求的地方预留接口,如单据、目录字典保存的时候。
[0019]以物料目录同步为例,新增或修改物料目录时,在commit前预留接口处理,如附图2所示。
[0020]在删除物料记录时,在commit前预留接口处理,如附图3所示。
[0021]1-2、产品库中增加接口函数库interface_pub.pbl和项目专用库interface_zx.pbl,如附图4所示:
其中,interface_pub.pbl库存放所有预留的接口函数;
interface_zx.pbl库为空,不同的项目各建立并连接各自的interface_zx.pbl,将需要用到的接口从interface_pub.pbl中复制到该专项库中,并进行具体实现。
[0022]【接口函数库】
假定命名为interfaCe_pub.pbl,存放所有接口函数定义。接口函数要定义接口的详细使用标准及使用规范,包括函数名称、参数定义及说明、正常返回值等,内容为空。
[0023]参数中包含所需同步数据的主键或相关信息。
[0024]以物料目录的预留接口为例,如附图5所示:
物料目录的预留接口
其中,预留接口中包含,
接口函数名称:gf_interface_lswlzd 接□参数:value string psKey valuestring psStat
valuestring psModMsg
referencestring psRetMsg
返回值:I ;-l 参数说明及函数使用注意事项等。
[0025]【项目专用库】
假定命名为interface_zx.pbl,存放项目专用接口函数定义,路径中排在interface_pub.pbl的前面,因此系统会优先使用本库中的接口函数。
[0026]如果项目中无接口,则使用空interface_zx.pbl ;如果项目需要使用接口,则将该interface_zx.pbl换成该项目专用的同名库interface_zx.pbl。
[0027]预留接口实现代码说明(PowerBuilder语言实现样例)
说明:
ICSETffLSX表,是获取需转换成编码的物料属性数据用的;
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1