一种提供数据的方法和装置与流程

文档序号:11133563阅读:195来源:国知局
一种提供数据的方法和装置与制造工艺

本发明涉及计算机技术领域,特别涉及一种提供数据的方法和装置。



背景技术:

无论进行哪个行业的软件开发,软件系统的响应速度都是软件是否优秀的一个重要标准。用户在操作的时候总是希望第一时间就得到软件的反馈,而不愿意看到进度条一点点的变满,更不愿意看到毫无期限的处理中或软件直接处于假死状态。

现有技术中,软件系统对于数据的处理主要使用就近原则,即在使用对应的数据的时候才对其进行各种必要的验证和处理。比如仓储系统中,一定是在验收货的当时才会取得货物的信息,再一一对货物数据的各种约束验证是否匹配,才能进行下一步的操作;再比如公司ERP的审批流程,由于各种不同的审批所需要的审批节点是不一样的,所以数据的结构是:申请信息记录在一个地方,已经进行的审批流水记录在一个地方,因而,在进行审批的时候会分别从这两个地方抓取信息,最后将抓取到的完整的信息展示在审批人的审批界面上。

现有的模式主要存在以下几个缺点:

1)失败几率高,同时要调用很多信息抓紧的动作,所以不管哪个动作失败都会导致数据无法完整展示或者验证。

2)用户等待时间较长,因为要实时调取所有信息,然后在数据上体现出来,所以需要处理的动作比较多。

3)不能预知数据的走向,因为数据是实时判断的,所以在用 户未进行操作之前数据都还是未知状态,无法根据数据的走向对已知数据进行提前梳理和对问题数据的修复。



技术实现要素:

有鉴于此,本发明提供一种提供数据的方法和装置,能够根据业务需求提前对数据进行前期融合处理,简化软件系统实时操作工作量,降低失败的几率和用户的等待时间,从而提高了软件系统的反馈效率;同时对数据的提前处理可以及时发现问题,并使得数据处理的主动推送成为可能。

为实现上述目的,根据本发明的一个方面,提供了一种提供数据的方法。

本发明的提供数据的方法包括:保存各业务节点的业务规则以及业务节点之间的关联规则;所述关联规则用于描述业务节点的执行顺序;根据接收到的业务请求确定该业务请求所关联的多个业务节点,然后根据所述多个业务节点的业务规则获取所述多个业务节点的数据,再将这些数据按照所述多个业务节点之间的关联规则构建数据树,以及将该数据树的标识返回给业务请求方;接收所述数据树的标识,获取所述业务请求方的当前执行节点的节点标识,并判断该节点标识是否与所述数据树的当前根节点的节点标识一致,如果是,则将所述数据树当前根节点的数据提供给业务请求方的当前执行节点,然后删除当前根节点的数据;否则,遍历所述数据树,根据节点标识重新定位该当前执行的节点;若定位成功,则将定位到的标识所对应的数据提供给该当前执行的节点;若定位失败,则查询数据库和信息接口,然后输出该业务节点的数据并删除所述数据树。

可选地,查询数据库和信息接口,然后输出该业务节点的数据并删除所述数据树的步骤之后包括:以该业务节点为起点确定 该业务请求所关联的多个业务节点,然后根据所述多个业务节点的业务规则获取所述多个业务节点的数据,再将这些数据按照所述多个业务节点之间的关联规则重新构建数据树,且该重新构建数据树的标识与所接收的数据树的标识一致。

可选地,所述将该标识所对应的数据树的当前根节点的数据提供给所述业务请求方的步骤之后包括:检查数据树的下一业务节点的数据的完整性。

根据本发明的另一方面,提供了一种提供数据的装置。

本发明的提供数据的装置包括:保存模块,用于保存各业务节点的业务规则以及业务节点之间的关联规则;所述关联规则用于描述业务节点的执行顺序;构建模块,用于根据接收到的业务请求确定该业务请求所关联的多个业务节点,然后根据所述多个业务节点的业务规则获取所述多个业务节点的数据,再将这些数据按照所述多个业务节点之间的关联规则构建数据树,以及将该数据树的标识返回给业务请求方;数据提供模块,用于接收所述数据树的标识,获取所述业务请求方的当前执行节点的节点标识,并判断该节点标识是否与所述数据树的当前根节点的节点标识一致,如果是,则将所述数据树当前根节点的数据提供给业务请求方的当前执行节点,然后删除当前根节点的数据;否则,遍历所述数据树,根据节点标识重新定位该当前执行的节点;若定位成功,则将定位到的标识所对应的数据提供给该当前执行的节点;若定位失败,则查询数据库和信息接口,然后输出该业务节点的数据并删除所述数据树。

可选地,还包括重构模块,用于以该业务节点为起点确定该业务请求所关联的多个业务节点,然后根据所述多个业务节点的业务规则获取所述多个业务节点的数据,再将这些数据按照所述 多个业务节点之间的关联规则重新构建数据树,且该重新构建数据树的标识与所接收的数据树的标识一致。

可选地,还包括检查模块,用于检查数据树的下一业务节点的数据的完整性。

根据本发明的技术方案,由于根据业务需求提前对数据进行前期融合处理,因而在软件系统运行的过程中,能够简化软件系统实时操作工作量,降低失败的几率和用户的等待时间,从而提高了软件系统的反馈效率;同时对数据的提前处理可以及时发现问题,并使得数据处理的主动推送成为可能。

附图说明

附图用于更好地理解本发明,不构成对本发明的不当限定。其中:

图1是根据本发明实施例的一种提供数据的装置的示意图;

图2是根据本发明实施例的一种提供数据的方法的示意图。

具体实施方式

以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

图1是根据本发明实施例的一种提供数据的装置的示意图。如图1所示,本发明实施例的提供数据的装置10主要包括保存模块11、构建模块12、以及数据提供模块13。保存模块11用于保存各业务节点的业务规则以及业务节点之间的关联规则;所述关 联规则用于描述业务节点的执行顺序;构建模块12用于根据接收到的业务请求确定该业务请求所关联的多个业务节点,然后根据所述多个业务节点的业务规则获取所述多个业务节点的数据,再将这些数据按照所述多个业务节点之间的关联规则构建数据树,以及将该数据树的标识返回给业务请求方;数据提供模块13用于接收所述数据树的标识,获取所述业务请求方的当前执行节点的节点标识,并判断该节点标识是否与所述数据树的当前根节点的节点标识一致,如果是,则将所述数据树当前根节点的数据提供给业务请求方的当前执行节点,然后删除当前根节点的数据;否则,遍历所述数据树,根据节点标识重新定位该当前执行的节点;若定位成功,则将定位到的标识所对应的数据提供给该当前执行的节点;若定位失败,则查询数据库和信息接口,然后输出该业务节点的数据并删除所述数据树。

本发明实施例的提供数据的装置10还可包括重构模块(图中未示出),用于以该业务节点为起点确定该业务请求所关联的多个业务节点,然后根据所述多个业务节点的业务规则获取所述多个业务节点的数据,再将这些数据按照所述多个业务节点之间的关联规则重新构建数据树,且该重新构建数据树的标识与所接收的数据树的标识一致。

本发明实施例的提供数据的装置10还可包括还包括检查模块(图中未示出),用于检查数据树的下一业务节点的数据的完整性。

图2是根据本发明实施例的一种提供数据的方法的示意图。如图2所示,该方法的执行主体为图1中的提供数据的装置,主要包括如下的步骤S20至S31。

步骤S20:保存各业务节点的业务规则以及业务节点之间的关联规则;

步骤S21:接收业务请求方通过业务系统发送的业务请求,并根据接收到的业务请求确定该业务请求所关联的多个业务节点;

