业务流程处理方法及装置的制造方法
【技术领域】
[0001]本发明涉及数据处理技术领域,尤其涉及一种互联网通信服务中的业务流程处理方法及装置。
【背景技术】
[0002]工作流泛指在业务当中的部分或者整体在互联网通信服务领域下的自动化,是对工作流程及各种操作步骤之间业务规则的抽象。目前,在互联网通信服务领域,有专门的工作流管理联盟(WfMC),该组织创建并完善了工作流的相关标准,推出了工作流XML和XML过程定义语言(Xpdl),通过使用这两种语言来存储和交换过程模型。但是,在实际的业务过程中,并不需要如此繁琐的标准和语言,通常采用工作流引擎来实现相应的业务流程。工作流引擎主要解决的问题是为了实现某个业务目标,利用计算机的协议规则传递任务、信息或者服务。
[0003]目前,工作流引擎主要依据是判断当前的工作状态生成相应的动作,不可定制且不易修改,且实际的工作流走向都是按指定的顺序流转。然而,在实际业务过程中,需要进行业务的回退,常用的方式只能依据当前的状态生成相应的动作做跳转。因而,现有的业务流程处理方法无法满足不同场景需求。
【发明内容】
[0004]本发明的主要目的在于提出一种灵活性强的业务流程处理方法及装置,以满足不同场景需求。
[0005]为实现上述目的,本发明提供的一种业务流程处理方法,所述业务流程包括起始状态、中间状态和结束状态,所述方法包括:
[0006]在业务流程的当前中间状态的变迀动作结束后,接收外部触发的回退指令;
[0007]根据所述回退指令,读取预先配置的变迀令牌表,所述变迀令牌表记录有按照时间操作顺序排列的操作状态;
[0008]根据当前中间状态从所述变迀令牌表中读取上一次变迀动作及上一状态;
[0009]撤销当前中间状态的变迀动作,并激活上一次变迀动作及上一状态。
[0010]优选地,所述在业务流程的当前中间状态的变迀动作结束后,接收外部触发的回退指令的步骤之前还包括:
[0011]获取业务流程的起始状态;
[0012]读取预先配置的业务流程在起始状态之后至结束状态的变迀动作;
[0013]根据所述变迀动作的执行顺序,从所述起始状态依次执行所述业务流程中的各变迀动作。
[0014]优选地,所述获取业务流程的起始状态的步骤之前还包括:
[0015]配置所述起始状态之后至结束状态的变迀动作,保存在本地数据库或者生成配置文件,以供从所述本地数据库或配置文件中调用对应的变迀动作。
[0016]优选地,所述方法还包括:
[0017]在从所述起始状态依次执行所述业务流程中的各变迀动作的过程中,受外部激活指令而触发执行相应的变迀动作;所述激活指令的触发方式至少包括:外部消息触发、人工触发和定时触发。
[0018]优选地,所述业务流程的变迀动作的走向为并行或串行;
[0019]优选地,所述业务流程基于Petri网模型生成工作流引擎。
[0020]本发明实施例还提出一种业务流程处理装置,所述业务流程包括起始状态、中间状态和结束状态,所述装置包括:
[0021]接收模块,用于在业务流程的当前中间状态的变迀动作结束后,接收外部触发的回退指令;
[0022]读取模块,用于根据所述回退指令,读取预先配置的变迀令牌表,所述变迀令牌表记录有按照时间操作顺序排列的操作状态;根据当前中间状态从所述变迀令牌表中读取上一次变迀动作及上一状态;
[0023]处理模块,用于撤销当前中间状态的变迀动作,并激活上一次变迀动作及上一状
??τ O
[0024]优选地,所述装置还包括:
[0025]启动模块,用于获取业务流程的起始状态;读取预先配置的业务流程在起始状态之后至结束状态的变迀动作;根据所述变迀动作的执行顺序,从所述起始状态依次执行所述业务流程中的各变迀动作。
[0026]优选地,该装置还包括:
[0027]配置模块,用于配置所述起始状态之后至结束状态的变迀动作,保存在本地数据库或者生成配置文件,以供从所述本地数据库或配置文件中调用对应的变迀动作。
[0028]优选地,所述启动模块,在从所述起始状态依次执行所述业务流程中的各变迀动作的过程中,受外部激活指令而触发执行相应的变迀动作;所述激活指令的触发方式至少包括:外部消息触发、人工触发和定时触发。
[0029]本发明提出的一种业务流程处理方法及装置,在业务流程的当前中间状态的变迀动作结束后,接收外部触发的回退指令;根据回退指令,读取预先配置的变迀令牌表,变迀令牌表记录有按照时间操作顺序排列的操作状态;根据当前中间状态从所述变迀令牌表中读取上一次变迀动作及上一状态;撤销当前中间状态的变迀动作,并激活上一次变迀动作及上一状态,由此根据业务实际场景实现了业务流程的回退操作,提高业务流程处理灵活性,满足不同场景需求;此外,业务流程的走向、动作可灵活配置或者定制,并生成相应数据允许以数据库或者文件形式进行存储,通过依赖不同场景需求,可提供不同的流程激活方式,进一步满足不同场景需求。
【附图说明】
[0030]图1是本发明实施例涉及的服务器的硬件结构示意图;
[0031]图2是本发明业务流程处理方法第一实施例的流程示意图;
[0032]图3是本发明业务流程处理方法第二实施例的流程示意图;
[0033]图4是本发明业务流程处理方法第三实施例的流程示意图;
[0034]图5是本发明实施例中应用的订单业务流程示意图;
[0035]图6是本发明业务流程处理装置第一实施例的功能模块示意图;
[0036]图7是本发明业务流程处理装置第二实施例的功能模块示意图;
[0037]图8是本发明业务流程处理装置第三实施例的功能模块示意图。
[0038]本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
【具体实施方式】
[0039]应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0040]本发明实施例方案的主要思路是:基于Petri网模型生成业务流程的工作流引擎,基于该工作流引擎实现业务流程处理,根据业务实际场景实现业务流程的回退操作,以提高业务流程处理灵活性,满足不同场景需求。此外,业务流程的走向、动作可灵活配置或者定制,并生成相应数据允许以数据库或者文件形式进行存储,通过依赖不同场景需求,可提供不同的流程激活方式。
[0041]本发明实施例方案运行环境可以为互联网通信服务领域下,实现业务流程的服务器等PC终端,当然也可以为手机、智能电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD (平板电脑)、PMP (便携式多媒体播放器)、导航装置等移动终端。本实施例以服务器进行举例。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身并没有特定的意义。因此,"模块"与"部件"可以混合地使用。
[0042]本领域技术人员可以理解的是,上述服务器的硬件结构可以如图1所示。
[0043]参照图1,该服务器可以包括:处理器1001,例如CPU,网络接口 1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现该服务器中各组成部件之间的连接通信。用户接口 1003可以包括具有触控功能的显示屏(Display),以及键盘(Keyboard)、鼠标等组件,用于接收用户输入的信息,并将接收的信息发送至处理器1005进行处理。显示屏可以为IXD显示屏、LED显示屏,还可以为触控屏等,用于实现服务器的显示功能,显示相应的数据。可选地,用户接口 1003还可以包括标准的有线接口、无线接口。网络接口 1004可选的可以包括标准的有线接口、无线接口(如W1-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及业务流程处理应用程序。
[0044]在图1所示服务器中,网络接口 1004主要用于业务服务器或其他网络平台,与业务服务器或其他网络平台进行数据通信;用户接口 1003主要用于连接客户端,与客户端进行数据通信,接收客户端输入的业务请求等信息和指令;而处理器1001可以用于调用存储器1005中存储的业务流程处理应用程序,并执行以下操作:
[0045]在业务流程的当前中间状态的变迀动作结束后,接收外部触发的回退指令;根据所述回退指令,读取预先配置的变迀令牌表,所述变迀令牌表记录有按照时间操作顺序排列的操作状态;根据当前中间状态从所述变迀令牌表中读取上一次变迀动作及上一状态;撤销当前中间状态的变迀动作,并激活上一次变迀动作及上一状态。
[0046]进一步地,在一个实施例中,处理器1001调用存储器1005中存储的业务流程处理应用程序,还可以执行以下操作:
[0047]获取业务流程的起始状态;
[