企业资源规划行业插件开发的方法、装置和系统的制作方法

文档序号:6469757阅读:125来源:国知局
专利名称:企业资源规划行业插件开发的方法、装置和系统的制作方法
技术领域
本发明涉及企业资源规划(ERP, Enterprise Resourse Planning)领域,尤 其涉及行业ERP插件开发的方法、装置和系统。
背景技术
ERP是指建立在信息技术^5出上,以系统化的管理思想,为企业决策层及 员工提供决策运行手段的管理平台。ERP系统集中信息技术与先进的管理思想 於一身,成为现代企业的运行模式,反映时代对企业合理调配资源,最大化地 创造社会财富的要求,成为企业在信息时代生存、发展的基石。
通用ERP软件是针对业界最通用的管理需求开发的ERP套件,因为其通 用性,所以自然很难兼顾到各个行业个性化的差异需求。行业ERP软件是在 通用ERP软件fc出上针对某一特别行业的需求而开发的ERP套件。
每个行业都有其自身的特点,所以不同的行业对ERP套件都会有一些个 性化的需求,为了实现行业ERP套件的个性化需求,当前普遍采用的技术是 复制ERP通用软件的源代码,在此勤出上直接进行修改,使之满足行业的个 性化需求。
发明人在研究中发现,现有技术通过直接修改通用ERP源代码的方式实 现行业ERP个性化需求,行业ERP软件的开发人员必须对通用ERP软件的基 础组件的源码非常熟悉,这样对开发人员提出很高的要求,学习成本很高,而 且针对不同的行业开发出不同的行业ERP版本后,软件维护工作量也非常大, 此外,当通用ERP升级后,如果将新的功能移植到行业ERP中需要很高的成 本。

发明内容
有鉴于此,本发明实施例提供行业ERP插件开发的方法、装置和系统, 以最小的成本在通用ERP软件的基础上实现行业ERP软件的个性化需求,减 少代码维护工作量。
为实现上述目的,本发明实施例提供了如下技术方案
一种实现行业企业资源规划ERP软件开发的方法,包括
通用ERP软件在执行到预设执行参数中的可控制点时,向行业ERP插件
代理发送事件触发通知,触发所述行业ERP插件代理组件的流程控制事件; 行业ERP插件代理通知行业ERP插件所述流程控制事件; 行业ERP插件在收到所述通知后,向行业插件代理组件发送处理所述流
程控制事件时的控制命令;
行业ERP插件代理接收所述控制命令并转发给通用ERP软件;
通用ERP软件根据所述控制命令对相应的流程进行处理。
优选地,在所述通用ERP软件在执行到预设执行参数中的可控制点时,
向行业ERP插件代理发送事件触发通知,触发所述行业ERP插件代理组件事
件之前,还包括
分解通用ERP软件业务流程中的执行参数; 根据所述执行参数封装行业插件代理组件。 优选地,所述执行参数包括
业务流程的可控制点,业务流程中的数据和信息以及处理业务流程的方法。
优选地,根据所述业务流程的可控制点,业务流程中的数据和信息以及处
理业务流程的方法封装行业插件代理组件具体为
才艮据所述业务流程的可控制点封装行业插件代理的事件; 根据所述业务流程中的数据封装行业插件代理的属性; 根据所述业务流程中的方法封装行业插件代理的函数。 一种实现行业ERP软件开发的行业插件代理,包括 第一接收单元,用于接收通用ERP软件在执行到预设的执行参数中的可
控制点时发送的事件触发通知,触发行业ERP插件代理组件的流程控制事件; 通知单元,用于将流程控制事件通知给行业ERP插件; 第二接收单元,用于接收行业ERP插件处理流程控制事件时发出的控制
命令;
发送单元,用于将第二接收单元收到的控制命令发送给通用ERP软件。 优选地,还包括
封装单元,用于根据通过分解通用ERP软件业务流程所获得执行参数封 装行业插件代理组件。
优选地,所述执行参数包括
业务流程的可控制点,业务流程中的数据和信息以及处理业务流程的方法。
优选地,所述封装单元具体包括
第一封装模块,用于根据业务流程的可控制点封装行业插件代理的事件; 第二封装模块,用于根据所述业务流程中的数据封装行业插件代理的属
性;
第三封装模块,用于根据所述业务流程中的方法封装行业插件代理的函数。
一种实现行业ERP软件开发的系统,包括
通用ERP软件,用于实现基本业务流程,在执行到预设执行参数中的可 控制点时,向行业ERP插件代理发送事件触发通知,触发所述行业ERP插件 代理组件的流程控制事件;接收来自行业ERP插件代理的控制命令,并按照 控制命令对流程进行处理;
行业ERP插件代理,用于接收通用ERP发送的事件触发通知,并将由所 述事件触发通知所触发的流程控制事件通知行业ERP插件;接收行业ERP插 件处理流程控制事件时发出的控制命令并转发给通用ERP软件;
行业ERP插件,用于将在捕捉并处理行业ERP插件代理发送的流程控制 事件时对该流程的控制命令发送给行业ERP插件代理。
优选地,所述行业ERP插件代理还用于
根据通过分解通用ERP软件业务流程所获得执行参数封装行业插件代理 组件。
可见,在本发明实施例中,通用ERP软件在执行到预设执行参数中的可 控制点时,向行业ERP插件代理发送事件触发通知,触发所述行业ERP插件 代理组件的流程控制事件;行业ERP插件代理通知行业ERP插件所述流程控
制事件;行业ERP插件在收到所述通知后,向行业插件代理组件发送处理所 述流程控制事件时的控制命令;行业ERP插件代理接收所述控制命令并转发 给通用ERP软件;通用ERP软件根据所述控制命令对相应的流程进行处理。 根据本发明实施例,通过行业ERP插件代理实现行业ERP插件对通用ERP软 件的控制,快速实现行业ERP软件的个性化需求。
附闺说明


图1为本发明实施例一所提供的方法的流程图; 图2为本发明一实施例所提供的方法的流程图; 图3为本发明实施例二所提供的方法的流程图; 图4为本发明实施例三所提供的装置的结构示意图; 图5为本发明实施例四所提供的系统的结构示意图。
具体实施例方式
本发明实施例提供了行业ERP插件开发的方法,下面结合附图对本发明 实施例进行详细描述。
参见图1,在本发明实施例一中,实现本发明实施例所提供的行业ERP 软件开发的方法包括
步骤101:通用ERP软件在执行到预设执行参数中的可控制点时,向行业 ERP插件代理发送事件触发通知,触发所述行业ERP插件代理组件的流程控 制事件。
其中,所述执行参数包括业务流程的可控制点,业务流程中的数据和信 息以及处理业务流程的方法。
所述预设执行参数是指,在本方法执行前,预先根据业务流程的特点将业 务流程的执行参数先分解出来。所以在步骤101之前,还包括
分解通用ERP软件业务流程中的执行参数,根据执行参数封装行业插件 代理组件。
其中,如前所述,执行参数包括业务流程的可控制点,业务流程中的数据 和信息以及处理业务流程的方法,参见图2,对执行参数的分解过程以及对插
件代理组件的封装过程具体为
步骤201:分解通用ERP软件中单据保存流程的可控制点,如保存前控制 点,保存后控制点;
步骤202:对应于保存流程的可控制点,封装行业插件代理对应的事件, 以便及时触发,如单据保存前事件,单据保存后事件;
步骤203:分解行业ERP插件对单据保存流程进行控制时,可能用到的数 据和信息,如单据数据包,当前操作用户等;
步骤204:对应于步骤203分解出的数据和信息,封装行业插件代理的属 性,以便行业ERP插件通过行业插件代理获取控制流程需要的数据;
步骤205:分解行业ERP插件对单据保存流程进行控制可能需要的方法;
步骤206:对应于步骤205分解出来的控制方法,封装行业插件代理的函 数,以便行业ERP插件通过这些函数对单据保存流程进行控制。
通过上述流程可以清楚地看出,当分解出流程中的可控制点、数据和方法 后,将其封装成行业ERP插件代理的组件,以便行业ERP插件代理应用。
正如前面所介绍的,执行参数包括业务流程的可控制点,业务流程中的数 据和信息以及处理业务流程的方法。其中,所述通用ERP软件中的可控制点 为可以被行业ERP插件控制的时间点,例如,当我们对业务单据进行操作时, 有保存单据这个流程,在保存流程中,可以提取出如数据保存到数据库前、数 据保存到数据库后这样两个可控制点,如果行业ERP插件需要在数据保存到 数据库前对数据进行例如校验或者归一化之类的处理,那么当数据保存前控制 点被分解出来时就可以根据实际需要处理。
从图2的过程可以看出, 一个业务流程完成分解和封装以后,可以反复应 用,而不是在流程每次执行时都需要重新进行分解和封装,只有在有新的流程 出现或者对流程的处理有变化时再重新对业务流程进行分解和封装即可,极大 地提高了行业ERP插件代理开发效率。
步骤102:行业ERP插件代理通知行业ERP插件所述流程控制事件。
步骤103:行业ERP插件在收到所述通知后,向行业插件代理组件发送处理所述流程控制事件时的控制命令。
步骤104:行业ERP插件代理接收所述控制命令并转发给通用ERP软件。 所述控制命令由实际的业务需求决定,例如;如在单据保存业务中,对于
保存前事件,可以是校验单据关键字段数据是否合法,发现不合法的数据后, 要求终止保存流程;或者根据单据上某一个字段的内容,填写其他字段内容等。 根据行业的不同,控制命令会有不同,从而体现出行业的个性化特点。
步骤105:通用ERP软件根据所述控制命令对相应的流程进行处理。 通过本实施例所提供的方法,实现了通过行业插件代理实现行业ERP插
件对通用ERP软件的控制,快速完成行业ERP软件的个性化需求。
从本发明实施例的实现过程可知,利用本发明实施例所提供的方法,行业 ERP软件的开发仅需要开发行业ERP插件,而对行业ERP插件的开发又仅需 要针对行业ERP插件代理进行,通过行业ERP插件代理实现个性化的需求, 只要掌握了行业代理插件的函数、属性、事件,就能对通用ERP软件进行充 分的控制,行业ERP软件开发人员学习的成本非常小,ERP的基础功能由通 用ERP软件提供,开发成本小。
此外,行业ERP插件是架构在通用ERP软件之上,仅仅对关键流程进行 个性化控制处理,与通用ERP软件分别开发和部署的;通用ERP软件升级后, 架构在通用ERP软件之上的行业ERP插件自动具有了通用ERP软件的最新功 能,而且,其关键流程个性化控制处理由于包含在行业ERP插件中,和通用 ERP软件组件是分开部署的,不会因为通用ERP软件的升级而被覆盖。总而 言之,通用ERP软件的基础功能和行业ERP插件是完全分开的,通用ERP软 件升级后,行业ERP软件基础功能自动会升级,同时还保留了其个性化控制 功能,实现了行业ERP软件的平滑升级。
实施例二,为使本发明实施例所提供的行业ERP插件开发的方法更加清 楚,参见图2,以单据保存为例对本发明实施例所提供的方法进行详细描述, 具体包括
步骤301:通用ERP软件单据保存流程开始,通知行业插件代理。 步骤302:触发行业插件代理的单据保存前事件,通知行业ERP插件。
步骤303:行业ERP插件捕捉到行业插件代理的单据保存前事件。
其中,所述捕捉到行业插件代理的单据保存前事件即为接收到所述行业插
件代理的单据保存前事件。
步骤304:行业ERP插件通过行业插件代理,向通用ERP软件发送控制
命令,要求对流程进行控制或者完成指定操作。
所述控制命令由实际的业务需求决定,例如;如校验单据关键字段数据是
否合法,发现不合法的数据后,要求终止保存流程;或者根据单据上某一个字
段的内容,填写其他字段内容等。根据行业的不同,控制命令会有不同,从而
体现出行业的个性化特点。
步骤305:行业插件代理接收到行业ERP插件的控制命令,向通用ERP
软件进行传递。
步骤306:通用ERP软件接收到行业ERP插件的控制命令,对流程进行 控制。
例如,如果控制命令为要求填写某一个字段内容的控制命令,则按照插 件要求对字段内容进行修改。
步骤307:通用ERP软件判断行业ERP插件的控制命令中,是否有终止 流程的命令,如果有,终止流程。
步骤308:通用ERP软件继续保存流程,进行保存基本处理,把数据保存 到数据库。
步骤309:通用ERP软件通知行业插件代理,数据保存完毕。 步骤310:触发行业插件代理的单据保存后事件,通知行业ERP插件。 步骤311:行业ERP插件捕捉单据保存后事件。 其中,捕捉单据保存后事件即为接收到所述单据保存后事件。 步骤312:行业ERP插件进行保存后处理,并向通用ERP软件发送控制 命令。例如调用行业插件代理的生成凭证函数,要求把单据自动生成凭证; 步骤313:行业插件代理接收到行业ERP插件的控制命令,向通用ERP
软件进行传递
步骤314:通用ERP软件接收到行业ERP插件的控制命令,对流程进行 控制。例如根据行业ERP插件生成凭证的控制命令,把单据生成凭证。
通过本发明实施例可知,当通用ERP在执行一个业务流程时,如单据保 存流程,行业插件代理根据可控制点向行业ERP插件通知流程控制事件,如 单据保存前事件,当行业ERP插件获得流程控制事件后,将对该控制事件的 控制命令发送给行业插件代理,行业插件代理将控制命令转发给通用ERP软 件,通用ERP软件按照控制命令对当前的流程进行处理,很显然,不同的行 业对流程中的不同的控制点会有不同的控制命令,而本发明实施例所提供的方 法一行业插件代理为桥梁,实现不同行业的个性化需求。
实施例三,与本发明实施例所提供的方法相对应,本发明实施例还提供用 于实现行业ERP软件开发的行业插件代理,包括
第一接收单元401 ,用于接收通用ERP软件在执行到预设的执行参数中的 可控制点时发送的事件触发通知,触发行业ERP插件代理组件的流程控制事 件;
通知单元402,用于将流程控制事件通知给行业ERP插件; 第二接收单元403,用于接收行业ERP插件处理流程控制事件时发出的控 制命令;
发送单元404,用于将接收单元收到的控制命令发送给通用ERP软件。 图4所述的装置的工作流程为
在通用ERP软件业务流程执行过程中,第一接收单元401接收通用ERP 软件在执行到预设的执行参数中的可控制点时发送的事件触发通知,触发行业 ERP插件代理组件的流程控制事件;通知单元402将流程控制事件通知给行业 ERP插件;第二接收单元403接收行业ERP插件处理流程控制事件时发出的 控制命令;发送单元404将第二接收单元收到的控制命令发送给通用ERP软 件。
优选地,图4所述的装置还包括
封装单元,用于根据通过分解通用ERP软件业务流程所获得执行参数封
装行业插件代理组件。
其中,所述执行参数包括
业务流程的可控制点,业务流程中的数据和信息以及处理业务流程的方法。
在本发明实施例中,所述封装单元具体包括
第一封装模块,用于根据业务流程的可控制点封装行业插件代理的事件; 第二封装模块,用于根据所述业务流程中的数据封装行业插件代理的属
性;
第三封装模块,用于根据所述业务流程中的方法封装行业插件代理的函
数。实施例四,本发明实施例还提供一种用于实现行业ERP插件开发的系统, 参见图5,包括
通用ERP软件,用于实现基本业务流程,在执行到预设执行参数中的可 控制点时,向行业ERP插件代理发送事件触发通知,触发所述行业ERP插件 代理组件的流程控制事件;接收来自行业ERP插件代理的控制命令,并按照 控制命令对流程进行处理;
行业ERP插件代理,用于接收通用ERP发送的事件触发通知,并将由所 述事件触发通知所触发的流程控制事件通知行业ERP插件;接收行业ERP插 件处理流程控制事件时发出的控制命令并转发给通用ERP软件;
行业ERP插件,用于将在捕捉并处理行业ERP插件代理发送的流程控制 事件时对该流程的控制命令发送给行业ERP插件代理。
优选地,所述行业ERP插件代理还用于
根据通过分解通用ERP软件业务流程所获得执行参数封装行业插件代理 组件。
本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例 如程序模块。 一般地,程序模块包括执行特定任务或实现特定抽象数据类型的 例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本 发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来 执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地 和远程计算机存储介质中。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通 技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰, 这些改进和润饰也应^L为本发明的保护范围。
权利要求
1、一种实现行业企业资源规划ERP软件开发的方法,其特征在于,包括通用ERP软件在执行到预设执行参数中的可控制点时,向行业ERP插件代理发送事件触发通知,触发所述行业ERP插件代理组件的流程控制事件;行业ERP插件代理通知行业ERP插件所述流程控制事件;行业ERP插件在收到所述通知后,向行业插件代理组件发送处理所述流程控制事件时的控制命令;行业ERP插件代理接收所述控制命令并转发给通用ERP软件;通用ERP软件根据所述控制命令对相应的流程进行处理。
2、 根据权利要求1所述的方法,其特征在于,在所述通用ERP软件在执 行到预设执行参数中的可控制点时,向行业ERP插件代理发送事件触发通知, 触发所述行业ERP插件代理组件事件之前,还包括分解通用ERP软件业务流程中的执行参数; 根据所述执行参数封装行业插件代理组件。
3、 根据权利要求2所述的方法,其特征在于,所述执行参数包括 业务流程的可控制点,业务流程中的数据和信息以及处理业务流程的方法。
4、 根据权利要求3所述的方法,其特征在于,根据所述业务流程的可控 制点,业务流程中的数据和信息以及处理业务流程的方法封装行业插件代理组 件具体为根据所述业务流程的可控制点封装行业插件代理的事件; 根据所述业务流程中的数据封装行业插件代理的属性; 根据所述业务流程中的方法封装行业插件代理的函数。
5、 一种实现行业ERP软件开发的行业插件代理,其特征在于,包括 第一接收单元,用于接收通用ERP软件在执行到预设的执行参数中的可控制点时发送的事件触发通知,触发行业ERP插件代理组件的流程控制事件; 通知单元,用于将流程控制事件通知给行业ERP插件; 第二接收单元,用于接收行业ERP插件处理流程控制事件时发出的控制命令; 发送单元,用于将第二接收单元收到的控制命令发送给通用ERP软件。
6、 根据权利要求5所述的装置,其特征在于,还包括封装单元,用于根据通过分解通用ERP软件业务流程所获得执行参数封 装行业插件代理组件。
7、 根据权利要求6所述的装置,其特征在于,所述执行参数包括 业务流程的可控制点,业务流程中的数据和信息以及处理业务流程的方法。
8、 根据权利要求7所述的装置,其特征在于,所述封装单元具体包括第一封装模块,用于根据业务流程的可控制点封装行业插件代理的事件; 第二封装模块,用于根据所述业务流程中的数据封装行业插件代理的属性;第三封装模块,用于根据所述业务流程中的方法封装行业插件代理的函数。
9、 一种实现行业ERP软件开发的系统,其特征在于,包括通用ERP软件,用于实现基本业务流程,在执行到预设执行参数中的可 控制点时,向行业ERP插件代理发送事件触发通知,触发所述行业ERP插件 代理组件的流程控制事件;接收来自行业ERP插件代理的控制命令,并按照 控制命令对流程进行处理;行业ERP插件代理,用于接收通用ERP发送的事件触发通知,并将由所 述事件触发通知所触发的流程控制事件通知行业ERP插件;接收行业ERP插 件处理流程控制事件时发出的控制命令并转发给通用ERP软件;行业ERP插件,用于将在捕捉并处理行业ERP插件代理发送的流程控制 事件时对该流程的控制命令发送给行业ERP插件代理。
10、 根据权利要求9所述的系统,其特征在于,所述行业ERP插件代理 还用于根据通过分解通用ERP软件业务流程所获得执行参数封装行业插件代理 组件。
全文摘要
本发明公开了一种实现行业ERP软件开发的方法、装置和系统,其中,所述方法为通用ERP软件在执行到预设执行参数中的可控制点时,向行业ERP插件代理发送事件触发通知,触发所述行业ERP插件代理组件的流程控制事件;行业ERP插件代理通知行业ERP插件所述流程控制事件;行业ERP插件在收到所述通知后,向行业插件代理组件发送处理所述流程控制事件时的控制命令;行业ERP插件代理接收所述控制命令并转发给通用ERP软件;通用ERP软件根据所述控制命令对相应的流程进行处理。根据本发明实施例,通过行业ERP插件代理实现行业ERP插件对通用ERP软件的控制,快速实现行业ERP软件的个性化需求。
文档编号G06F9/44GK101359289SQ200810210198
公开日2009年2月4日 申请日期2008年9月10日 优先权日2008年9月10日
发明者丁振华 申请人:金蝶软件(中国)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1