CN106528066B - 一种业务流程运行方法及装置 - Google Patents

一种业务流程运行方法及装置 Download PDF

Info

Publication number
CN106528066B
CN106528066B CN201510585029.5A CN201510585029A CN106528066B CN 106528066 B CN106528066 B CN 106528066B CN 201510585029 A CN201510585029 A CN 201510585029A CN 106528066 B CN106528066 B CN 106528066B
Authority
CN
China
Prior art keywords
business process
link
executed
process instance
static
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510585029.5A
Other languages
English (en)
Other versions
CN106528066A (zh
Inventor
周俊杰
王世军
钱洁龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201510585029.5A priority Critical patent/CN106528066B/zh
Priority to PCT/CN2016/089928 priority patent/WO2017045473A1/zh
Publication of CN106528066A publication Critical patent/CN106528066A/zh
Application granted granted Critical
Publication of CN106528066B publication Critical patent/CN106528066B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs

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

一种业务流程运行方法及装置
技术领域
本申请涉及业务流程管理技术领域,特别是涉及一种业务流程运行方法及装置。
背景技术
BPM(Business Process Management,业务流程管理)***一般包括业务流程的建模和业务流程的驱动两方面,其中,业务流程的建模一般由BPM集成开发环境(BPMIntegrated Development Environment)负责,业务流程的驱动一般由BPM流程引擎(BPMEngine)负责。通过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,具体用于:判断所述待执行环节信息中是否存在所述MessageFlow;如果存在,则表示待执行环节预先设置有静态协同环节,触发第二获取单元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(ApplicationSpecific Integrated Circuit),或者是被配置成实施本申请实施例的一个或多个集成电路。
存储器730,用于存放程序732。存储器730可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。程序732具体可以包括:
图1、2、3所示实施例中的方法步骤,在此不赘述。
程序732中各单元的具体实现参见图4-图5所示实施例中的相应单元,在此不赘述。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的硬件平台的方式来实现,当然也可以全部通过硬件来实施,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的***而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种业务流程运行方法,其特征在于,所述方法包括:
预先通过消息流Message Flow指定业务流程定义中指定环节的静态协同关系;
获取第一业务流程实例中的待执行环节信息;
根据所述待执行环节信息判断待执行环节是否预先设置有静态协同环节;
如果所述待执行环节未预先设置有静态协同环节,则执行所述待执行环节;
如果所述待执行环节预先设置有静态协同环节,则获取所述第一业务流程实例的协同标识;
根据所述第一业务流程实例的协同标识判断是否存在第二业务流程实例与所述第一业务流程实例协同;
如果存在,则查找所述第二业务流程实例,并执行第二业务流程实例,直至所述第二业务流程实例中的所述静态协同环节之前的环节以及所述静态协同环节执行完毕之后,再执行所述待执行环节;
如果不存在,则执行所述待执行环节。
2.根据权利要求1所述的方法,其特征在于,所述根据所述待执行环节信息判断待执行环节是否预先设置有静态协同环节,具体包括:
判断所述待执行环节信息中是否存在Message Flow;
如果存在,则待执行环节预先设置有静态协同环节;
如果不存在,则待执行环节未预先设置有静态协同环节。
3.根据权利要求1所述的方法,其特征在于,所述根据所述第一业务流程实例的协同标识判断是否存在第二业务流程实例与所述第一业务流程实例协同,具体包括:
如果所述第一业务流程实例的协同标识为空,则不存在第二业务流程实例与所述第一业务流程实例协同;
如果所述第一业务流程实例的协同标识不为空,则存在第二业务流程实例与所述第一业务流程实例协同。
4.根据权利要求1~3中任意一项所述的方法,其特征在于,在所述获取第一业务流程实例中的待执行环节信息之前,所述方法还包括:
解析所述业务流程定义,按照所述业务流程定义创建业务流程实例列表;
选择所述业务流程实例列表中的任一业务流程实例为第一业务流程实例。
5.根据权利要求4所述的方法,其特征在于,所述查找所述第二业务流程实例,具体包括:
从所述业务流程实例列表中查找具有与所述第一业务流程实例的协同标识相同的协同标识的业务流程实例作为第二业务流程实例。
6.一种业务流程运行装置,其特征在于,所述装置包括:
预先设置单元,用于预先通过消息流Message Flow指定业务流程定义中指定环节的静态协同关系;
第一获取单元,用于获取第一业务流程实例中的待执行环节信息;
第一判断单元,用于根据所述待执行环节信息判断待执行环节是否预先设置有静态协同环节;如果所述待执行环节未预先设置有静态协同环节,则触发第二执行单元;如果所述待执行环节预先设置有静态协同环节,则触发第二获取单元;
第二获取单元,用于获取所述第一业务流程实例的协同标识;
第二判断单元,用于根据所述第一业务流程实例的协同标识判断是否存在第二业务流程实例与所述第一业务流程实例协同;如果存在,触发第一执行单元;
第一执行单元,用于查找所述第二业务流程实例,并执行第二业务流程实例,直至所述第二业务流程实例中的所述静态协同环节之前的环节以及所述静态协同环节执行完毕之后,再执行所述待执行环节;
第二执行单元,用于执行所述待执行环节。
7.根据权利要求6所述的装置,其特征在于,所述第一判断单元具体用于:
判断所述待执行环节信息中是否存在Message Flow;
如果存在,则待执行环节预先设置有静态协同环节;
如果不存在,则待执行环节未预先设置有静态协同环节。
8.根据权利要求6所述的装置,其特征在于,所述第二判断单元具体用于:
如果所述第一业务流程实例的协同标识为空,则不存在第二业务流程实例与所述第一业务流程实例协同;
如果所述第一业务流程实例的协同标识不为空,则存在第二业务流程实例与所述第一业务流程实例协同。
9.根据权利要求6~8中任意一项所述的装置,其特征在于,所述装置还包括:
第一业务流程实例确定单元,用于在所述获取第一业务流程实例中的待执行环节信息之前,解析所述业务流程定义,按照所述业务流程定义创建业务流程实例列表;选择所述业务流程实例列表中的任一业务流程实例为第一业务流程实例。
10.根据权利要求9所述的装置,其特征在于,所述第一执行单元具体用于:
从所述业务流程实例列表中查找具有与所述第一业务流程实例的协同标识相同的协同标识的业务流程实例作为第二业务流程实例。
CN201510585029.5A 2015-09-15 2015-09-15 一种业务流程运行方法及装置 Active CN106528066B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201510585029.5A CN106528066B (zh) 2015-09-15 2015-09-15 一种业务流程运行方法及装置
PCT/CN2016/089928 WO2017045473A1 (zh) 2015-09-15 2016-07-13 一种业务流程运行方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510585029.5A CN106528066B (zh) 2015-09-15 2015-09-15 一种业务流程运行方法及装置

Publications (2)

Publication Number Publication Date
CN106528066A CN106528066A (zh) 2017-03-22
CN106528066B true CN106528066B (zh) 2020-01-17

Family

ID=58288219

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510585029.5A Active CN106528066B (zh) 2015-09-15 2015-09-15 一种业务流程运行方法及装置

Country Status (2)

Country Link
CN (1) CN106528066B (zh)
WO (1) WO2017045473A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111260433A (zh) * 2020-01-07 2020-06-09 中国联合网络通信集团有限公司 业务订单处理方法及装置
CN111309294B (zh) * 2020-02-29 2022-06-07 苏州浪潮智能科技有限公司 一种业务处理方法、装置及电子设备和存储介质
CN112182000A (zh) * 2020-09-26 2021-01-05 中国建设银行股份有限公司 一种流程引擎实现方法、装置、电子设备及可读存储介质
CN114489855B (zh) * 2022-01-27 2024-06-21 北京索为***技术股份有限公司 流程节点控制方法、装置、计算机设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101976386A (zh) * 2010-10-12 2011-02-16 大唐软件技术股份有限公司 一种流程协同的控制方法
CN103208046A (zh) * 2012-12-31 2013-07-17 广州奥凯信息咨询有限公司 基于交互式动态流程图的工作流引擎架构方法和***
CN103455324A (zh) * 2013-07-24 2013-12-18 北京起步科技有限公司 一种用于业务开发流程的模型
CN103500372A (zh) * 2013-08-08 2014-01-08 机械工业第六设计研究院有限公司 基于soa的协同设计方法与***
CN104463508A (zh) * 2014-12-30 2015-03-25 山东中创软件商用中间件股份有限公司 一种多个工作流***间的协同方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
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 华为技术有限公司 业务交互处理方法和***

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101976386A (zh) * 2010-10-12 2011-02-16 大唐软件技术股份有限公司 一种流程协同的控制方法
CN103208046A (zh) * 2012-12-31 2013-07-17 广州奥凯信息咨询有限公司 基于交互式动态流程图的工作流引擎架构方法和***
CN103455324A (zh) * 2013-07-24 2013-12-18 北京起步科技有限公司 一种用于业务开发流程的模型
CN103500372A (zh) * 2013-08-08 2014-01-08 机械工业第六设计研究院有限公司 基于soa的协同设计方法与***
CN104463508A (zh) * 2014-12-30 2015-03-25 山东中创软件商用中间件股份有限公司 一种多个工作流***间的协同方法及装置

Also Published As

Publication number Publication date
WO2017045473A1 (zh) 2017-03-23
CN106528066A (zh) 2017-03-22

Similar Documents

Publication Publication Date Title
WO2019061991A1 (zh) 多元通用模型平台建模方法、电子设备及计算机可读存储介质
CN106528066B (zh) 一种业务流程运行方法及装置
CN107766344B (zh) 一种模板渲染的方法、装置及浏览器
CN104579909B (zh) 一种用户信息的分类、用户分组信息的获取方法和设备
CN110688598A (zh) 业务参数采集方法、装置、计算机设备和存储介质
CN104750760A (zh) 一种推荐应用软件的实现方法及装置
CN105573733A (zh) 浏览器与web前端通信的方法、web前端及***
CN106776266B (zh) 测试工具的配置方法及终端设备
US20240146650A1 (en) Creating endpoints
EP3693894A1 (en) Service process starting method and apparatus
CN116523457A (zh) 基于业务流程的工作流处理方法、装置、设备及存储介质
CN104267921A (zh) 一种页面显示控制方法及服务器
CN104679824A (zh) 网络平台的网页生成方法及***
CN109087129B (zh) 用户评价方法、装置及计算机可读存储介质
CN111651140A (zh) 基于工作流的服务方法及装置
CN106658666A (zh) 一种用于建立无线连接的方法与设备
CN113094283A (zh) 一种数据获取方法、装置、设备及存储介质
CN112597105A (zh) 文件关联对象的处理方法、服务端设备及存储介质
CN110781375B (zh) 一种用户状态标识确定方法及装置
CN108268545B (zh) 一种分级的用户标签库的创建的方法和装置
CN109213541A (zh) App应用展示界面的方法、装置和电子设备
CN111177593B (zh) 一种数据打通方法及***
CN111178044B (zh) 一种确定目标文本要素的方法及装置
CN104408551A (zh) 一种设备登记方法及***
CN115604000B (zh) 一种越权检测方法、装置、设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant