引用检查系统和引用检查方法

文档序号:6372256阅读:162来源:国知局
专利名称:引用检查系统和引用检查方法
技术领域
本发明涉及计算机技术领域,具体而言,涉及一种引用检查系统和一种引用检查系方法。
背景技术
在软件开发中,特别在分模块、分层次开发中,引用其他模块的情况很多,对数据的修改,势必影响其他模块的使用。所以引用检查工作非常必要。通常的方法采用硬编码来实现,检查逻辑分散在各个模块中,针对不同的引用,需要编写不同的检测代码,增加了模块间的耦合性,不便于管理和扩展。在相关技术中,通过建立数据表,存储简单的引用信息,生成SQL语句,然后进行数据库查询,获得引用数据。这种方式有一定局限性,对于复杂的SQL语句、复杂逻辑以及一些没有采用数据库存储的系统不适用。随着规模的扩大,开发人员难以了解和控制其他模块对数据的引用,但是引用的检查是必须的,寻找一种通用的 检查方法,迫在眉睫。具体地,相关技术中的硬编码技术如图3所示,在引用方提供方法,被引用方(图中的基础数据)调用该方法进行检查。这种硬编码的方式,比较直接,但是,引用方与基础数据之间的代码融在一起,系统耦合性很高,如果引用方检查方法改变,势必影响基础数据的检查调用,而且,如果有多个引用方,需要写多份检查逻辑,基础数据模块也要做相应修改。极大限制了模块化发展。还有一种方法,通过定义简单的数据结构,然后根据属性值生成SQL语句,通过数据查询检查引用。这种方案,对于简单的数据引用还是不错的解决方案,但是对于复杂查询,或者复杂逻辑,或者存储介质并非数据库,例如文件、格式化串、对象等,这种方案的局限性就会显露出来。因此,本发明提供了一种新的引用检查技术,可以降低引用方、被引用方等之间的耦合,并且既能满足简单的引用判断,又能处理复杂的检查逻辑。

