您的位置:首页 > 其它

如何使用K2.Net 2003设计流程

2007-08-30 09:34 295 查看
今天,我们用K2.Net 2003设计一个流程。

在K2.Net 2003中,流程设计工具叫做K2.Net 2003 Studio,这是一个图形化的流程开发、设计和部署环境。K2.Net 2003 Studio对流程的组织方式,如同Visual Studio .Net 2003,同样由Solution,Project组成,接下来才是Process。K2.Net 2003 Studio只能同时打开一个Solution,但可以同时打开多个Project。

现在我们模拟一个采购申请的流程。

企业内有用户要申请购买某个物品,他打开采购申请的Web窗体,填写相关的申请信息,比如申请采购的物品类型(Software, Hardware, Publications, and Services)。然后点击窗体中的提交按钮;
表单提交后,K2流程开始流转。首先K2 Server会判断物品类型,如果是Software或者 Hardware,申请单就会发给IT Department;如果是其他类别,申请单会直接发给申请者的经理去做审批;
IT Department收到申请后,首先检查所申请的物品是否有库存。相关的任务执行人会进入他的K2.Net WorkSpace的WorkList中执行这个任务。如果有库存,就不需要采购,采购申请被否决,流程停止,同时申请人会收到一份通知邮件。如果没有库存,流程就会向下流转到申请者的经理做审批;
申请者的经理收到申请之后进入他的WorkList执行审批。他可以从Web窗体中选择同意或者否决,并且可以输入否决的原因。同时K2 Server会把一份同意或者否决邮件发送给申请者。流程到此结束。

下面开始在K2 Studio中设计这个流程。

第一步:创建流程解决方案、项目和流程

打开K2.Net Studio,新建一个Solution。选择Solution的路径,输入Solution名称:IT部门解决方案。K2 Solution的名称扩展名为.ksn。在新建的Solution上点击鼠标右键,选择Add New Project。在弹出的窗口中输入Project的名称:IT部门项目,并选择Project所使用的脚本语言(VB.Net或者C#)。
K2 Studio会为新建的Project自动创建3个文件夹,分别是:Processes,Code Modules和Destination Queues。K2 Project的名称扩展名为.kpj。
在Process文件夹上点击鼠标右键,选择Add New Process。在弹出的窗口中输入Process的名称:IT采购流程。K2 Studio自动打开新建的Process。
在“IT部门项目”上点击鼠标右键,选择属性;在弹出的窗口左边,选择Export Server,点击“添加”,输入K2 Server的名称。提示:在K2 Project或者K2 Process上点击鼠标右键,选择Properties,可以分别对其进行设置。包括:

K2 Project:

Name名称:K2 Project的名称;
Description描述:K2 Project的描述;
Working Hours工作时间:设置K2 Project默认的工作时间;
Export Servers导出K2服务器:设置K2 Project导出的K2服务器;
References引用: 添加对其他.NET assemblies、COM对象和Web服务的引用;
Imports导入: 导入其他的Namespace;

K2 Process:

Name名称: K2 Process的名称;
Description描述: K2 Process的描述;
Priority优先级: 定义流程的优先级,High,Medium或者Low,用户可以使用优先级属性筛选WorkList;
Expected Duration预计持续时间: 定义流程的预计持续时间,如果超过预期持续时间,所有的流程线程都会突出显示;
Working Hours工作时间: 定义流程的工作时间,用户可以选择工作时间从上级Project继承,或者定义流程特定的工作时间;
Data Fields数据字段: 用于定义流程范围(Process-wide)内的变量;
XML Fields XML 字段:用于定义流程范围内(Process-wide)的XML字段;
Exceptions 异常: 用于指定当流程失败时,K2.net 2003 Server 如何记录异常错误信息。

第二步:设计流程





如上图所示,在流程画布(Canvas)上拖放5个类型为Default的Activity;分别双击每个Activity对其进行命名。
分别拖放一个类型为Default Client的Activity到“IT经理审批”和“部门经理审批”节点,双击Default Client,命名为“审批界面”,并在“审批界面”上单击右键,选择“Properties”->“Event Item”,取消“Client Side Code”,选择“Internet”,并输入URL地址为:http://服务器名称/demo/itmgrapproval.aspx和http://服务器名称/demo/deptmgrapproval.aspx,并将其命名为:审批界面。



将一个Server Mail对象拖放到“IT经理否决”,系统自动启动邮件向导,如下图填写。并在完成向导后,将Server Mail命名为“通知邮件”。



在上一步创建的“通知邮件”上点击鼠标右键,选择“Copy”,粘贴到“部门经理否决”节点上;在新复制的“通知邮件”上点击鼠标右键,选择“Run Template”,对邮件内容进行修改。



重复上一步操作,并在“部门经理同意”节点上添加一个邮件通知。如下:



选择正确的Line形状,将各个Activity节点连接起来。双击每条Line,添加备注。提示:拖动Line的备注文字,可以进行移动。
对每条Line进行规则定义。举例来说:右键点击连接“开始”和“IT经理审批”之间的Line,选择“Properties”,点击“Add”,在弹出的窗口中进行如下定义。



定义完Line的业务规则后,定义“IT经理审批”和“部门经理审批”节点的任务执行者。举例:在“IT经理审批”节点上点击鼠标右键,选择“Properties”->“Destination Rule”,从AD中选择一个任务执行人,并拖放到右面的窗口中。



编译流程:这时候流程设计工作基本完成,我们可以点击“Tools”->“Compile”进行编译,如果流程设计有误,K2会提示错误原因和位置。
导出流程:点击“Project”->“Export”,把设计好的流程发布到K2服务器上。
分配流程使用权限:打开K2 Service Manager,找到刚刚发布好的流程,点击“Users”或者“Groups”,分配权限。



第三步:设计流程用表单

打开Visual Studio .Net 2003,新建一个Web项目。
在项目中添加一个K2SmartForm项,如下图:



打开Web.config文件,移至文件尾部,添加K2 Server:



打开刚刚建立好的request.aspx,进行如下设置,PageType必须设置为PlanPage:



在Request.aspx上放置几个K2.Net SmartForm控件,并对各个控件进行数据邦定。并将“提交”按钮属性设置为:PlanButton。如下图:



分别添加另外2个K2 SmartForm:itmgrapproval.aspx和deptmgrapproval.aspx。设计页面,并进行控件字段绑定。需要注意的是:必须将这两个页面的PageType设定为ClientPage,而且提交按钮设置为FinishButton。再有,将Activity设置为相应节点下的“审批界面”。



检查无误后,生成该项目。

至此,流程设计完毕。下次我们将看看如何测试并运行已经设计好的流程。

待续...
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: