实现跨系统多单据算法的对接方法、系统及请求异构系统与流程

文档序号:12463686阅读:267来源:国知局
实现跨系统多单据算法的对接方法、系统及请求异构系统与流程

本发明涉及异构系统对接技术领域,更具体地说,涉及一种实现跨系统多单据算法的对接方法、系统及请求异构系统。



背景技术:

目前异构系统对接主要使用临时表的方式实现,即在其中的一个异构系统中构建临时表,从系统中查询并暂存数据,进行计算,将计算结果传送给另一个异构系统,临时表中计算的数据不保存。但是,现有的这种异构系统对接的方案为单字段变量值时,临时表中需抽取与变量值计算有关的所有数据,同时需要在临时表中处理每个变量值的计算方法,临时表计算逻辑繁杂,数据正确性不可靠。并且由于临时表计算过程中产生的数值没有存储,每次计算都需要从异构系统的单据中重新取数据进行重复计算,在处理过程中需要对单据的状态、操作进行监控,增加了单据并发控制的难度,实际业务中也因此导致数据计算存在误差;其次,临时表需要将相关字段的值直接暴露给异构系统,系统对接安全性考虑不足。

因此,如何解决上述问题,增加异构系统对接的的安全性,提高计算数据的正确性,是本领域技术人员需要解决的问题。



技术实现要素:

本发明的目的在于提供一种实现跨系统多单据算法的对接方法、系统及请求异构系统,以实现增加异构系统对接的的安全性,提高计算数据的正确性。

为实现上述目的,本发明实施例提供了如下技术方案:

一种实现跨系统多单据算法的对接方法,包括:

请求异构系统接收数据运算请求,向与所述数据运算请求对应的响应异构系统发送中间值获取请求;

所述请求异构系统接收所述响应异构系统根据自身系统的子算法计算的中间值,并利用所述中间值及自身系统的子算法进行计算,将计算结果进行保存;其中,异构系统的子算法为:将原多单据运算算法按照预定规则拆分成的与不同异构系统对应的子算法。

其中,所述响应异构系统根据自身系统的子算法计算中间值之后,还包括:

所述响应异构系统保存所述中间值。

其中,所述中间值获取请求中携带与运算字段信息对应的参数信息。

其中,所述请求异构系统接收数据运算请求,向与所述数据运算请求对应的响应异构系统发送中间值获取请求,所述请求异构系统接收所述响应异构系统根据自身系统的子算法计算的中间值,包括:

所述请求异构系统接收数据运算请求,根据所述数据运算请求确定第一变量,并向对应的响应异构系统发送第一变量值获取指令;

所述响应异构系统接收到所述第一变量值获取指令后,根据与所述第一变量对应的子算法确定第二变量,根据与第二变量对应的子算法计算第二变量值;

所述响应异构系统利用所述第二变量值与所述第一变量对应的子算法计算第一变量值,将所述第一变量值作为中间值发送至所述请求异构系统。

一种请求异构系统,包括:

接收模块,用于接收数据运算请求;

发送模块,用于向与所述数据运算请求对应的响应异构系统发送中间值获取请求;

中间值接收模块,用于接收所述响应异构系统根据自身系统的子算法计算的中间值;

计算模块,用于利用所述中间值及自身系统的子算法进行计算,得到计算结果;

第一保存模块,用于将计算结果进行保存;其中,异构系统的子算法为:将原多单据运算算法按照预定规则拆分成的与不同异构系统对应的子算法。

其中,所述中间值获取请求中携带与运算字段信息对应的参数信息。

一种实现跨系统多单据算法的对接系统,包括上述的请求异构系统,以及响应异构系统;

所述响应异构系统,用于接收所述请求异构系统发送的中间值获取请求,利用所述中间值获取请求及自身系统的子算法计算中间值,并将所述中间值发送至所述请求异构系统。

其中,所述响应异构系统,还包括:

第二保存模块,用于保存所述中间值。

其中,所述发送模块,用于根据所述数据运算请求确定第一变量,并向对应的响应异构系统发送第一变量值获取指令;

所述响应异构系统,包括:

第二变量值计算模块,用于接收到第一变量值获取指令后,根据与所述第一变量对应的子算法确定第二变量,根据与第二变量对应的子算法确定第二变量值;