发明内容
本发明正是基于上述问题,提出了一种新的引用检查技术,可以降低引用方、被引用方等之间的耦合,并且既能满足简单的引用判断,又能处理复杂的检查逻辑。有鉴于此,本发明提出了一种引用检查系统,包括数据生成单元,用于引用方生成对应于引用关系的引用查询数据;数据存储单元,用于所述引用方将所述引用查询数据存储至所述引用检查系统预设的引用信息表中;数据获取单元,用于被引用方在进行引用检查时,获取所述引用信息表中存储的所述引用查询数据;处理单元,所述被引用方根据所述引用查询数据获得对应的引用数据。在该技术方案中,将进行引用检查的功能部分独立开来,减少了大量引用代码的编写,减轻了开发人员负担,降低了成本,而且便于对引用进行控制和管理;同时,被引用方,在对数据进行修改、删除操作时,只需调用检查服务进行检查即可,不用关心哪个模块在引用,有多少个模块引用,检查系统会自动遍历针对该类型数据的所有引用配置项,降低引用方与被引用方之间的耦合。在上述技术方案中,优选地,所述数据生成单元生成的所述引用查询数据包括配置数据、预置SQL语句或存储过程;所述处理单元用于根据所述配置数据生成并执行对应的SQL语句、执行所述预置SQL语句或执行所述存储过程,以获得所述引用数据。在上述技术方案中,优选地,所述数据生成单元生成的所述引用查询数据包括月艮务组件;所述处理单元用于根据所述引用检查系统提供的接口建立对应的服务组件,以实现查询服务,从而获得所述引用数据。在该技术方案中,大多数情况,可以通过简单配置项、预置SQL语句或存储过程来实现,如果检查逻辑很复杂,难以用查询语句、存储过程来实现,或者用户存储数据的介质为文件或者其他,这就需要通过服务的方式来实现。
在上述技术方案中,优选地,还包括逻辑设置单元,用于预设检查结果逻辑;结果展示单元,用于展示每个检查到的引用数据的检查结果和/或总的检查结果。在该技术方案中,检查结果逻辑可以由用户自定义,比如存在引用项为true,不存在为false,从而定义每个引用数据的检查结果;可以定义若所有的均为true,则总结果为true,否则总结果为false。在上述技术方案中,优选地,还包括数据展示单元,用于对所述处理单元检查到的引用数据进行展示。在该技术方案中,通过对引用数据进行展示,使得结果更为直观,便于进行进一步处理。在上述技术方案中,优选地,还包括关系获取单元,用于通过设置引用简表,以自动获取所述引用方和所述被引用方之间的引用关系。在该技术方案中,通过设置该引用简表,可以对引用关系进行自动获取。根据本发明的又一方面,还提出了一种引用检查方法,包括步骤202,引用方生成对应于引用关系的引用查询数据,并存储至预设的引用信息表中;步骤204,被引用方在进行引用检查时,获取所述引用信息表中存储的所述引用查询数据,利用所述引用查询数据进行查询操作以获得对应的引用数据。在该技术方案中,将进行引用检查的功能部分独立开来,减少了大量引用代码的编写,减轻了开发人员负担,降低了成本,而且便于对引用进行控制和管理;同时,被引用方,在对数据进行修改、删除操作时,只需调用检查服务进行检查即可,不用关心哪个模块在引用,有多少个模块引用,检查系统会自动遍历针对该类型数据的所有引用配置项,降低引用方与被引用方之间的耦合。在上述技术方案中,优选地,所述引用查询数据包括配置数据、预置SQL语句或存储过程,在所述步骤204包括所述被引用方在进行引用检查时,根据所述配置数据生成并执行对应的SQL语句、执行所述预置SQL语句或执行所述存储过程,以获得所述引用数据。在上述技术方案中,优选地,所述引用查询数据包括服务组件,则所述步骤204包括所述被引用方在进行引用检查时,根据预设的接口建立对应的服务组件,以实现对应的查询服务,从而获得所述引用数据。在该技术方案中,大多数情况,可以通过简单配置项、预置SQL语句或存储过程来实现,如果检查逻辑很复杂,难以用查询语句、存储过程来实现,或者用户存储数据的介质为文件或者其他,这就需要通过服务的方式来实现。在上述技术方案中,优选地,在实现所述查询服务时,还包括预设检查结果逻辑;展示每个检查到的引用数据的检查结果和/或总的检查结果。在该技术方案中,检查结果逻辑可以由用户自定义,比如存在引用项为true,不存在为false,从而定义每个引用数据的检查结果;可以定义若所有的均为true,则总结果为true,否则总结果为false。在上述技术方案中,优选地,还包括展示检查到的引用数据。在该技术方案中,通过对引用数据进行展示,使得结果更为直观,便于进行进一步处理。在上述技术方案中,优选地,还包括设置引用简表,以自动获取所述引用方和所述被引用方之间的引用关系。在该技术方案中,通过设置该引用简表,可以对引用关系进行自动获取。通过以上技术方案,可以降低引用方、被引用方等之间的耦合,并且既能满足简单 的引用判断,又能处理复杂的检查逻辑。


