一种拆分工作流的方法及装置的制作方法

文档序号:6580541阅读:192来源:国知局

专利名称::一种拆分工作流的方法及装置的制作方法
技术领域
:本发明涉及数据处理领域,特别是涉及一种拆分工作流的方法及装置。
背景技术
:企业资源计划(EnterpriseResourcePlanning,ERP)系统,是指建立在信息技术基础上,对企业的所有资源(物流、资金流、信息流或人力资源)进行整合集成管理,采用信息化手段实现企业供销链管理,从而达到对供应链上的每一环节实现科学管理的目的。在ERP系统中,进行工作流审批可以对一个单据进行流程审批,也可以对多个单据,即批量单据进行批量审批,以提高审批效率。例如批量审批请假单、加班单或出差单等。现有技术中有一种进行拆分工作流的方法,目前一般采用在批量提交工作流之后,所有工作流生成一个流程实例;或者,批量提交工作流之后,工作流中的每一张单据对应生成一个流程实例。该流程实例可以应用某工作流流程而实际产生的一个审批业务。例如,定义了请假工作流程A,员工B在流程A上请假,则形成一个流程实例C,即C就是员工B在流程A上的一个流程实例。从上述过程中可以看出,当多个单据的工作流提交后生成一个流程实例,如果遇到工作流分支,所有单据只能走一个分支,而不能进行拆分;或者,一张单据对应生成一个流程实例时,就将工作流程复杂化了,而且每一个单据都进行拆分,直接导致了拆分的性能和效率。因此,目前需要本领域技术人员迫切解决的一个技术问题就是如何能够提出一种拆分工作流的方法,用以解决现有技术中拆分的性能和效率低下的问题。
发明内容本发明所要解决的技术问题是提供一种拆分工作流的方法,用以解决现有技术中拆分的性能和效率低下的问题。本发明的另一个目的是将上述构思应用于具体的应用环境中,提供一种拆分工作流的装置,从而保证该方法的实现和应用。为解决上述技术问题,本发明实施例提供了一种拆分工作流的方法,包括按照预置的流程变量,对提交的工作流中的单据进行匹配;根据匹配结果对所述工作流进行拆分。优选的,所述按照预置的流程变量,对提交的工作流中的单据进行匹配,具体包括将预置的流程变量与工作流中的单据的相关字段进行匹配;将不同的流程变量匹配到的单据,组合成对应的不同的单据集合。优选的,所述根据匹配结果对所述工作流进行拆分,具体包括将所述不同的单据集合生成所述工作流中相应的流程实例;将所述流程实例按照预置的流程分支发送至后续流程节点。优选的,所述对提交的工作流中的单据进行匹配之前,还包括设置当前工作流的流程变量、流程分支和流程节点。优选的,所述根据匹配结果对所述工作流进行拆分之后,还包括按照预置的流程变量对所述拆分后的工作流重新组合,以便于对所述重新组合后的单据进行审批。匹配模块,用于按照预置的流程变量,对提交的工作流中的单据进行匹配;拆分模块,用于根据匹配结果对所述工作流进行拆分。优选的,所述匹配模块具体包括匹配子模块,用于将预置的流程变量与工作流中的单据的相关字段进行匹配;组合子模块,用于将不同的流程变量匹配到的单据,组合成对应的不同的单据集合。优选的,所述拆分模块具体包括生成子模块,用于将所述不同的单据集合生成所述工作流中相应的流程实例;发送子模块,用于将所述流程实例按照预置的流程分支发送至后续流程节点。优选的,所述装置还包括设置模块,用于预置当前工作流的流程变量、流程分支和流程节点。优选的,所述装置还包括重新组合模块,用于按照预置的流程变量对所述拆分后的工作流重新组合,以便于对所述重新组合后的单据进行审批。与现有技术相比,本发明具有以下优点在本实施例中,可以按照预置的流程变量,对提交的工作流中的单据进行匹配;并根据匹配结果对所述工作流进行拆分。运用本发明实施例的方法或装置,就可以按照流程变量的设置来生成对应的流程实例,通过在这种情况下生成流程实例,可以根据实际情况完全满足用户的需求,提高了拆分工作流的灵活性,同时也提高了批量提交工作流的性能。为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本发明的一种拆分工作流的方法实施例1的流程图;图2是本发明的一种拆分工作流的方法实施例2的流程图;图3是本发明中流程节点、流程分支的界面示意图;图4是本发明的方法实施例2中的流程设置的界面示意图;图5是实际应用中复杂业务场景中流程设置的界面示意图;图6是本发明的一种拆分工作流的装置实施例1的结构示意图;图7是本发明的一种拆分工作流的装置实施例2的结构示意图。具体实施例方式为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进-一步详细的说明。本发明可用于众多通用或专用的计算装置环境或配置中。例如个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。本发明可以在由计算机执行的计算机可执行指令的--般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。参考图l,示出了本发明的一种拆分工作流的方法实施例1的流程图,可以包括以下步骤步骤101:按照预置的流程变量,对提交的工作流中的单据进行匹配。在本实施例中,所述流程变量为预先设置的变量,该变量通常来自业务单据的属性。例如,对于工作流中的单据是请假单来说,流程变量可以为请假天数<=3天,或者,请假天数>3天。根据流程变量中对单据属性的设置内容,可以从提交的工作流中的单据匹配获取到符合所述流程变量的设置内容的单据,即是匹配的结果为符合不同的流程变量条件的不同单据组合。步骤102:根据匹配结果对所述工作流进行拆分。在实际中,则可以根据步骤101中匹配出的不同的单据集合,对工作流进行拆分。因为步骤101中已经匹配出了符合不同的流程变量条件的不同单据组合,将不同的单据组合生成不同的流程实例即可。在生成流程实例的过程中,还可以根据预置的流程分支,通过预置的流程变量来自动组合工作流中的单据,将每一个单据组合生成为一个流程实例。在本实施例中,能根据流程变量智能拆分工作流,这样在处理工作流中的单据时,就可以按照流程变量的设置来生成对应的流程实例,在这种情况下生成流程实例,可以根据实际情况完全满足用户的需求,提高了拆分工作流的灵活性,同时也提高了批量提交工作流的性能。参考图2,示出了本发明的一种拆分工作流的方法实施例2的流程图,本实施例可以包括以下步骤在本实施例中,需要预先设置当前工作流的流程变量、流程分支和流程节点。其中,所述流程节点指工作流流程中的一个处理点。流程分支即工作流分支条件。当某一个流程节点存在至少两个输出路径时,则称该流程节点存在流程分支。参考图3,则有4个流程节点,并且流程节点"本人"这一节点存在到达流程节点"直接上级"和"人力资源总监"的两个输出路径,即流程节点"本人"存在流程分支。在本实施例中,可以设置流程发起人的流程节点"本人",设置流程处理人的流程节点为"直接上级"和"间接上级",同时设置流程节点"本人"至流程节点"直接上级"的流程分支,设置流程节点"本人"至流程节点"间接上级"的流程分支。并且,设置流程节点"本人"中流程变量,在本实施例中,流程变量1为"请假天数<=3天",流程变量2为"请假天数>3天"。本实施例的流程设置可以参考图4所示。前述设置的流程变量、流程分支和流程节点可以在实际中形成一个规则,通过可扩展标记语言(XML)可以保存到数据库中。步骤201:将预置的流程变量与工作流中的单据的相关字段进行匹配。参考表1所示,为本实施例中所述工作流的部分单据,预置的流程变量1和流程变量2对所述单据中的"请假天数"字段进行匹配。表1<table>tableseeoriginaldocumentpage6</column></row><table>歩骤202:将不同的流程变量匹配到的单据,组合成对应的不同的单据集合。通过流程变量1与提交的所有请假单的"请假天数"字段进行匹配,自动组合成"请假天数<=3天"的单据集合,然后在通过流程变量2的匹配自动组合成"请假天数>3天"的单据集合。在本实施例中,即分别为职员为"EM001、EM002、EM003和EM006"的单据集合,以及职员为"EM004和EM005"的单据集合。步骤203:将所述不同的单据集合生成所述工作流中相应的流程实例。在本步骤中,需要首先生成一个流程实例:PO()()l,该流程实例中所有单据都满足"请假天数<=3天",再生成一个流程实例P0002,该流程实例中所有单据都满足"请假天数>3天"。则针对当前提交的工作流,根据预置的流程变量,只形成两个流程实例"P0001和P0002",参考表2所示。表2<table>tableseeoriginaldocumentpage7</column></row><table>步骤204:将所述流程实例按照预置的流程分支发送至后续流程节点。在本实施例中,后续流程节点分别为"直接上级"和"间接上级",在实际中消息系统可以分别向后续流程节点发出一条审批消息,提醒"直接上级"和"间接--匕级"要对流程进行审批。所述审批消息中可以携带预置的流程变量信息。在本实施例中,即是将两个流程实例"P()()()l和TO()()2"分别发送至"直接上级"和"间接上级",同时通知流程节点"直接上级"和"间接上级"进行后续审批。歩骤205:按照预置的流程变量对所述拆分后的工作流重新组合,以便于对所述重新组合后的单据进行审批。因为在实际中,某个后续流程节点,可能会接收到当前流程节点多次提交的工作流中的不同单据集合,因此,尽管在流程变量相同的情况下,也有可能需要后续审批多个流程实例中的单据。因此,流程节点"直接上级"根据得到的流程变量1的值对接收到的多个单据集合进行组合。对单据集合进行重新组合之后,某个后续流程节点就可以后续选择符合同一个流程变量的单据组合进行审批。本实施例所述的方法还可以适用于ERP系统中的加班单、出差单以及人事批量异动等。本实施例的方法可以根据流程变量智能合并工作流中的单据,并且在审批之前,对批量工作流进行拆分,同时还能将拆分之后的各批工作流进行合并,以便于后续审批的方便。因此,本实施例的方法大大提高了工作流提交的效率和性能,同时也实现了审批优化。需要说明的是,本发明实施例中,根据应用场景的不同,所述流程变量还可以设置多个。下面介绍一种实际应用中的场景,将重点阐述根据流程变量合并审批的方式。在实际业务中,请假流程可能还要复杂得多。因此,针对方法实施例2中职员提交的工作流在流程节点"直接上级"审批后还会出现分"假期类别"再次审批的情况。请参考图5所示,例如"请假天数<=3天"的流程分支还需要再次进行分支,即是流程节点"直接上级"需要根据不同的流程变量来进行分流。"请假天数<=3天"的"年假"需要拆分至流程节点"年假审核员",而"非年假"的单据则需要拆分至流程节点"普通审核员"进行审批。最后,流程节点"年假审核员"和"普通审核员"的后续流程节点"领导审核"则对所有的流程分支进行汇总。在该业务场景下的流程设置可以如下所示。流程节点设置在设置流程节点时在方法实施例2中增加流程节点"年假审核员"、"普通审核员"和"领导审批"。流程分支设置同时增加流程节点"直接--匕级"至"年假审核员"至"领导审批"的分支,以及流程节点"直接上级"至"普通审核员"至"领导审批"的分支,以及增加"间接上级"至"领导审批"分支。流程变量设置增加设置流程节点"直接上级"中的流程变量。例如,流程变量3为"请假类型=年假",流程变量4为"请假类型O年假"。即是增加了对流程节点的判断条件,拆分工作流的流程可以根据这个流程变量分流至不同的流程分支。后续的拆分方法和实施例1和2相同,在此不再赘述。需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为-系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。参考图6,示出了本发明的一种拆分工作流的装置实施例1的结构框图,可以包括以下模块匹配模块6()1,用于按照预置的流程变量,对提交的工作流中的单据进行匹配。在本实施例中,所述流程变量为预先设置的变量,该变量通常来自业务单据的属性。例如,对于工作流中的单据是请假单来说,流程变量可以为请假天数<=3天,或者,请假天数>3天。根据流程变量中对单据属性的设置内容,可以从提交的工作流中的单据匹配获取到符合所述流程变量的设置内容的单据,即是匹配的结果为符合不同的流程变量条件的不同单据组合。拆分模块602,用于根据匹配结果对所述工作流进行拆分。在实际中,则可以根据匹配模块601匹配出的不同的单据集合,对工作流进行拆分。因为已经匹配出了符合不同的流程变量条件的不同单据组合,将不同的单据组合生成不同的流程实例即可。在生成流程实例的过程中,还可以根据预置的流程分支,通过预置的流程变量来自动组合工作流中的单据,将每一个单据组合生成为一个流程实例。在本实施例中,能根据流程变量智能拆分工作流,这样在处理工作流中的单据时,就可以按照流程变量的设置来生成对应的流程实例,在这种情况下生成流程实例,可以根据实际情况完全满足用户的需求,提高了拆分工作流的灵活性,同时也提高了批量提交工作流的性能。参考图7,示出了本发明的一种拆分工作流的装置实施例2的结构框图,可以包括以下模块设置模块701,用于预置当前工作流的流程变量、流程分支和流程节点。在本实施例中,需要预先设置当前工作流的流程变量、流程分支和流程节点。其中,所述流程节点指工作流流程中的一个处理点。流程分支即工作流分支条件。当某一个流程节点存在至少两个输出路径时,则称该流程节点存在流程分支。参考图2,则有4个流程节点,并且流程节点"本人"这一节点存在两个输出路径"直接....匕级"和"人力资源总监",即"本人"流程节点有流程分支。在本实施例中,可以设置流程发起人的流程节点"本人",设置流程处理人的流程节点为"直接上级"和"间接上级",同时设置流程节点"本人"至流程节点"直接上级"的流程分支,设置流程节点"本人"至流程节点"间接上级"的流程分支。并且,设置流程节点"本人"中流程变量,在本实施例中,流程变量1为"请假天数<=3天",流程变量2为"请假天数>3天"。前述设置的流程变量、流程分支和流程节点可以在实际中形成一个规则,通过可扩展标记语言(XML)可以保存到数据库中。匹配子模块702,用于将预置的流程变量与工作流中的单据的相关字段进行匹配。组合子模块703,用于将不同的流程变量匹配到的单据,组合成对应的不同的单据隹A朱O0生成子模块704,用于将所述不同的单据集合生成所述工作流中相应的流程实例。发送子模块705,用于将所述流程实例按照预置的流程分支发送至后续流程节点。重新组合模块706,用于按照预置的流程变量对所述拆分后的工作流重新组合,以便于对所述重新组合后的单据进行审批。本实施例所述的装置还可以适用于ERP系统中的加班单、出差单以及人事批量异动等。本实施例的装置可以根据流程变量智能合并工作流中的单据,并且在审批之前,对批量工作流进行拆分,同时还能将拆分之后的各批工作流进行合并,以便于后续审批的方便。因此,采用本实施例的装置大大提高了工作流提交的效率和性能,同时也实现了审批优化。需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。需要说明的是,术语"包括"、"包含"或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句"包括一个……"限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。以上对本发明所提供的一种拆分工作流的方法及拆分工作流的装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。权利要求一种拆分工作流的方法,其特征在于,包括按照预置的流程变量,对提交的工作流中的单据进行匹配;根据匹配结果对所述工作流进行拆分。2.如权利要求1所述的方法,其特征在于,所述按照预置的流程变量,对提交的工作流中的单据进行匹配,具体包括将预置的流程变量与工作流中的单据的相关字段进行匹配;将不同的流程变量匹配到的单据,组合成对应的不同的单据集合。3.如权利要求2所述的方法,其特征在于,所述根据匹配结果对所述工作流进行拆分,具体包括将所述不同的单据集合生成所述工作流中相应的流程实例;将所述流程实例按照预置的流程分支发送至后续流程节点。4.如权利要求1所述的方法,其特征在于,所述对提交的工作流中的单据进行匹配之前,还包括设置当前工作流的流程变量、流程分支和流程节点。5.如权利要求卜4任意一项所述的方法,其特征在于,所述根据匹配结果对所述工作流进行拆分之后,还包括按照预置的流程变量对所述拆分后的工作流重新组合,以便于对所述重新组合后的单据进行审批。6.—种拆分工作流的装置,其特征在于,包括匹配模块,用于按照预置的流程变量,对提交的工作流中的单据进行匹配;拆分模块,用于根据匹配结果对所述工作流进行拆分。7.如权利要求6所述的装置,其特征在于,所述匹配模块具体包括匹配子模块,用于将预置的流程变量与工作流中的单据的相关字段进行匹配;组合子模块,用于将不同的流程变量匹配到的单据,组合成对应的不同的单据集合。8.如权利要求7所述的装置,其特征在于,所述拆分模块具体包括生成子模块,用于将所述不同的单据集合生成所述工作流中相应的流程实例;发送子模块,用于将所述流程实例按照预置的流程分支发送至后续流程节点。9.如权利要求6所述的装置,其特征在于,所述装置还包括设置模块,用于预置当前工作流的流程变量、流程分支和流程节点。10.如权利要求6-9任意--项所述的装置,其特征在于,所述装置还包括重新组合模块,用于按照预置的流程变量对所述拆分后的工作流重新组合,以便于对所述重新组合后的单据进行审批。全文摘要本发明提供了一种拆分工作流的方法及装置,所述方法包括按照预置的流程变量,对提交的工作流中的单据进行匹配;并根据匹配结果对所述工作流进行拆分。运用本发明实施例的方法或装置,就可以按照流程变量的设置来生成对应的流程实例,通过在这种情况下生成流程实例,可以根据实际情况完全满足用户的需求,提高了拆分工作流的灵活性,同时也提高了批量提交工作流的性能。文档编号G06Q10/00GK101719234SQ200910174390公开日2010年6月2日申请日期2009年9月18日优先权日2009年9月18日发明者熊志强,韦光亮申请人:金蝶软件(中国)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1