一种通过查表实现工作流循环控制的方法

文档序号:6363472阅读:144来源:国知局
专利名称:一种通过查表实现工作流循环控制的方法
技术领域
本发明属于工作流技术领域,涉及工作流运行过程中循环控制的实现方法。
背景技术
根据工作流管理联盟(Workfiow Management Coalition,WfMC)的定义,工作流是一类能够完全或者部分自动执行的经营过程,它根据一系列过程规则、文档、信息或任务能够在不同的执行者之间进行传递与执行。然而,这种传递和执行过程并不一定是单向的,可能会在几个执行者之间反复进行传递和执行,这种情况在工作流领域称为循环。现有文献只是根据路由特点对循环模式进行了分类,对于在工作流管理系统中如何控制循环,现有文献并没有提及。此外,在实际的工作流循环中,可能包含复杂的环形结构,还可能具有复杂的控制方法。如循环中可以包含控制条件,当控制条件成立时,循环才能进行或者停止。因此,本发明提出了一种工作流循环控制的方法。和现有方法相比较,该循环控制方法可以解决结构较为复杂的循环,并且方案中设置的循环控制条件,包括循环的启动条件和终止条件,可以控制循环的启动和终止。

发明内容
本发明目的在于克服现有技术的缺点,提供一种能够解决结构复杂、控制方法复杂循环情况的控制方法,该种通过查表实现循环控制的方法以网络拓扑结构为基础,可以扩展应用到其它以网结构为基础的工作流模型中,具有可移植性。而且发明中设置的循环控制条件,包括循环的启动条件和终止条件,可以控制循环的启动和终止,具有更好的可控性和可操作性。本发明的目的是通过以下技术解决方案来解决的这种通过查表实现工作流循环控制的方法是在互联网或局域网的服务器与客户端中按照下述步骤实现的(A)建立工作流节点模型工作流节点由服务器和计算机客户端组成,以连接于网络上的若干计算机客户端作为工作流任务的执行单元;以连接于网络上的一个或多个第一服务器作为分发工作流任务的工作流管理服务器;以连接于网络上的一个或多个第二服务器作为数据存储服务器; 其中数据存储服务器中至少包含循环信息表和循环控制表;(B)建立工作流任务的网络连接模型工作流的任务是由计算机客户端负责执行的,一个工作流任务执行完毕后即终止或者被传递到其它计算机客户端;任务的传递是单向的,依靠计算机之间的有线或无线网络连接实现;任意两个工作流任务之间最多只能有一个直接传递关系,但允许一个工作流任务完成后被同时传递给多个工作流任务;其中,直接传递关系是指不通过其它任务的两个工作流任务之间的单向传递关系;
网络连接模型由工作流任务和相邻任务间的单向传递关系组成;将这种工作流任务的网络连接模型存储在数据存储服务器中;(C)创建循环按照下述步骤创建循环(I)在步骤(B)创建的网络连接模型中,选择一个包含有工作流任务和这些工作流任务间单向传递关系的子集;从该子集中任何一个工作流任务出发,都存在一个或多个单向传递关系,使得该工作流任务可以通过这些传递关系不断传递,并再次回到这个工作流任务;将该子集中的工作流任务和这些任务间的单向传递关系定义为一个循环,并存储到数据存储服务器中的循环信息表中;其中,一个传递关系最多只能属于一个循环;(2)创建启动点集合在步骤(I)的子集中选择一个或多个工作流任务作为循环的启动点,它们的集合称为启动点集合;只有启动点才能启动一个循环;将启动点集合存储到数据存储服务器中的循环信息表中;(3)创建启动条件在步骤(2)创建的启动点上创建条件,该条件称为启动条件;只有当启动条件成立时,才允许启动一个循环;将启动条件存储到数据存储服务器中的循环信息表中;一个循环中的某个启动点上,最多只能定义一个启动条件,如果没有定义启动条件,则默认为无条件启动循环;当循环启动后,循环中包含的任务可以按照传递关系反复执行与传递,一直到循环结束;(4)创建终止点集合在步骤(I)的子集中选择一个或多个工作流任务作为循环的终止点,它们的集合称为终止点集合;只有终止点才能终止一个循环;将终止点集合存储到数据存储服务器中的循环信息表中;
(5)创建终止条件在步骤(4)创建的终止点上创建条件,该条件称为终止条件;只有当终止条件成立时,才允许终止一个循环;将终止条件存储到数据存储服务器中的循环信息表中;一个循环中的某个终止点上,最多只能定义一个终止条件,如果没有定义终止条件,则默认为无条件终止循环;(6)创建出口点集合和出口集合在步骤(I)的子集中选择一个或多个工作流任务作为出口点,它们的集合称为出口点集合;在步骤(B)建立的工作流任务的网络连接模型中,选择一个或多个以上述出口点为起点的单向传递关系作为循环的出口,它们的集合称为出口集合;其中,出口不能包含在步骤(I)所选的子集中,一个出口点可以对应一个或多个出口,但一个出口只能对应一个出口点;将出口点集合和出口集合存储在数据存储服务器中的循环信息表中;(7)创建终止点集合和出口点集合的映射关系为步骤(4)创建的终止点集合和步骤(6)创建的出口点集合建立映射关系;一个终止点可以映射到一个或多个出口点上;一个出口点可以映射到一个或多个终止点上;当终止点终止一个循环时,工作流任务仅能从该终止点映射的出口点的出口继续传递;将终止点集合与出口点集合的映射关系存储到数据存储服务器中的循环控制表中;
(D)工作流管理服务器为步骤(B)创建的工作流任务的网络连接模型创建工作流实例,并控制工作流实例的运行;其中,工作流管理服务器通过查数据存储服务器中的循环信息表和循环控制表控制工作流实例中循环的执行,包括循环的启动控制和循环的终止控制;具体步骤如下(I)循环的启动控制工作流管理服务器判断正在执行的工作流任务是否包含在步骤(3)创建的启动点集合中;如果不包含,则该循环不启动;如果包含,则该工作流任务为循环的启动点;查询工作流数据存储服务器的循环信息表中该启动点上是否定义了启动条件;如果未定义启动条件,则该循环默认为无条件启动;如果定义了启动条件,判断启动条件是否成立若启动条件成立,则该循环启动;若启动条件不成立,则该循环不启动;循环启动后,工作流管理服务器将循环的状态由就绪转换成运行;循环中包含的工作流任务可以按照传递关系反复执行与传递;(II)循环的终止控制当循环处于运行状态时,工作流管理服务器判断正在执行的工作流任务是否包含在步骤(4)创建的终止点集合中;如果不包含,则该循环不终止;如果包含,则该工作流任务为循环的终止点;查询工作流数据存储服务器的循环信息表中该终止点上是否定义了终止条件;如果未定义终止条件,则该循环默认为无条件终止;如果定义了终止条件,判断终止条件是否成立若终止条件成立,则该循环终止;若终止条件不成立,则该循环不终止;①循环终止,工作流管理服务器将循环的状态由运行转换成终止;查询工作流数据存储服务器的循环控制表中该终止点对应的出口点,工作流任务从上述出口点的出口继续传递;工作流管理服务器将循环的状态由终止转换成退出,循环结束;②循环不终止,则执行下述步骤(i),直到循环结束;(i)工作流管理服务器判断正在执行的工作流任务是否包含在步骤(6)创建的出口点集合中;如果不包含,则工作流任务传递给步骤(B)创建的工作流任务的网络连接模型中有直接传递关系的其它工作流任务,转到步骤(II)继续执行直到循环结束;如果包含,则该工作流任务为循环的出口点;查询数据存储服务器的循环控制表,找出该出口点的出口,工作流任务通过除上述出口外的其它直接传递关系传递到其它工作流任务,转到步骤(II)继续执行直到循环结束。进一步的上述步骤(D)中(III)循环的状态包括就绪、运行、终止、退出;其中,循环的初始状态为就绪;循环状态的转换规则如下当工作流管理服务器判断循环的启动条件成立,循环启动或无条件启动后,循环的状态由就绪转换为运行;当工作流管理服务器判断循环的终止条件成立,循环终止或无条件终止,但是循环中的工作流任务还未从终止点对应出口点的出口传递出去,循环的状态由运行转换为终止;
当循环中的工作流任务从终止该循环的终止点所对应的出口点的出口传递出去后,循环的状态由终止转换为退出,循环结束。进一步的上述步骤(A)中,所述循环信息表中的信息包括循环路径、启动点、启动条件、终止点、终止条件、出口点、出口 ;所述循环控制表中的信息包括具有映射关系的终止点、出口点及出口。本发明具有如下有益效果现有文献只是根据路由特点对循环模式进行了分类,对于在工作流管理系统中如何控制循环,现有文献并没有提及。此外,在实际的工作流循环中,可能包含复杂的环形结构,还可能具有复杂的控制方法。如循环中可以包含控制条件,当控制条件成立时,循环才能进行或者才能停止。因此,提出了一种通过查表实现工作流循环控制的方法。和现有方法相比较,该循环控制方法可以解决结构较为复杂的循环,并且方案中设置的循环控制条件可以控制循环的启动和终止,循环控制条件的判断运行完全由工作流管理服务器控制,不受人为干涉而自动完成;循环的启用、执行和退出由工作流管理服务器通过查询数据库中的循环信息表和循环控制表的实现。