步骤S22:根据所述多个业务节点的业务规则获取所述多个业务节点的数据;

步骤S23:步骤S22中获取的数据按照所述多个业务节点之间的关联规则构建数据树;

步骤S24:将步骤S23中构建的数据树的标识返回给业务请求方;

步骤S25:接收到业务请求方通过业务系统发送的key值,并根据key值确定对应的数据树;

步骤S26:获取业务请求方当前执行的业务节点的节点标识;

步骤S27:判断当前执行的业务节点的节点标识与数据树当前根节点的节点标识是否一致,如果是,则执行步骤S28;否则,执行步骤S29;

步骤S28:将数据树当前根节点的数据提供给当前执行的业务节点,并删除当前根节点的数据,返回步骤S25;

步骤S29:遍历所述数据树,重新定位与当前执行的业务节点标识相同的节点,若定位成功,则执行步骤S30;否则,执行步骤S31;

步骤S30:将定位到的节点的数据提供给当前执行的业务节点,返回步骤S25;

步骤S31:查询数据库获取数据,并以该业务节点为起点重新构建数据树,返回步骤S25。

下面以仓储系统为例,以仓储系统为例,仓储系统启动以后,业务请求方通过业务系统发出商品入库请求,当提供数据的装置10接收到入库请求时,根据商品入库请求确定与入库请求关联的业务节点包括:入库节点、验收节点、以及上架节点,然后根据每个节点的业务规则从数据库或信息接口中获取每个业务节点的数据,即分别根据入库节点、验收节点、以及上架节点的节点规 则获取这三个业务节点的已知数据,并将这些数据按照这三个业务节点的执行顺序排列从而构建得到对应于商品入库请求的数据树,并生成该数据树的标识,并将生成的数据树的标识(即唯一对应于该数据树的key)返回给业务请求方。

仓储系统包括多个业务节点,当仓储系统按顺序执行业务节点时,即当仓储系统执行入库节点时,将步骤S21中返回的key值发送给提供数据的装置,提供数据的装置根据key值确定对应的数据树,同时提供数据的装置获取入库节点的节点标识,并判断入库节点的节点标识是否与数据树根节点的节点标识一致,如果标识一致,则将数据树的当前根节点的数据提供给入库节点,然后删除掉当前根节点的数据;然后依次执行验收节点和上架节点;当仓储系统执行到验收节点时,业务请求方通过业务系统将步骤S21返回的key值发送给提供数据的装置,然后提供数据的装置获取验收节点的节点标识,如果验收节点的节点标识和数据树根节点的节点标识不同,则提供数据的装置根据获取的节点标识重新定位数据树中与验收节点的节点标识相同的节点,如果定位成功,则将与验收节点的节点标识相同的节点的数据提供给业务系统当前执行的节点(即,验收节点),如果遍历数据树都没有定位到与验收节点标识相同的节点,则查询数据库和信息接口,然后输出该业务节点的数据并删除所述数据树,然后以该业务节点为起点确定该业务请求所关联的多个业务节点,再根据所述多个业务节点的业务规则获取所述多个业务节点的数据,最后将这些数据按照所述多个业务节点之间的关联规则重新构建数据树,且该重新构建数据树的标识与所接收的数据树的标识一致。

上述实施例的技术方案中,当提供数据的装置10将数据树当前根节点的数据提供给当前执行的节点后,立刻检查数据树的下一业务节点的数据是否完整,如果检查出数据不完整,再从数据库中或者通过信息接口获取所缺少的数据,从而不断的完善下一 业务节点的数据,并在一定程度上提高了系统的响应速度。

根据本发明实施例的技术方案,由于根据业务需求提前对数据进行前期融合处理,因而在软件系统运行的过程中,能够简化软件系统实时操作工作量,降低失败的几率和用户的等待时间,从而提高了软件系统的反馈效率;同时对数据的提前处理可以及时发现问题,并使得数据处理的主动推送成为可能。

上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

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