WO2017045473A1 - 一种业务流程运行方法及装置 - Google Patents
一种业务流程运行方法及装置 Download PDFInfo
- Publication number
- WO2017045473A1 WO2017045473A1 PCT/CN2016/089928 CN2016089928W WO2017045473A1 WO 2017045473 A1 WO2017045473 A1 WO 2017045473A1 CN 2016089928 W CN2016089928 W CN 2016089928W WO 2017045473 A1 WO2017045473 A1 WO 2017045473A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- process instance
- link
- business process
- executed
- static
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
Definitions
- the apparatus further includes:
- a first business process instance determining unit configured to parse the business process definition according to the to-be-executed link information in the first business process instance, and create a business process instance list according to the business process definition; and select the service Any business process instance in the process instance list is the first business process instance.
- the BPM process engine provides the business process instance specified by the API binding while creating the business process instance, as shown in the following code, public void collaborate Process Instances(Set ⁇ String>collaborating PIs, String collaboration Key); where the first parameter is a list of business process instances that need to be coordinated, and can be in the form of an array or collection class.
- the second parameter is the collaborative identifier of these business process instances.
- a collaborative identifier typically has business semantics, such as an order number.
- S205 Determine, according to the collaboration identifier of the first service process instance, whether the second service process instance is in cooperation with the first service process instance; if yes, execute S206; if not, execute S207.
- the second service process instance is searched for, and the second service process instance is executed. After the static collaboration link in the second service process instance is executed, the to-be-executed link is executed.
- the order opening process instance (0003) When the order opening process instance (0003) is executed to the “outbound” link, it is found that the Message Flow is associated with it, and it will search for the logistics business process instance (0002) with the same collaborative identifier, and the logistics result notification of the logistics business process instance. After the execution of the link, the “outbound” link of the order opening process instance can be executed.
- the order opening process instance (0003) does not know which specific logistics business process instance to wait when executing the "outbound" link. The notice that the order opening process instance will flow on its own.
- FIG. 4 is a structural diagram of Embodiment 1 of a service flow running apparatus according to the present invention, where the business process running device includes:
- the first determining unit 12 is configured to determine, according to the to-be-executed link information, whether a static cooperation link is preset in the to-be-executed link; if the static execution link is not preset in the to-be-executed link, the second execution unit 16 is triggered; The to-be-executed link is preset with a static coordination link, and the second acquisition unit 13 is triggered;
- the second executing unit 16 is configured to execute the to-be-executed link.
- the pre-setting unit 21 is configured to specify, in advance, a static collaborative relationship of a specified link in the business process definition through the message flow Message Flow.
- the first business process instance determining unit 22 is configured to parse the business process definition according to the to-be-executed link information in the first business process instance, and create a business process instance list according to the business process definition; Any business process instance in the list of business process instances is the first business process instance.
- the second obtaining unit 25 is configured to acquire a collaborative identifier of the first service process instance.
- the second determining unit is specifically configured to:
- the first executing unit 27 is configured to search for the second business process instance, and execute the second business process instance, and then execute the to-be-executed after the execution of the static collaborative link in the second business process instance is completed. Link.
- the first execution unit is specifically configured to:
- a business process instance having the same collaborative identity as the collaborative identity of the first business process instance is searched from the business process instance list as a second business process instance.
- the second executing unit 28 is configured to execute the to-be-executed link.
- computing node 700 includes:
- a processor 710 a communications interface 720, a memory 730, and a bus 740.
- each unit in the program 732 refers to the corresponding units in the embodiment shown in FIG. 4 to FIG. 5, and details are not described herein.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开的业务流程运行方法及装置,通过根据第一业务流程实例中的待执行环节信息确定待执行环节预先设置有静态协同环节时,根据第一业务流程实例的协同标识判断是否存在第二业务流程实例与所述第一业务流程实例协同,如果存在,则查找所述第二业务流程实例,并执行第二业务流程实例,直至所述第二流程实例中的所述静态协同环节执行完毕之后,再执行所述待执行环节,如果不存在,则执行所述待执行环节。基于上述方法及装置,具备静态协同关系的两个流程实例的两个环节,在业务流程运行期间如果要协同,则两个流程实例依附执行,如果不要协同,则两个流程实例依然可以单独执行,能适应各种应用场景,大大提升了用户的使用感受。
Description
本申请要求于2015年09月15日提交中国专利局、申请号为201510585029.5,发明名称为“一种业务流程运行方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请涉及业务流程管理技术领域,特别是涉及一种业务流程运行方法及装置。
BPM(Business Process Management,业务流程管理)系统一般包括业务流程的建模和业务流程的驱动两方面,其中,业务流程的建模一般由BPM集成开发环境(BPM Integrated Development Environment)负责,业务流程的驱动一般由BPM流程引擎(BPM Engine)负责。通过BPM系统,能够为企业打造符合其业务发展的各种BPM流程图,极大地方便了企业管理,为企业发展做出了极大的贡献。
BPM流程图上的一个个图元一般称之为“环节”,基于现有的BPM系统,通常需要将一个独立流程中一个环节(假设为发起协同的环节,命名为环节1)和另一个独立流程中的一个环节(假设为被协同的环节,命名为环节2)进行强关联,以建立跨流程的协同。在流程运行期间,相互关联的两个环节中,如果环节2不执行,则环节1也不会执行,环节1对应的独立流程则将停滞于环节1,无法继续执行。即,只要建立了跨流程的协同,则在流程运行期间,发起协同的流程必须依附被协同的环节的执行状态而执行,无法再单独执行。
但是,在某些场景下,比如电信领域,用户想购买手机,会有订单流程、物流流程、开卡流程、业务办理流程等等,如果建立物流流程和开卡流程间的协同,则在流程运行期间,必须在物流流程中的某一环节执行完毕之后,才能执行开卡流程,但是,实际上用户可以单独执行开卡流程,而因为之前建立的跨流程协同将导致开卡流程强制关联到物流流程,最终导致开卡流程的独立执行受到限制。
也就是说,现有技术中的BPM系统中流程间的协同关系是固定的,且在流程运行期间,具有协同关系的流程无法单独执行,对各种应用场景的适用性较
差,极大地影响了用户的使用感受。
发明内容
本申请的目的是提供一种业务流程运行方法及装置,以解决现有技术中的BPM系统中流程间的协同关系是固定的,且在流程运行期间,具有协同关系的流程无法单独执行,对各种应用场景的适用性较差,极大地影响了用户的使用感受的问题。
为实现上述目的,本申请提供了如下方案:
根据本申请的第一方面的第一种可能的实现方式,本申请提供一种业务流程运行方法,所述方法包括:
获取第一业务流程实例中的待执行环节信息;
根据所述待执行环节信息判断待执行环节是否预先设置有静态协同环节;
如果所述待执行环节未预先设置有静态协同环节,则执行所述待执行环节;
如果所述待执行环节预先设置有静态协同环节,则获取所述第一业务流程实例的协同标识;
根据所述第一业务流程实例的协同标识判断是否存在第二业务流程实例与所述第一业务流程实例协同;
如果存在,则查找所述第二业务流程实例,并执行第二业务流程实例,直至所述第二业务流程实例中的所述静态协同环节执行完毕之后,再执行所述待执行环节;
如果不存在,则执行所述待执行环节。
结合第一方面的第二种可能的实现方式,所述方法还包括:
预先通过消息流Message Flow指定业务流程定义中指定环节的静态协同关系。
结合第一方面的第三种可能的实现方式,所述根据所述待执行环节信息判断待执行环节是否预先设置有静态协同环节,具体包括:
判断所述待执行环节信息中是否存在Message Flow;
如果存在,则待执行环节预先设置有静态协同环节;
如果不存在,则待执行环节未预先设置有静态协同环节。
结合第一方面的第四种可能的实现方式,所述根据所述第一业务流程实例的协同标识判断是否存在第二业务流程实例与所述第一业务流程实例协同,具
体包括:
如果所述第一业务流程实例的协同标识为空,则不存在第二业务流程实例与所述第一业务流程实例协同;
如果所述第一业务流程实例的协同标识不为空,则存在第二业务流程实例与所述第一业务流程实例协同。
结合第一方面的第五种可能的实现方式,在所述获取第一业务流程实例中的待执行环节信息之前,所述方法还包括:
解析所述业务流程定义,按照所述业务流程定义创建业务流程实例列表;
选择所述业务流程实例列表中的任一业务流程实例为第一业务流程实例。
结合第一方面的第六种可能的实现方式,所述查找所述第二业务流程实例,具体包括:
从所述业务流程实例列表中查找具有与所述第一业务流程实例的协同标识相同的协同标识的业务流程实例作为第二业务流程实例。
根据本申请的第二方面的第一种可能的实现方式,本申请提供一种业务流程运行装置,所述装置包括:
第一获取单元,用于获取第一业务流程实例中的待执行环节信息;
第一判断单元,用于根据所述待执行环节信息判断待执行环节是否预先设置有静态协同环节;如果所述待执行环节未预先设置有静态协同环节,则触发第二执行单元;如果所述待执行环节预先设置有静态协同环节,则触发第二获取单元;
第二获取单元,用于获取所述第一业务流程实例的协同标识;
第二判断单元,用于根据所述第一业务流程实例的协同标识判断是否存在第二业务流程实例与所述第一业务流程实例协同;如果存在,触发第一执行单元;
第一执行单元,用于查找所述第二业务流程实例,并执行第二业务流程实例,直至所述第二业务流程实例中的所述静态协同环节执行完毕之后,再执行所述待执行环节;
第二执行单元,用于执行所述待执行环节。
结合第二方面的第二种可能的实现方式,所述装置还包括:
预先设置单元,用于预先通过消息流Message Flow指定业务流程定义中指定环节的静态协同关系。
结合第二方面的第三种可能的实现方式,所述第一判断单元具体用于:
判断所述待执行环节信息中是否存在Message Flow;
如果存在,则待执行环节预先设置有静态协同环节;
如果不存在,则待执行环节未预先设置有静态协同环节。
结合第二方面的第四种可能的实现方式,所述第二判断单元具体用于:
如果所述第一业务流程实例的协同标识为空,则不存在第二业务流程实例与所述第一业务流程实例协同;
如果所述第一业务流程实例的协同标识不为空,则存在第二业务流程实例与所述第一业务流程实例协同。
结合第二方面的第五种可能的实现方式,所述装置还包括:
第一业务流程实例确定单元,用于在所述获取第一业务流程实例中的待执行环节信息之前,解析所述业务流程定义,按照所述业务流程定义创建业务流程实例列表;选择所述业务流程实例列表中的任一业务流程实例为第一业务流程实例。
结合第二方面的第六种可能的实现方式,所述第一执行单元具体用于:
从所述业务流程实例列表中查找具有与所述第一业务流程实例的协同标识相同的协同标识的业务流程实例作为第二业务流程实例。
根据本申请提供的具体实施例,本申请公开了以下技术效果:
本申请公开的业务流程运行方法及装置,通过根据第一业务流程实例中的待执行环节信息确定待执行环节预先设置有静态协同环节时,根据第一业务流程实例的协同标识判断是否存在第二业务流程实例与所述第一业务流程实例协同,如果存在,则查找所述第二业务流程实例,并执行第二业务流程实例,直至所述第二流程实例中的所述静态协同环节执行完毕之后,再执行所述待执行环节,如果不存在,则执行所述待执行环节。基于上述方法及装置,具备静态协同关系的两个流程实例的两个环节,在业务流程运行期间如果要协同,则两个流程实例依附执行,如果不要协同,则两个流程实例依然可以单独执行,能适应各种应用场景,大大提升了用户的使用感受。
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本
申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请的业务流程运行方法实施例1的流程图;
图2为本申请的业务流程运行方法实施例2的流程图;
图3为本申请的业务流程运行方法示例示意图;
图4为本申请的业务流程运行装置实施例1的结构图;
图5为本申请的业务流程运行装置实施例2的结构图;
图6为本申请的计算节点的结构图。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
参阅图1,图1为本发明提供的业务流程运行方法实施例1的流程图,所述业务流程运行方法包括:
S101、获取第一业务流程实例中的待执行环节信息。
当待执行环节预先设置有静态协同环节时,待执行环节信息可以包括有静态协同标识,所述静态协同标识具体可以为消息流Message Flow。
S102、根据所述待执行环节信息判断待执行环节是否预先设置有静态协同环节;如果所述待执行环节未预先设置有静态协同环节,则执行S106;如果所述待执行环节预先设置有静态协同环节,则执行S103。
S103、获取所述第一业务流程实例的协同标识。
S104、根据所述第一业务流程实例的协同标识判断是否存在第二业务流程实例与所述第一业务流程实例协同;如果存在,则执行S105;如果不存在,则执行S106。
S105、查找所述第二业务流程实例,并执行第二业务流程实例,直至所述第二业务流程实例中的所述静态协同环节执行完毕之后,再执行所述待执行环
节;
S106、执行所述待执行环节。
本实施例公开的业务流程运行方法,通过根据第一业务流程实例中的待执行环节信息确定待执行环节预先设置有静态协同环节时,根据第一业务流程实例的协同标识判断是否存在第二业务流程实例与所述第一业务流程实例协同,如果存在,则查找所述第二业务流程实例,并执行第二业务流程实例,直至所述第二流程实例中的所述静态协同环节执行完毕之后,再执行所述待执行环节,如果不存在,则执行所述待执行环节。基于上述方法,具备静态协同关系的两个流程实例的两个环节,在业务流程运行期间如果要协同,则两个流程实例依附执行,如果不要协同,则两个流程实例依然可以单独执行,能适应各种应用场景,大大提升了用户的使用感受。
参阅图2,图2为本发明提供的业务流程运行方法实施例2的流程图,所述业务流程运行方法包括:
S201、预先通过消息流Message Flow指定业务流程定义中指定环节的静态协同关系。
BPM IDE(BPM集成开发环境,BPM integrated development environment)通过泳道引入独立业务流程,通过消息流Message Flow指定任意两个独立业务流程的指定环节之间的静态协同关系。静态协同是指两个环节可能存在协同关系,但是不确定哪两个流程实例的上述两个环节之间存在协同。
S202、获取第一业务流程实例中的待执行环节信息。
在所述获取第一业务流程实例中的待执行环节信息之前,BPM流程引擎解析所述业务流程定义,按照所述业务流程定义创建业务流程实例列表;
选择所述业务流程实例列表中的任一业务流程实例为第一业务流程实例。
S203、判断所述待执行环节信息中是否存在Message Flow;如果存在,则说明待执行环节预先设置有静态协同环节,执行S204;如果不存在,则说明待执行环节未预先设置有静态协同环节,执行S207。
S204、获取所述第一业务流程实例的协同标识。
BPM流程引擎在创建业务流程实例的同时,提供API绑定指定的业务流程实例,如下述代码所示,public void collaborate Process
Instances(Set<String>collaborating PIs,String collaboration Key);其中,第一个参数是需要协同的业务流程实例列表,可用数组或集合类形式,第二个参数是这些业务流程实例的协同标识,可用字符串形式,协同标识一般具有业务语义,如订单号。
S205、根据所述第一业务流程实例的协同标识判断是否存在第二业务流程实例与所述第一业务流程实例协同;如果存在,则执行S206;如果不存在,则执行S207。
具体的,如果所述第一业务流程实例的协同标识为空,比如字符串为NULL,则不存在第二业务流程实例与所述第一业务流程实例协同;
如果所述第一业务流程实例的协同标识不为空,比如,字符串部分有具体值,则存在第二业务流程实例与所述第一业务流程实例协同。
S206、查找所述第二业务流程实例,并执行第二业务流程实例,直至所述第二业务流程实例中的所述静态协同环节执行完毕之后,再执行所述待执行环节。
所述查找所述第二业务流程实例,具体包括:
从所述业务流程实例列表中查找具有与所述第一业务流程实例的协同标识相同的协同标识的业务流程实例作为第二业务流程实例。
S207、执行所述待执行环节。
需要说明的时,在本实施例中,所述待执行环节为被协同环节,所述静态协同环节为发起协同环节。
基于上述实施例,本申请公开了一种业务流程运行示例,具体如下:
如图3所示,泳道图来引用指定的业务流程定义,三个泳道pool1、pool2、pool3中分别配置了三个独立的业务流程定义——订单申请,订单开通,物流。
使用Message Flow来指定业务流程定义的指定环节的静态协同关系,比如,pool2中的订单开通流程的“出库”环节要等待pool3中物流流程的“物流结果通知”,所以建立“物流结果通知”环节到“出库”环节的Message Flow。“物流结果通知”环节为发起协同的环节,“出库”环节为被协同的环节。
BPM引擎提供API:public void collaborate Process Instances(Set<String>collaborating PIs,String collaboration Key);
来帮助用户运行态实现运行期的订单申请,订单开通,物流三个流程创建出来的具体的流程实例,比如“张三申请iphone5套餐”会有一个编号为××××的订单申请流程实例创建,id为0001,然后会有个投递iphone5的物流流程实例,id为0002,也会有一个开通手机号及资费套餐的订单开通流程实例,id为0003,程序只需要对BPM引擎传入0001、0002、0003到第一个参数中,传入订单编号××××到第二个参数中,即可表明,0001、0002、0003对应的业务流程实例是需要协同的,协同标识为订单编号××××(第二个参数)。BPPM引擎会生成若干条对应业务流程实例的协同关系记录存到数据库中。
订单开通流程实例(0003)执行到“出库”环节的时候,发现关联了Message Flow,就会去查找有相同协同标识的物流业务流程实例(0002),等物流业务流程实例的“物流结果通知”环节执行完之后,订单开通流程实例的“出库”环节即可执行。
如果BPM引擎未设置0001、0002、0003对应的业务流程实例是需要协同的,则订单开通流程实例(0003)执行到“出库”环节的时候,并不知道要等待哪个具体的物流业务流程实例的通知,该订单开通流程实例会自行流转下去。
本实施例使用Message Flow实现了业务流程定义指定环节之间的静态协同关系,配合为所有待协同的业务流程实例绑定相同的协同标识,最终实现了运行期间,独立业务流程实例之间的动态协同。
参阅图4,图4为本发明提供的业务流程运行装置实施例1的结构图,所述业务流程运行装置包括:
第一获取单元11,用于获取第一业务流程实例中的待执行环节信息;
第一判断单元12,用于根据所述待执行环节信息判断待执行环节是否预先设置有静态协同环节;如果所述待执行环节未预先设置有静态协同环节,则触发第二执行单元16;如果所述待执行环节预先设置有静态协同环节,则触发第二获取单元13;
第二获取单元13,用于获取所述第一业务流程实例的协同标识;
第二判断单元14,用于根据所述第一业务流程实例的协同标识判断是否存在第二业务流程实例与所述第一业务流程实例协同;如果存在,触发第一执行单元;
第一执行单元15,用于查找所述第二业务流程实例,并执行第二业务流程
实例,直至所述第二业务流程实例中的所述静态协同环节执行完毕之后,再执行所述待执行环节;
第二执行单元16,用于执行所述待执行环节。
需要说明的是,上述各个单元的功能实现已在方法实施例中进行详细描述,本实施例不再赘述。
参阅图5,图5为本发明提供的业务流程运行装置实施例1的结构图,所述业务流程运行装置包括:
预先设置单元21,用于预先通过消息流Message Flow指定业务流程定义中指定环节的静态协同关系。
第一业务流程实例确定单元22,用于在所述获取第一业务流程实例中的待执行环节信息之前,解析所述业务流程定义,按照所述业务流程定义创建业务流程实例列表;选择所述业务流程实例列表中的任一业务流程实例为第一业务流程实例。
第一获取单元23,用于获取第一业务流程实例中的待执行环节信息;
第一判断单元24,具体用于:判断所述待执行环节信息中是否存在所述Message Flow;如果存在,则表示待执行环节预先设置有静态协同环节,触发第二获取单元25;如果不存在,则表示待执行环节未预先设置有静态协同环节,触发第二执行单元28。
第二获取单元25,用于获取所述第一业务流程实例的协同标识;
第二判断单元26,用于根据所述第一业务流程实例的协同标识判断是否存在第二业务流程实例与所述第一业务流程实例协同;如果存在,触发第一执行单元27;如果不存在,则触发第二执行单元28。
所述第二判断单元具体用于:
如果所述第一业务流程实例的协同标识为空,则不存在第二业务流程实例与所述第一业务流程实例协同;
如果所述第一业务流程实例的协同标识不为空,则存在第二业务流程实例与所述第一业务流程实例协同。
第一执行单元27,用于查找所述第二业务流程实例,并执行第二业务流程实例,直至所述第二业务流程实例中的所述静态协同环节执行完毕之后,再执行所述待执行环节。
所述第一执行单元具体用于:
从所述业务流程实例列表中查找具有与所述第一业务流程实例的协同标识相同的协同标识的业务流程实例作为第二业务流程实例。
第二执行单元28,用于执行所述待执行环节。
需要说明的是,上述各个单元的功能实现已在方法实施例中进行详细描述,本实施例不再赘述。
另外,本申请实施例还提供了一种计算节点,计算节点可能是包含计算能力的主机服务器,或者是个人计算机PC,或者是可携带的便携式计算机或终端等等,本申请具体实施例并不对计算节点的具体实现做限定。
图6为本申请的计算节点的结构图。如图6所示,计算节点700包括:
处理器(processor)710,通信接口(Communications Interface)720,存储器(memory)730,总线740。
处理器710,通信接口720,存储器730通过总线740完成相互间的通信。
处理器710,用于执行程序732。
具体地,程序732可以包括程序代码,所述程序代码包括计算机操作指令。
处理器710可能是一个中央处理器CPU,或者是特定集成电路ASIC(Application Specific Integrated Circuit),或者是被配置成实施本申请实施例的一个或多个集成电路。
存储器730,用于存放程序732。存储器730可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。程序732具体可以包括:
图1、2、3所示实施例中的方法步骤,在此不赘述。
程序732中各单元的具体实现参见图4-图5所示实施例中的相应单元,在此不赘述。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且
还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的硬件平台的方式来实现,当然也可以全部通过硬件来实施,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本申请的限制。
Claims (12)
- 一种业务流程运行方法,其特征在于,所述方法包括:获取第一业务流程实例中的待执行环节信息;根据所述待执行环节信息判断待执行环节是否预先设置有静态协同环节;如果所述待执行环节未预先设置有静态协同环节,则执行所述待执行环节;如果所述待执行环节预先设置有静态协同环节,则获取所述第一业务流程实例的协同标识;根据所述第一业务流程实例的协同标识判断是否存在第二业务流程实例与所述第一业务流程实例协同;如果存在,则查找所述第二业务流程实例,并执行第二业务流程实例,直至所述第二业务流程实例中的所述静态协同环节执行完毕之后,再执行所述待执行环节;如果不存在,则执行所述待执行环节。
- 根据权利要求1所述的方法,其特征在于,所述方法还包括:预先通过消息流Message Flow指定业务流程定义中指定环节的静态协同关系。
- 根据权利要求2所述的方法,其特征在于,所述根据所述待执行环节信息判断待执行环节是否预先设置有静态协同环节,具体包括:判断所述待执行环节信息中是否存在Message Flow;如果存在,则待执行环节预先设置有静态协同环节;如果不存在,则待执行环节未预先设置有静态协同环节。
- 根据权利要求1所述的方法,其特征在于,所述根据所述第一业务流程实例的协同标识判断是否存在第二业务流程实例与所述第一业务流程实例协同,具体包括:如果所述第一业务流程实例的协同标识为空,则不存在第二业务流程实例与所述第一业务流程实例协同;如果所述第一业务流程实例的协同标识不为空,则存在第二业务流程实例与所述第一业务流程实例协同。
- 根据权利要求1-4中任意一项所述的方法,其特征在于,在所述获取第一业务流程实例中的待执行环节信息之前,所述方法还包括:解析所述业务流程定义,按照所述业务流程定义创建业务流程实例列表;选择所述业务流程实例列表中的任一业务流程实例为第一业务流程实例。
- 根据权利要求5所述的方法,其特征在于,所述查找所述第二业务流程实例,具体包括:从所述业务流程实例列表中查找具有与所述第一业务流程实例的协同标识相同的协同标识的业务流程实例作为第二业务流程实例。
- 一种业务流程运行装置,其特征在于,所述装置包括:第一获取单元,用于获取第一业务流程实例中的待执行环节信息;第一判断单元,用于根据所述待执行环节信息判断待执行环节是否预先设置有静态协同环节;如果所述待执行环节未预先设置有静态协同环节,则触发第二执行单元;如果所述待执行环节预先设置有静态协同环节,则触发第二获取单元;第二获取单元,用于获取所述第一业务流程实例的协同标识;第二判断单元,用于根据所述第一业务流程实例的协同标识判断是否存在第二业务流程实例与所述第一业务流程实例协同;如果存在,触发第一执行单元;第一执行单元,用于查找所述第二业务流程实例,并执行第二业务流程实例,直至所述第二业务流程实例中的所述静态协同环节执行完毕之后,再执行所述待执行环节;第二执行单元,用于执行所述待执行环节。
- 根据权利要求7所述的装置,其特征在于,所述装置还包括:预先设置单元,用于预先通过消息流Message Flow指定业务流程定义中指定环节的静态协同关系。
- 根据权利要求8所述的装置,其特征在于,所述第一判断单元具体用于:判断所述待执行环节信息中是否存在Message Flow;如果存在,则待执行环节预先设置有静态协同环节;如果不存在,则待执行环节未预先设置有静态协同环节。
- 根据权利要求7所述的装置,其特征在于,所述第二判断单元具体用于:如果所述第一业务流程实例的协同标识为空,则不存在第二业务流程实例与所述第一业务流程实例协同;如果所述第一业务流程实例的协同标识不为空,则存在第二业务流程实例 与所述第一业务流程实例协同。
- 根据权利要求7-10中任意一项所述的装置,其特征在于,所述装置还包括:第一业务流程实例确定单元,用于在所述获取第一业务流程实例中的待执行环节信息之前,解析所述业务流程定义,按照所述业务流程定义创建业务流程实例列表;选择所述业务流程实例列表中的任一业务流程实例为第一业务流程实例。
- 根据权利要求11所述的装置,其特征在于,所述第一执行单元具体用于:从所述业务流程实例列表中查找具有与所述第一业务流程实例的协同标识相同的协同标识的业务流程实例作为第二业务流程实例。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510585029.5A CN106528066B (zh) | 2015-09-15 | 2015-09-15 | 一种业务流程运行方法及装置 |
CN201510585029.5 | 2015-09-15 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2017045473A1 true WO2017045473A1 (zh) | 2017-03-23 |
Family
ID=58288219
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2016/089928 WO2017045473A1 (zh) | 2015-09-15 | 2016-07-13 | 一种业务流程运行方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN106528066B (zh) |
WO (1) | WO2017045473A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111260433A (zh) * | 2020-01-07 | 2020-06-09 | 中国联合网络通信集团有限公司 | 业务订单处理方法及装置 |
CN111309294A (zh) * | 2020-02-29 | 2020-06-19 | 苏州浪潮智能科技有限公司 | 一种业务处理方法、装置及电子设备和存储介质 |
CN114489855A (zh) * | 2022-01-27 | 2022-05-13 | 北京索为系统技术股份有限公司 | 流程节点控制方法、装置、计算机设备 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112182000A (zh) * | 2020-09-26 | 2021-01-05 | 中国建设银行股份有限公司 | 一种流程引擎实现方法、装置、电子设备及可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5960404A (en) * | 1997-08-28 | 1999-09-28 | International Business Machines Corp. | Mechanism for heterogeneous, peer-to-peer, and disconnected workflow operation |
CN101132401A (zh) * | 2006-08-25 | 2008-02-27 | 华为技术有限公司 | 业务交互处理方法和系统 |
CN104463508A (zh) * | 2014-12-30 | 2015-03-25 | 山东中创软件商用中间件股份有限公司 | 一种多个工作流系统间的协同方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101976386A (zh) * | 2010-10-12 | 2011-02-16 | 大唐软件技术股份有限公司 | 一种流程协同的控制方法 |
CN103208046B (zh) * | 2012-12-31 | 2016-12-28 | 南方电网科学研究院有限责任公司 | 基于交互式动态流程图的工作流引擎架构方法和系统 |
CN103455324A (zh) * | 2013-07-24 | 2013-12-18 | 北京起步科技有限公司 | 一种用于业务开发流程的模型 |
CN103500372A (zh) * | 2013-08-08 | 2014-01-08 | 机械工业第六设计研究院有限公司 | 基于soa的协同设计方法与系统 |
-
2015
- 2015-09-15 CN CN201510585029.5A patent/CN106528066B/zh active Active
-
2016
- 2016-07-13 WO PCT/CN2016/089928 patent/WO2017045473A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5960404A (en) * | 1997-08-28 | 1999-09-28 | International Business Machines Corp. | Mechanism for heterogeneous, peer-to-peer, and disconnected workflow operation |
CN101132401A (zh) * | 2006-08-25 | 2008-02-27 | 华为技术有限公司 | 业务交互处理方法和系统 |
CN104463508A (zh) * | 2014-12-30 | 2015-03-25 | 山东中创软件商用中间件股份有限公司 | 一种多个工作流系统间的协同方法及装置 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111260433A (zh) * | 2020-01-07 | 2020-06-09 | 中国联合网络通信集团有限公司 | 业务订单处理方法及装置 |
CN111309294A (zh) * | 2020-02-29 | 2020-06-19 | 苏州浪潮智能科技有限公司 | 一种业务处理方法、装置及电子设备和存储介质 |
CN111309294B (zh) * | 2020-02-29 | 2022-06-07 | 苏州浪潮智能科技有限公司 | 一种业务处理方法、装置及电子设备和存储介质 |
US11704139B2 (en) | 2020-02-29 | 2023-07-18 | Inspur Suzhou Intelligent Technology Co., Ltd. | Service processing method and apparatus, electronic device, and storage medium |
CN114489855A (zh) * | 2022-01-27 | 2022-05-13 | 北京索为系统技术股份有限公司 | 流程节点控制方法、装置、计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN106528066A (zh) | 2017-03-22 |
CN106528066B (zh) | 2020-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10762143B2 (en) | Extension of third party application functionality for intent determination | |
WO2021012553A1 (zh) | 一种数据处理方法及相关设备 | |
CN105554037B (zh) | 身份认证处理方法及服务平台 | |
TWI679550B (zh) | 帳號登入方法及裝置 | |
WO2017045473A1 (zh) | 一种业务流程运行方法及装置 | |
US20160210632A1 (en) | Secured payment method and relevant device and system | |
US20140108966A1 (en) | Method, sharing platform, and system for sharing image-editing action | |
US20160171505A1 (en) | Extract, transform, and load (etl) processing | |
TW201737126A (zh) | 執行資料恢復操作的方法及裝置 | |
US11487596B2 (en) | API mashup infrastructure generation on computing systems | |
JP2020198630A (ja) | 音声起動されたコンピュータネットワーク環境におけるシーケンス依存データメッセージ統合 | |
CN111143207B (zh) | 一种在移动端查看模型训练通知和训练日志的方法 | |
US20160054982A1 (en) | Application programming interface (api) engine | |
JP6422583B2 (ja) | ウェブページ上で認証情報を提供する方法、装置、システム、記憶媒体、プログラム、及びコンピュータ装置 | |
US10462257B2 (en) | Method and apparatus for obtaining user account | |
CN105022815A (zh) | 信息拦截方法及装置 | |
CN110716743B (zh) | 一种适合多方协作开发的聚合api开发方法及系统 | |
EP3788770B1 (en) | System and method of creating provisional account profiles | |
CN105893055A (zh) | 流程引擎平台化触发方法 | |
KR102066802B1 (ko) | 업무 프로세싱 방법 및 디바이스 | |
US20210409327A1 (en) | Creating endpoints | |
CA3064797A1 (en) | Identity verification method and apparatus, and electronic device | |
WO2022267769A1 (zh) | 图数据生成的方法及装置 | |
US10033737B2 (en) | System and method for cross-cloud identity matching | |
CN103701653A (zh) | 一种接口热插拔配置数据的处理方法及网络配置服务器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 16845587 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 16845587 Country of ref document: EP Kind code of ref document: A1 |