图I示出了根据本发明的实施例的引用检查系统的框图;图2示出了根据本发明的实施例的引用检查方法的流程图;图3示出了相关技术的引用检查系统的结构示意图;图4示出了根据本发明的实施例的引用检查系统的结构示意图;图5示出了根据本发明的实施例的通过服务接口实现引用检查的流程图;图6示出了根据本发明的实施例的通过预置配置项实现引用检查的流程图;图7示出了根据本发明的实施例的通过服务接口实现引用检查的具体流程图;图8示出了根据本发明的实施例的多方引用的情况下进行引用检查的原理图;图9示出了根据本发明的实施例的表决器的原理图;图10示出了根据本发明的实施例的单据结构图;图11示出了根据本发明的实施例的单据与部门之间引用关系示意图;图12示出了根据本发明的实施例的维度查询设计器的原理图。
具体实施例方式为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式
对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。图I示出了根据本发明的实施例的引用检查系统的框图。如图I所示,根据本发明的实施例的引用检查系统,包括数据生成单元101,用于引用方生成对应于引用关系的引用查询数据;数据存储单元102,用于引用方将引用查询数据存储至引用检查系统预设的引用信息表中;数据获取单元104,用于被引用方在进行引用检查时,获取引用信息表中存储的引用查询数据;处理单元106,被引用方根据引用查询数据获得对应的引用数据。在该技术方案中,将进行引用检查的功能部分独立开来,减少了大量引用代码的编写,减轻了开发人员负担,降低了成本,而且便于对引用进行控制和管理;同时,被引用方,在对数据进行修改、删除操作时,只需调用检查服务进行检查即可,不用关心哪个模块在引用,有多少个模块引用,检查系统会自动遍历针对该类型数据的所有引用配置项,降低引用方与被引用方之间的耦合。在上述技术方案中,优选地,数据生成单元101生成的引用查询数据包括配置数据、预置SQL语句或存储过程;处理单元106用于根据配置数 据生成并执行对应的SQL语句、执行预置SQL语句或执行存储过程,以获得引用数据。在上述技术方案中,优选地,数据生成单元101生成的引用查询数据包括服务组件;处理单元106用于根据引用检查系统100提供的接口建立对应的服务组件,以实现查询服务,从而获得引用数据。在该技术方案中,大多数情况,可以通过简单配置项、预置SQL语句或存储过程来实现,如果检查逻辑很复杂,难以用查询语句、存储过程来实现,或者用户存储数据的介质为文件或者其他,这就需要通过服务的方式来实现。在上述技术方案中,优选地,还包括逻辑设置单元108,用于预设检查结果逻辑;结果展示单元110,用于展示每个检查到的引用数据的检查结果和/或总的检查结果。在该技术方案中,检查结果逻辑可以由用户自定义,比如存在引用项为true,不存在为false,从而定义每个引用数据的检查结果;可以定义若所有的均为true,则总结果为true,否则总结果为false。在上述技术方案中,优选地,还包括数据展示单元112,用于对处理单元106检查到的引用数据进行展示。在该技术方案中,通过对引用数据进行展示,使得结果更为直观,便于进行进一步处理。在上述技术方案中,优选地,还包括关系获取单元114,用于通过设置引用简表,以自动获取引用方和被引用方之间的引用关系。在该技术方案中,通过设置该引用简表,可以对引用关系进行自动获取。图2示出了根据本发明的实施例的引用检查方法的流程图。如图2所示,根据本发明的实施例的引用检查方法,包括步骤202,引用方生成对应于引用关系的引用查询数据,并存储至预设的引用信息表中;步骤204,被引用方在进行引用检查时,获取引用信息表中存储的引用查询数据,利用引用查询数据进行查询操作以获得对应的引用数据。在该技术方案中,将进行引用检查的功能部分独立开来,减少了大量引用代码的编写,减轻了开发人员负担,降低了成本,而且便于对引用进行控制和管理;同时,被引用方,在对数据进行修改、删除操作时,只需调用检查服务进行检查即可,不用关心哪个模块在引用,有多少个模块引用,检查系统会自动遍历针对该类型数据的所有引用配置项,降低引用方与被引用方之间的耦合。在上述技术方案中,优选地,引用查询数据包括配置数据、预置SQL语句或存储过程,在步骤204包括被引用方在进行引用检查时,根据配置数据生成并执行对应的SQL语句、执行预置SQL语句或执行存储过程,以获得引用数据。在上述技术方案中,优选地,引用查询数据包括服务组件,则步骤204包括被引用方在进行引用检查时,根据预设的接口建立对应的服务组件,以实现对应的查询服务,从而获得引用数据。在该技术方案中,大多数情况,可以通过简单配置项、预置SQL语句或存储过程来实现,如果检查逻辑很 复杂,难以用查询语句、存储过程来实现,或者用户存储数据的介质为文件或者其他,这就需要通过服务的方式来实现。在上述技术方案中,优选地,在实现查询服务时,还包括预设检查结果逻辑;展示每个检查到的引用数据的检查结果和/或总的检查结果。在该技术方案中,检查结果逻辑可以由用户自定义,比如存在引用项为true,不存在为false,从而定义每个引用数据的检查结果;可以定义若所有的均为true,则总结果为true,否则总结果为false。在上述技术方案中,优选地,还包括展示检查到的引用数据。在该技术方案中,通过对引用数据进行展示,使得结果更为直观,便于进行进一步处理。在上述技术方案中,优选地,还包括设置引用简表,以自动获取引用方和被引用方之间的引用关系。在该技术方案中,通过设置该引用简表,可以对引用关系进行自动获取。图4示出了根据本发明的实施例的引用检查系统的结构示意图。如图4所示,在根据本发明的实施例的引用检查系统中,将检查逻辑从系统中分离出来,成为独立的模块。可以通过SQL语句、存储过程和服务来进行检查。对于引用方,如果需要加约束限制,只需预置数据到检查系统,对于比较复杂的引用检查,需要首先实现检查服务提供的服务接口。对于被引用方,在进行数据修改或删除时,只需调用该系统的检查服务即可。整个检查系统,独立于各个模块之外。大多数情况,可以通过简单配置项、预置SQL语句或存储过程来实现,从而减少了大量引用代码的编写,减轻了开发人员负担,降低了成本,而且便于对引用进行控制和管理。对于比较复杂的引用检查,还提供了服务接口,具有很强的适用性和扩展性。被引用方,在对数据进行修改、删除操作时,只需调用检查服务进行检查即可,不用关心哪个模块在引用,有多少个模块引用,检查系统会自动遍历针对该类型数据的所有引用配置项。在本发明的技术方案中,分为多个步骤(一)首先需要对系统的数据结构进行设计,具体地,下面对该引用检查系统的数据结构的一些结构和属性进行介绍。I)引用简表,如表I所示,可以自动根据外键抽取引用关系,以根据此表进行。此表预置的表信息包括哪些表需要检查,哪些表需要排除,排除的表不记入引用检查。当然,引用简表在该系统中并不是必要的。
权利要求
1.一种引用检查系统,其特征在于,包括 数据生成单元,用于引用方生成对应于引用关系的引用查询数据; 数据存储单元,用于所述引用方将所述引用查询数据存储至所述引用检查系统预设的引用信息表中; 数据获取单元,用于被引用方在进行引用检查时,获取所述引用信息表中存储的所述引用查询数据; 处理单元,所述被引用方根据所述引用查询数据获得对应的引用数据。
2.根据权利要求I所述的引用检查系统,其特征在于, 所述数据生成单元生成的所述引用查询数据包括配置数据、预置SQL语句或存储过程; 所述处理单元用于根据所述配置数据生成并执行对应的SQL语句、执行所述预置SQL语句或执行所述存储过程,以获得所述引用数据。
3.根据权利要求I所述的引用检查系统,其特征在于,所述数据生成单元生成的所述引用查询数据包括服务组件; 所述处理单元用于根据所述引用检查系统提供的接口建立对应的服务组件,以实现查询服务,从而获得所述引用数据。
4.根据权利要求I至3中任一项所述的引用检查系统,其特征在于,还包括 逻辑设置单元,用于预设检查结果逻辑; 结果展示单元,用于展示每个检查到的引用数据的检查结果和/或总的检查结果。
5.根据权利要求I至3中任一项所述的引用检查系统,其特征在于,还包括 关系获取单元,用于通过设置引用简表,以自动获取所述引用方和所述被引用方之间的引用关系。
6.—种引用检查方法,其特征在于,包括 步骤202,引用方生成对应于引用关系的引用查询数据,并存储至预设的引用信息表中; 步骤204,被引用方在进行引用检查时,获取所述引用信息表中存储的所述引用查询数据,利用所述引用查询数据进行查询操作以获得对应的引用数据。
7.根据权利要求6所述的引用检查方法,其特征在于, 所述引用查询数据包括配置数据、预置SQL语句或存储过程,在所述步骤204包括所述被引用方在进行引用检查时,根据所述配置数据生成并执行对应的SQL语句、执行所述预置SQL语句或执行所述存储过程,以获得所述引用数据。
8.根据权利要求6所述的引用检查方法,其特征在于,所述引用查询数据包括服务组件,则所述步骤204包括 所述被引用方在进行引用检查时,根据预设的接口建立对应的服务组件,以实现对应的查询服务,从而获得所述引用数据。
9.根据权利要求6至8中任一项所述的引用检查方法,其特征在于,在实现所述查询服务时,还包括 预设检查结果逻辑; 展示每个检查到的引用数据的检查结果和/或总的检查结果。
10.根据权利要求6至8中任一项所述的引用检查方法,其特征在于,还包括设置引用简表,以自动获取所述引用方和所述被引用方之间的引用关系。
全文摘要
本发明提供了一种引用检查系统,包括数据生成单元,用于引用方生成对应于引用关系的引用查询数据;数据存储单元,用于所述引用方将所述引用查询数据存储至所述引用检查系统预设的引用信息表中;数据获取单元,用于被引用方在进行引用检查时,获取所述引用信息表中存储的所述引用查询数据;处理单元,所述被引用方根据所述引用查询数据获得对应的引用数据。相应地,本发明还提出了一种引用检查系方法。通过本发明的技术方案,可以降低引用方、被引用方等之间的耦合,并且既能满足简单的引用判断,又能处理复杂的检查逻辑。
文档编号G06F11/36GK102779092SQ20121021838
公开日2012年11月14日 申请日期2012年6月27日 优先权日2012年6月27日
发明者颜刊 申请人:用友软件股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1