第一变量值确定模块,用于利用所述第二变量值与所述第一变量对应的子算法计算第一变量值,将所述第一变量值作为中间值发送至所述请求异构系统。

通过以上方案可知,本发明实施例提供的一种实现跨系统多单据算法的对接方法,包括:请求异构系统接收数据运算请求,向与所述数据运算请求对应的响应异构系统发送中间值获取请求;所述请求异构系统接收所述响应异构系统根据自身系统的子算法计算的中间值,并利用所述中间值及自身系统的子算法进行计算,将计算结果进行保存;其中,异构系统的子算法为:将原多单据运算算法按照预定规则拆分成的与不同异构系统对应的子算法;

可见,在本方案中,通过将原多单据运算算法拆分,并分布在多个异构系统中,当需要进行运算时,可通过不同异构系统自身的子算法同时进行计算,算法处理简单,增加异构系统对接的的安全性,提高计算数据的正确性;本发明还公开了一种实现跨系统多单据算法的对接系统及请求异构系统,同样能实现上述技术效果。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例公开的一种实现跨系统多单据算法的对接方法流程示意图;

图2为本发明实施例公开的跨系统多单据算法的对接示意图;

图3为本发明实施例公开的一种请求异构系统结构示意图;

图4为本发明实施例公开的一种实现跨系统多单据算法的对接系统结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例公开了一种实现跨系统多单据算法的对接方法、系统及请求异构系统,以实现增加异构系统对接的的安全性,提高计算数据的正确性。

参见图1,本发明实施例提供的一种实现跨系统多单据算法的对接方法,包括:

S101、请求异构系统接收数据运算请求,向与所述数据运算请求对应的响应异构系统发送中间值获取请求;

具体的,在本方案中是将原多单据算法拆分为多个子算法,分布在异构系统内,因此,请求异构系统接收到数据运算请求后,需要获取与数据运算请求对应的中间值,在本实施例中,该中间值可以用变量值来表示,参见图2,图2中的异构系统A即为接收数据运算请求的请求异构系统,当请求异构系统接收到计算预算余额的运算请求时,由于:

预算余额=预算余额(原)-预算扣减值;..................................(1)

这里的预算扣减值需要从异构系统B中获取,因此,异构系统B为响应异构系统,并向该响应异构系统发送中间值获取指令;需要说明的是,在本实施例中,预算扣减额即为本实施例中的第一变量,该预算扣减额的值,为中间值,也可以称作第一变量值,同理,本方案中的中间值获取指令也可以称为第一变量值获取指令。

S102、所述请求异构系统接收所述响应异构系统根据自身系统的子算法计算的中间值,并利用所述中间值及自身系统的子算法进行计算,将计算结果进行保存;其中,异构系统的子算法为:将原多单据运算算法按照预定规则拆分成的与不同异构系统对应的子算法。

其中,所述响应异构系统根据自身系统的子算法计算中间值之后,还包括:所述响应异构系统保存所述中间值。

其中,所述请求异构系统接收数据运算请求,向与所述数据运算请求对应的响应异构系统发送中间值获取请求,所述请求异构系统接收所述响应异构系统根据自身系统的子算法计算的中间值,包括:

所述请求异构系统接收数据运算请求,根据所述数据运算请求确定第一变量,并向对应的响应异构系统发送第一变量值获取指令;

所述响应异构系统接收到所述第一变量值获取指令后,根据与所述第一变量对应的子算法确定第二变量,根据与第二变量对应的子算法计算第二变量值;

所述响应异构系统利用所述第二变量值与所述第一变量对应的子算法计算第一变量值,将所述第一变量值作为中间值发送至所述请求异构系统。

具体的,响应异构系统(即异构系统B)接收到第一变量值获取指令后,首先确定与第一变量对应的子算法,以价税合计为例,在本实施例中与变量A对应的子算法为:

变量A=API.B1.预算扣减值设置.字段-变量B,或者,...................(2)

变量A=变量B-API.B1.预算扣减值设置.字段;.............................(3)

可见,与第一变量对应的第二变量为变量B,相应的,与第二变量对应的子算法为:

变量B=API.B2.预算扣减值设置.字段+API.B3.预算扣减值设置.字

段...........................................................................................................................(4)

也就是说,通过公式(4)可计算出变量B的值,即第二变量值,通过第二变量值及公式(2)或者公式(3)可计算出变量A的值,即第一变量值,该第一变量值也就是中间值,通过该中间值发送至请求异构系统,该请求异构系统根据中间值及公式(1)便可计算预算余额。

具体的,现有技术中异构系统算法的对接方法,通常在异构系统之间增加临时表(临时表从异构系统中获取数据),异构系统根据算法处理要求从临时表中读取相关的数据进行计算,算出最终的结果并保存到请求系统中。这种方式,在临时表中计算逻辑繁杂,数据正确性不可靠,由于临时表计算过程中产生的数值没有存储,每次计算都需要从异构系统的单据中重新取数据进行重复计算,在处理过程中需要对单据的状态、操作进行监控,增加了单据并发控制的难度,实际业务中也因此导致数据计算存在误差;其次,临时表需要将相关字段的值直接暴露给异构系统,系统对接安全性考虑不足。

因此,在本方案中,在单据结构中预留了变量,异构系统根据拆分的算法在系统内独立运算自身的数据并保存结果,当异构系统存在数据运算请求时,请求系统直接从响应系统取中间值进行计算,并将计算结果保存在请求系统中,下次计算可从异构系统中直接复用中间值和最终结果。可见,改进后的方案将算法拆分分布在异构系统中,系统根据自身独立的算法在系统操作时进行同步计算,更好地保障了数据的正确性,避免了异构系统中临时表的数据可能与单据中的数据不一致(临时表不能监控来源数据的实时变化)。

在本实施例中,所述中间值获取请求中携带与运算字段信息对应的参数信息。

具体的,本方案将异构系统算法对接时,通过优化单据结构,增加2个变量,1个变量对接前序单据算法,1个变量对接后序单据算法;将算法分拆到具体的的单据操作中,将算法化繁为简,避免了临时表中算法的罗列以及临时表取数计算时可能涉及到的大数据量并发。同时在本实施例中,可通过在异构系统中增加参数,用以保障不同单据字段的一致性,避免在算法中对变量字段的识别与处理,简化算法逻辑,保障数据的正确性。

下面对本发明实施例提供的请求异构系统进行介绍,下文描述的请求异构系统与上文描述的多单据算法的对接方法可以相互参照。

参见图3,本发明实施例提供的一种请求异构系统100,包括:

接收模块101,用于接收数据运算请求;

发送模块102,用于向与所述数据运算请求对应的响应异构系统发送中间值获取请求;

中间值接收模块103,用于接收所述响应异构系统根据自身系统的子算法计算的中间值;其中,所述中间值获取请求中携带与运算字段信息对应的参数信息。

计算模块104,用于利用所述中间值及自身系统的子算法进行计算,得到计算结果;

第一保存模块105,用于将计算结果进行保存;其中,异构系统的子算法为:将原多单据运算算法按照预定规则拆分成的与不同异构系统对应的子算法。

下面对本发明实施例提供的多单据算法的对接系统进行介绍,下文描述的多单据算法的对接系统与上文描述的请求异构系统可以相互参照。

参见图4,本发明实施例提供的一种实现跨系统多单据算法的对接系统,包括上述实施例中的请求异构系统100,以及响应异构系统200;

所述响应异构系统200,用于接收所述请求异构系统发送的中间值获取请求,利用所述中间值获取请求及自身系统的子算法计算中间值,并将所述中间值发送至所述请求异构系统。

其中,所述响应异构系统,还包括:

第二保存模块,用于保存所述中间值。

其中,所述发送模块,用于根据所述数据运算请求确定第一变量,并向对应的响应异构系统发送第一变量值获取指令;

所述响应异构系统,包括:

第二变量值计算模块,用于接收到第一变量值获取指令后,根据与所述第一变量对应的子算法确定第二变量,根据与第二变量对应的子算法确定第二变量值;

第一变量值确定模块,用于利用所述第二变量值与所述第一变量对应的子算法计算第一变量值,将所述第一变量值作为中间值发送至所述请求异构系统。

综上可见,在本方案的有益效果包括:

1)异构系统只需设置需要对接的变量值,算法可抽象为单一处理,算法处理简单,保障数据的正确性。

2)接口对外暴露变量字段,不暴露单据本身业务字段。

3)采用变量对接,支持后序单据的扩展,即支持后序多张单据同时就同一字段进行计算。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1