博客园  :: 首页  :: 联系 :: 订阅 订阅  :: 管理

SharePoint 2007中的工作流概览

Posted on 2009-12-24 21:42  生鱼片  阅读(2031)  评论(0编辑  收藏  举报

SharePoint 2007中的一个重要的特性就是对工作流的支持,SharePoint2007中的工作流是基于WF3.x的,要想深入SharePoint 2007中的工作流开发,了解WF是必须的,关于WF3.x的相关知识可以参考我写的关于WF3.x的系列文章,系列文章地址:http://www.cnblogs.com/carysun/archive/2008/10/21/WF.html
下图为WSS中的工作流架构:

.

SharePoint 2007中有两种方式开发工作流,一种是使用SharePoint Designer,该方式只能开发顺序工作流,无需编译和部署,但是这种类型的工作流不支持流程退回和循环,另一种就是使用Visual Studio进行开发,使用Visual Studio基于WF做复杂的流程开发,开发完成后编译为DLL,然后部署为SharePoint网站Feature,Sharepoint开发的工作流对应的操作页面,也就是表单可以使用infopath和aspx,infopath可以达到无代码开发。

SharePoint工作流是一个预先定义好的对列表项或文档库文档的处理流程。一个工作流实例跟一个列表项或文档进行关联,工作流实例不能脱离列表项存在。当需要用户处理数据的时候,比如进行审批操作,系统会创建一个任务到某个任务列表中,审批用户操作列表中的任务来实现跟流程实例的交互。工作流实例可以在列表新建、修改时自动启动,或者可以由用户手动启动。

下面的图片说明了WSS中工作流的技术架构,每个内容类型、列表、文档库都通过服务器场的关联表,与相应的工作流连接。每个一个工流都有一个工作流模板定义文件,此XML定义文件指定了工作流实际使用的程序集(dll)和程序集中的类名,并且指定了工作流运行所需要的各种工作流表单:

 

.

 

 

SharePoint 2007中提供了很多默认的工作流模板,如下:

s

我们来简单的看下如何使用多态工作流模板: 

1.网站设置---网站集功能中激活

clip_image002

 

2.创建一个网站列表,列表包含如下栏,假单状态这栏非常重要,是三态工作流必须提供的。

clip_image004 

3.然后对该列表进行工作流设置,如下:

clip_image006

 

4.下面是具体的设置信息,工作流模板选择三态,在新建项目时启动工作流,如下:

clip_image008

下一步后首先要设置工作流状态的对应关系:

clip_image010

然后我们可以指定启动工作流时和工作流更改为中间状态时的操作,比如我们可以给相关用户发送邮件。如下:

clip_image012

 

5.下面就可以在列表中使用三态工作流了,新建一张请假单据后会自动给指定人员发mail,该人员收到mail后可以去更改假单的状态,如下图:

clip_image014

后面会详细介绍如何使用SharePoint Designer和Visual Studio两种方式进行工作流开发。