内部资料注意保密HY-UEP应用开发平台开发指南工作流开发分册烟台海颐软件股份有限公司2013年1月HY-UEP应用开发平台开发指南工作流开发分册烟台海颐软件股份有限公司第1页共19页文档说明文档名称HY-UEP应用开发平台开发指南工作流开发分册文档编号文档版本0.1文档密级内部版本0.1.0.2文档类型■初稿□征集意见稿□最终稿文档编制编制时间2013-01-05文档审核审核时间文档审核审核时间所属项目项目编号文档备注修订记录修订人修订内容摘要产生版本修订日期审核人批准人批准时间HY-UEP应用开发平台开发指南工作流开发分册烟台海颐软件股份有限公司第1页共19页HY-UEP应用开发平台开发指南工作流开发分册烟台海颐软件股份有限公司第2页共19页目录1前言...........................................................................11.1编写目的.................................................................11.2适用范围.................................................................11.3相关说明.................................................................12综述...........................................................................12.1系统架构.................................................................12.2开发流程.................................................................23开发指南.......................................................................33.1开发环境配置.............................................................33.2任务相关数据说明.........................................................33.2.1模板相关数据.......................................................33.2.2实例及任务列表.....................................................43.2.3任务执行情况.......................................................53.2.4待办任务...........................................................63.3启动流程实例.............................................................63.4流程传递指南.............................................................73.4.1正常传递...........................................................73.4.2选择传递...........................................................83.4.3派工提交...........................................................83.4.4回退...............................................................93.4.5任务抽回...........................................................93.5人员分配................................................................103.6流程和办理进度的网页监控................................................113.7重要常量说明............................................................113.8系统配置说明............................................................134开发示例......................................................................144.1自由流的实现............................................................144.2会签的实现..............................................................154.3并行子流程的实现........................................................154.4自动活动的实现..........................................................154.5流程初始化参数的实现....................................................155常见问题解答..................................................................15HY-UEP应用开发平台开发指南工作流开发分册烟台海颐软件股份有限公司第1页共19页1前言1.1编写目的工作流平台依托海颐企业级应用开发平台开发实现,为方便进行二次开发和流程调度,单独封装了一套进行流程调度的API接口。这些接口表现为一个JAVA类的方法,并通过参数和返回值进行流程调度和信息交互。通过这些API的调用,可以协助开发者实现任务的提交,激发工作流进行相应的调度等。使用HY-UEP平台的工作流模块进行二次开发,需要了解系统提供的这些API接口,需要掌握这些接口的含义、使用场合、参数的含义以及遵循一些约定等,本文档详细阐述了这些API编程细节,并对调度引擎中的重要常量、重要参数、常见示例等做了说明;从开发指南到开发示例,一步步指导开发人员完成工作流的二次开发工作。1.2适用范围工作流模块是HY-UEP的选配模块,因此只有在UEPSTUDIO集成开发环境中创建UEP项目时选择了支持工作流模块的特性,项目中才能进行工作流的相关开发工作。本文档面向的读者主要是使用HY-UEP平台的工作流模块进行二次开发的开发人员。1.3相关说明在工作流调度接口中,使用最多的是各类任务的提交接口,本文档主要详细介绍了任务正常提交、选择传递、派工提交、任务激活、默认回退以及任务抽回等接口。本文档还介绍了几种常用业务需求的解决方案:自由流的实现、会签的实现、并行子流程的实现、自动活动的实现以及流程初始化参数的实现等。要求预期读者需要具备一定的工作流基础知识,并且在开发过程中可能会涉及到众多的平台知识,请参阅HY-UEP相关文档。2综述2.1系统架构HY-UEP的工作流平台作为海颐企业应用平台的一个系统模块,以业务服务的形式为企业应用提供服务。工作流平台是基于WfMC的工作流模型,结合多年的开发经验开发出的遵循xpdHY-UEP应用开发平台开发指南工作流开发分册烟台海颐软件股份有限公司第2页共19页l模型标准,满足分布式、异构环境要求的工作流系统。体系结构如下图所示:HY-UEPStudio流程建模流程监控业务系统流程引擎工作流定义接口流程监控接口流程调度接口工作流接口引擎服务时限服务事件服务应用代理日志服务调度内核流程调度活动执行工作项处理JPA持久机制自定义持久机制工作流平台包括流程建模工具和工作流引擎两部分,流程建模工具用于流程定义,集成到了UEPStudio开发环境中。流程引擎负责流程的调度和运行,包括三部分:工作流接口、调度内核和引擎服务。工作流接口对外提供流程定义、监控和调度接口。调度内核负责流程调度,产生流程实例、活动实例和任务项并处理,处理过程中调用引擎服务的事件服务、时限服务、应用代理和日志服务。2.2开发流程UEP项目如果使用流程模块,首先要在项目上增加流程模块的支持,有了流程模块的支持后,就可以绘制业务流程模板,进行基于流程的业务流程开发了。具体开发过程如下:1.分析业务需求,找出需要绘制的业务流程模板。2.归纳业务办理步骤,创建标准环节,为流程绘制做准备。3.绘制流程模板,请参考流程建模的操作手册。校验成功后加载流程模板。4.在业务应用中建立业务功能和流程模板的对应方式,并确定业务工作单和流HY-UEP应用开发平台开发指南工作流开发分册烟台海颐软件股份有限公司第3页共19页程实例的关联方法,以便运行业务功能时能够启动对应模板的流程实例,并把流程实例关联到业务工作单上。5.显示待办任务。6.在业务办理界面中增加流程传递的功能。下面的章节对后面几个过程进行说明。3开发指南3.1开发环境配置工作流模块只能依托UEP项目进行开发,所以得首先安装集成开发环境UEP-SUTDIO,然后在新建UEP项目时要勾选“工作流模块”,也可以在已有的UEP项目中再增加“工作流模块”的支持。详细操作参考《UEPStudio平台操作指南.doc》。3.2任务相关数据说明3.2.1模板相关数据3.2.1.1模板类别EP_WF_TEMPLATE_CLASS:模板类别表,存储工作流系统中定义的模板分类信息。字段说明:列名代码类型说明模板类别号TEMPLATE_CLASS_NOnumber(8)上级模板类别号UP_CLASS_NOnumber(8)模板类别名TEMPLATE_CLASS_NAMEvarchar2(64)使用系统标志MODULE_IDvarchar2(32)排序序号ORDER_CODEvarchar2(32)备注REMARKvarchar2(255)3.2.1.2模板库主信息EP_WF_TEMPLATE:存储工作流系统中已经定义的模板信息。字段说明:列名代码说明类型模板号TEMPLATE_NO模板的编号,与版本号一起唯一标识一模板number(8)版本号VERSION_NO标识一模板的具体版本,与模板号一起唯一标识一模板varchar2(8)模板名TEMPLATE_NAME模板的名称varchar2(64)模板类别号TEMPLATE_CLASS_NO模板所属的模板类别号number(8)是否运行版RUN_FLAG是否是当前执行版,’Y’,’N’varchar2(1)模板对应程序窗口TAG一个流程模板对应的程序主窗口或主类varchar2(128)子流程标识AS_SUBFLOW标识一模板是否只能作为子流程使用,不能独立启动实例varchar2(1)流程模板类型MODEL_TYPE流程模板类型,1:模型1;2:模型2varchar2(1)HY-UEP应用开发平台开发指南工作流开发分册烟台海颐软件股份有限公司第4页共19页列名代码说明类型所属部门DEPARTMENTnumber(10)创建时间CREATE_TIMEdate创建者CREATORvarchar2(16)合格标志VALID_FLAGY:合格;N不合格varch