图I是用于实现本发明的一个示例系统包括的设备框图
图2是本发明的实例运行环境图3是工作流过程元素图形化表示;
图4工作流循环图形化表示示例;
图5是创建工作流循环的流程图6是循环的启动控制的流程图7是循环的终止控制的流程图。
具体实施例方式下面结合附图对本发明的具体实施做进一步描述图I是用于实现本发明的一个示例系统包括诸如计算设备等计算设备。计算设备可被配置成客户机、服务器。在最基本的配置中,计算设备通常包括至少一个处理单元、 系统存储器、程序。取决于计算设备的确切配置和类型,系统存储器可以是易失性的(如 RAM)、非易失性的(如ROM、闪存等)或者这两者的组合。系统存储器通常包括操作系统、应用程序,并可包括程序数据。计算设备可具有其它功能。如计算设备还可包括诸如磁盘、光盘等数据存储设备。 计算机存储介质可包括以存储诸如计算机可读指令、程序模块或其他数据信息的任何方法或技术实现的易失性、非易失性的、可移动的、不可移动的介质。系统存储器、可移动存储及不可移动存储都是计算机存储的示例。计算机存储介质包括,但不限于,RAM, ROM, EEPROM、 闪存或其他存储器技术,CD-ROM、数字多功能盘(DVD)或其他光学存储,磁带盒、磁盘存储或任何其它可用于存储期望信息并可由计算设备访问的介质。计算设备还可具有诸如键盘、鼠标、笔、语音输入设备、触摸输入设备等输入设备。还可包括诸如显示器、扬声器、打印机等输出设备。计算设备还包括设备通过网络与其他计算设备通信的通信连接。网络包括局域网和广域网。图2是本发明实例运行环境图,运行本发明的方法需要按照上图将计算设备联入网络。运行环境包含服务器端和客户端,以及连接服务器端和客户端的网络。其中网络可以是局域网和广域网。服务器由一个或多个工作流管理服务器和一个或多个数据存储服务器组成,将工作流管理服务器作为第一服务器,主要用于分发工作任务,将数据存储服务器作为第二服务器,主要用于存储相关数据。下述为实现本发明方法的详细步骤(A)、建立工作流节点模型①配置工作流管理服务器、数据存储服务器、客户端。配置工作流管理服务器选择图I所示的计算设备为工作流管理服务器的硬件配置,在工作流管理服务器计算设备上安装操作系统软件,其中操作系统软件可以是 Windows, linus, Unix,苹果OS等,并安装西安交通大学电气工程学院开发的工作流管理系统,以及运行工作流管理系统环境Java RunTime。配置数据存储服务器选择图I所示的计算设备为数据存储服务器的硬件配置, 在数据存储服务器安装操作系统软件以及数据库管理软件。Windows,linus, Unix,苹果 OS各类的各个版本是操作系统软件示例,数据库管理软件可以是Microsoft SQL Server, Visual FoxPro, Oracle, Microsoft Access, MySQL 等关系型数据库管理软件。配置客户端选择图I所示的计算设备为客户端的硬件配置,在客户端上至少安装有操作系统软件,例如Windows, linus, Unix,苹果OS等,浏览器,例如Internet Explorer, Firefox 等。②将工作流管理服务器、数据存储服务器、客户端按照图2进行网络连接,以连接于网络上的若干计算机客户端作为完成不同工作任务的执行单元;以连接于网络上的一个或多个第一服务器作为分发工作任务的工作流管理服务器;以连接于网络上的一个或多个第二服务器作为数据存储服务器;将服务器和计算机客户端作为工作流节点。其中数据存储服务器中至少包含循环信息表和循环控制表;所述循环信息表中的信息包括循环路径、启动点、启动条件、终止点、终止条件、出口点、出口 ;所述循环控制表中的信息包括具有映射关系的终止点、出口点及出口。(B)、建立工作流任务的网络连接模型工作流任务的网络连接指客户端与服务器之间的计算机网络连接。在工作流任务的网络连接模型中,工作流的任务是由计算机客户端负责执行的,一个工作流任务完成后即终止或者被传递到其它计算机客户端;任务的传递是单向的,依靠计算机之间的有线或无线网络连接实现;任意两个工作流任务之间最多只能有一个直接传递关系,其中,直接传递关系是指不通过其它任务的两个工作流任务之间的单向传递关系。但是允许一个工作流任务完成后被同时传递给多个工作流任务;工作流任务的网络连接模型由工作流任务和任务之间的单向传递关系组成。为了方便建立工作流任务的网络连接模型,采用图形化设计的形式表示工作流任务的网络连接模型,下面以圆圈表示工作流任务,以带箭头的弧表示网络连接,其中空箭头表示网络连接的起点的工作流任务上定义了条件,双箭头表示循环网络连接,起点带远点的弧表示循环的出口 ;工作流过程的图形化表示如图3所示;I)按照图3所示的工作流节点图形化表示形式及上述的工作流任务的关系在工作流管理服务器上建立工作流任务的网络连接模型,如图4所示;2)将建立的工作流节点的网络连接模型保存在数据存储服务器中。以上所述的工作流过程的网络连接关系是以XML格式或XPDL格式存储在数据存储服务器中或以二维表的形式存储在数据存储服务器上关系型数据库中。下面以图4所示的工作流流程为例,说明通过查表实现工作流循环控制的步骤。(C)创建循环按照下述步骤创建循环(I)在步骤⑶创建的网络连接模型中,选择一个包含有工作流任务和这些工作流任务间单向传递关系的子集;从该子集中任何一个工作流任务出发,都存在一个或多个单向传递关系,使得该工作流任务可以通过这些传递关系不断传递,并再次回到这个工作流任务;将该子集中的工作流任务和这些任务间的单向传递关系定义为一个循环,并存储到数据库存储服务器中的循环信息表中;其中,一个传递关系最多只能属于一个循环;(2)创建启动点集合在步骤(I)的子集中选择一个或多个工作流任务作为循环的启动点,它们的集合称为启动点集合;只有启动点才能启动一个循环;将启动点集合存储到数据库存储服务器器中的循环信息表中;(3)创建启动条件在步骤(2)创建的启动点上创建条件,该条件称为启动条件;只有当启动条件成立时,才允许启动一个循环;将启动条件存储到数据库存储服务器中的循环信息表中;一个循环中的某个启动点上,最多只能定义一个启动条件,如果没有定义启动条件,则默认为无条件启动循环;当循环启动后,循环中包含的任务可以按照传递关系反复执行与传递,一直到循环结束;(4)创建终止点集合在步骤(I)的子集中选择一个或多个工作流任务作为循环的终止点,它们的集合称为终止点集合;只有终止点才能终止一个循环;将终止点集合存储到数据库存储服务器中的循环信息表中;(5)创建终止条件在步骤(4)创建的终止点上创建条件,该条件称为终止条件;只有当终止条件成立时,才允许终止一个循环;将终止条件存储到数据库存储服务器中的循环信息表中;一个循环中的某个终止点上,最多只能定义一个终止条件,如果没有定义终止条件,则默认为无条件终止循环;(6)创建出口点集合和出口连接集合在步骤(I)的子集中选择一个或多个工作流任务作为出口点,它们的集合称为出口点集合;在步骤(B)建立的工作流任务的网络连接模型中,选择一个或多个以上述出口点为起点的单向传递关系作为循环的出口,它们的集合称为出口集合;其中,出口不能包含在步骤(I)所选的子集中,一个出口点可以对应一个或多个出口,但一个出口只能对应一个出口点;将出口点集合和出口集合存储在数据库存储服务器中的循环信息表中;(7)创建终止点集合和出口点集合的相互映射关系为步骤(4)创建的终止点集合和步骤(6)创建的出口点集合建立映射关系;一个终止点可以映射到一个或多个出口点上;一个出口点可以映射到一个或多个终止点上;当终止点终止一个循环时,工作流任务仅能从该终止点映射的出口点的出口继续传递;将终止点集合与出口点集合的映射关系存储到数据库存储服务器中的循环控制表中;下面以图4所示的工作流流程为例,说明创建工作流循环的具体过程,流程图如图5所示。循环LI的创建在如图4所示循环示例图中,选择包含有工作流任务和这些任务间单向传递关系的子集 setl ;其中 setl = {T2、T3、T4、T5、T6、d2、d3、d4、d5、d6};将 setl 定义为循环“LI”,得到该循环LI的循环路径为T2 — T3 — T4 — T5 — T6 — Τ2,将循环LI信息存储到数据库存储服务器中的循环信息表中。选择子集setl中的工作流任务T2作为循环LI的启动点,在启动点T2上创建启动条件Lls1 ;选择子集setl中的工作流任务T3作为循环LI的终止点,在终止点T3上创建终止条件Lle1 ;选择子集setl中的工作流任务T4作为循环LI的出口点,选择网络连接模型中以T4为起点的不属于循环LI的单向传递关系d8作为循环LI的出口 ;将启动点T2、启动条件Lls1、终止点T3、终止条件Lle1、出口点T4、出口 d8存储到数据库存储服务器中的循环信息表中。 为终止点T3和出口点T4建立映射关系,将终止点T3、出口点T4和出口 d8存储到数据库存储服务器中的循环控制表中。循环L2的创建在如图4所示循环示例图中,选择包含有工作流任务和这些任务间单向传递关系的子集 set2 ;其中 set2 = {T4、T8> T9> T10> Tn、T12> Τ13、Τ14、d8、d9、d1(l、 dn、d12、d13、d14、d15};将set2定义为循环“L2”,得到该循环L2的循环路径为 T8 — T9 — T10 — T11 — T12 — T13 — T14 — T4 — T8,将循环L2信息存储到数据库存储服务器中的循环信息表中。选择子集set2中的工作流任务T8作为循环L2的启动点,在启动点T8上创建启动条件L2Sl ;选择子集set2中的工作流任务T1(I、T13作为循环L2的终止点;在终止点Tltl上创建终止条件L2ei,在终止点T13上创建终止条件L2e2 ;选择子集set2中的工作流任务T1(l、Tn 作为循环L2的出口点,选择网络连接模型中以Τ1(ι、Τη为起点的不属于循环L2的单向传递关系d19、d16、d17作为循环L2的出口 ;将启动点T8、启动条件L2Sl、终止点Tltl及T13、终止条件L2ei及L2e2、出口点Tltl及Tn、出口 d16、d17及d19存储到数据库存储服务器中的循环信息表中。为终止点和出口点建立映射关系终止点Tltl映射到出口点T11 ;终止点T13映射到出口点Tltl ;将终止点T1(l、T10映射的出口点T11及出口 d16、d17 ;终止点T13、T13映射的出口点 T10及出口 d19存储到数据库存储服务器中的循环控制表中。得到的循环信息表、循环控制表如下表所示
权利要求
1.一种通过查表实现工作流循环控制的方法,其特征在于,包括以下步骤(A)建立工作流节点模型工作流节点由服务器和计算机客户端组成,以连接于网络上的若干计算机客户端作为工作流任务的执行单元;以连接于网络上的一个或多个第一服务器作为分发工作流任务的工作流管理服务器;以连接于网络上的一个或多个第二服务器作为数据存储服务器;其中数据存储服务器中至少包含有循环信息表和循环控制表;(B)建立工作流任务的网络连接模型工作流的任务是由计算机客户端负责执行的,一个工作流任务执行完毕后即终止或者被传递到其它计算机客户端;任务的传递是单向的,依靠计算机之间的有线或无线网络连接实现;任意两个工作流任务之间最多只能有一个直接传递关系,但允许一个工作流任务完成后被同时传递给多个工作流任务;其中,直接传递关系是指不通过其它任务的两个工作流任务之间的单向传递关系;网络连接模型由工作流任务和相邻任务间的单向传递关系组成;将这种工作流任务的网络连接模型存储在数据存储服务器中;(C)创建循环按照下述步骤创建循环(1)在步骤(B)创建的网络连接模型中,选择一个包含有工作流任务和这些工作流任务间单向传递关系的子集;从该子集中任何一个工作流任务出发,都存在一个或多个单向传递关系,使得该工作流任务可以通过这些传递关系不断传递,并再次回到这个工作流任务;将该子集中的工作流任务和这些任务间的单向传递关系定义为一个循环,并存储到数据存储服务器中的循环信息表中;其中,一个传递关系最多只能属于一个循环;(2)创建启动点集合在步骤(I)的子集中选择一个或多个工作流任务作为循环的启动点,它们的集合称为启动点集合;只有启动点才能启动一个循环;将启动点集合存储到数据存储服务器中的循环信息表中;(3)创建启动条件在步骤(2)创建的启动点上创建条件,该条件称为启动条件;只有当启动条件成立时, 才允许启动一个循环;将启动条件存储到数据存储服务器中的循环信息表中;一个循环中的某个启动点上,最多只能定义一个启动条件,如果没有定义启动条件,则默认为无条件启动循环;当循环启动后,循环中包含的任务可以按照传递关系反复执行与传递,一直到循环结束;(4)创建终止点集合在步骤(I)的子集中选择一个或多个工作流任务作为循环的终止点,它们的集合称为终止点集合;只有终止点才能终止一个循环;将终止点集合存储到数据存储服务器中的循环信息表中;(5)创建终止条件在步骤(4)创建的终止点上创建条件,该条件称为终止条件;只有当终止条件成立时, 才允许终止一个循环;将终止条件存储到数据存储服务器中的循环信息表中;一个循环中的某个终止点上,最多只能定义一个终止条件,如果没有定义终止条件,则默认为无条件终止循环;(6)创建出口点集合和出口集合在步骤(I)的子集中选择一个或多个工作流任务作为出口点,它们的集合称为出口点集合;在步骤(B)建立的工作流任务的网络连接模型中,选择一个或多个以上述出口点为起点的单向传递关系作为循环的出口,它们的集合称为出口集合;其中,出口不能包含在步骤(I)所选的子集中,一个出口点可以对应一个或多个出口,但一个出口只能对应一个出口点;将出口点集合和出口集合存储在数据存储服务器中的循环信息表中;(7)创建终止点集合和出口点集合的映射关系为步骤⑷创建的终止点集合和步骤(6)创建的出口点集合建立映射关系;一个终止点可以映射到一个或多个出口点上;一个出口点可以映射到一个或多个终止点上;当终止点终止一个循环时,工作流任务仅能从该终止点映射的出口点的出口继续传递;将终止点集合与出口点集合的映射关系存储到数据存储服务器中的循环控制表中;(D)工作流管理服务器为步骤(B)创建的工作流任务的网络连接模型创建工作流实例,并控制工作流实例的运行;其中,工作流管理服务器通过查数据存储服务器中的循环信息表和循环控制表控制工作流实例中循环的执行,包括循环的启动控制和循环的终止控制;具体步骤如下(I)循环的启动控制工作流管理服务器判断正在执行的工作流任务是否包含在步骤(3)创建的启动点集合中;如果不包含,则该循环不启动;如果包含,则该工作流任务为循环的启动点;查询工作流数据存储服务器的循环信息表中该启动点上是否定义了启动条件;如果未定义启动条件,则该循环默认为无条件启动; 如果定义了启动条件,判断启动条件是否成立若启动条件成立,则该循环启动;若启动条件不成立,则该循环不启动;循环启动后,工作流管理服务器将循环的状态由就绪转换成运行;循环中包含的工作流任务可以按照传递关系反复执行与传递;(II)循环的终止控制当循环处于运行状态时,工作流管理服务器判断正在执行的工作流任务是否包含在步骤(4)创建的终止点集合中;如果不包含,则该循环不终止;如果包含,则该工作流任务为循环的终止点;查询工作流数据存储服务器的循环信息表中该终止点上是否定义了终止条件;如果未定义终止条件,则该循环默认为无条件终止; 如果定义了终止条件,判断终止条件是否成立若终止条件成立,则该循环终止;若终止条件不成立,则该循环不终止;①循环终止,工作流管理服务器将循环的状态由运行转换成终止;查询工作流数据存储服务器的循环控制表中该终止点对应的出口点,工作流任务从上述出口点的出口继续传递;工作流管理服务器将循环的状态由终止转换成退出,循环结束;②循环不终止,则执行下述步骤(i),直到循环结束;(i)工作流管理服务器判断正在执行的工作流任务是否包含在步骤(6)创建的出口点集合中;如果不包含,则工作流任务传递给步骤(B)创建的工作流任务的网络连接模型中有直接传递关系的其它工作流任务,转到步骤(II)继续执行直到循环结束;如果包含,则该工作流任务为循环的出口点;查询数据存储服务器的循环控制表,找出该出口点的出口, 工作流任务通过除上述出口外的其它直接传递关系传递到其它工作流任务,转到步骤(II) 继续执行直到循环结束。
2.根据权利要求I所述通过查表实现工作流循环控制的方法,其特征在于,步骤(D)中所述循环的状态包括就绪、运行、终止、退出;其中,循环的初始状态为就绪;循环状态的转换规则如下当工作流管理服务器判断循环的启动条件成立,循环启动或无条件启动后,循环的状态由就绪转换为运行;当工作流管理服务器判断循环的终止条件成立,循环终止或无条件终止,但是循环中的工作流任务还未从终止点对应出口点的出口传递出去,循环的状态由运行转换为终止;当循环中的工作流任务从终止该循环的终止点所对应的出口点的出口传递出去后,循环的状态由终止转换为退出,循环结束。
3.根据权利要求I所述通过查表实现工作流循环控制的方法,其特征在于,步骤(A) 中,所述循环信息表中的信息包括循环路径、启动点、启动条件、终止点、终止条件、出口点、出口 ;所述循环控制表中的信息包括具有映射关系的终止点、出口点及出口。
全文摘要
本发明公开了一种用于实现工作流循环控制的查表方法,该方法通过建立工作流节点模型、建立工作流任务的网络连接模型、创建循环、工作流管理服务器控制循环的启动与终止等步骤,在工作流模型的循环中设置循环控制条件,通过查询数据存储服务器中的循环信息表与循环控制表,控制循环的启动和终止,从而解决结构较为复杂的循环的控制,具有很好的可控性和可操作性。且该方法以网络拓扑结构为基础,具有一定的普遍性,可以扩展应用到其它以网结构为基础的工作流模型中,具有可移植性。
文档编号G06Q10/06GK102609809SQ20121001599
公开日2012年7月25日 申请日期2012年1月18日 优先权日2012年1月18日
发明者胡飞虎, 邵晓寒 申请人:西安交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1