SharePoint 2007 工作流解决方案

Visual Studio 提供了一些工具,可帮助您创建自定义工作流来管理 SharePoint 网站中的文档和列表项的生命周期。 这些工具包括一个设计器、一整套拖放活动控件以及必需的程序集引用。 Visual Studio 还包括**“SharePoint 自定义向导”**,该向导可显著减少在 Visual Studio 中调试工作流所需的配置步骤。

提示

若要使用 SharePoint 2007 工作流项目模板,您必须安装 SharePoint 2007 项目的所有系统必备组件,如开发 SharePoint 解决方案的要求中所述。 此外,这些模板只适用于 .NET Framework 3.5 或早期版本的 .NET Framework。

Microsoft Office SharePoint Server 2007 包含多个内置工作流模板。 例如,如果您想要让一个新文档通过基本审批过程,则可以使用内置的“审批”工作流模板。 您还可以创建自定义工作流模板来管理高级文档过程。

有关 SharePoint 的更多信息,请参见 Windows SharePoint Services Overview(Windows SharePoint Services 概述)和 Microsoft Office SharePoint 2007 Server Product Overview(Microsoft Office SharePoint 2007 Server 产品概述)。

SharePoint 中的工作流

在向 SharePoint 库或列表添加工作流时,将对该库或列表中的所有项强制执行业务过程。 工作流描述系统或用户必须对每个项执行的操作,例如发送项以供编辑和评审。 这些操作称为“活动”,它们是工作流的构建基块。

添加 SharePoint 工作流后,可将它部署到 SharePoint 网站并将该工作流与库或列表关联。 用户可启动工作流实例以处理库或列表中的项。 有关更多信息,请参见使用工作流管理过程

创建自定义 SharePoint 工作流

使用**“SharePoint 2007 顺序工作流”“SharePoint 2007 状态机工作流”**项目模板创建 SharePoint 工作流。

顺序工作流将工作流表示为一系列步骤,这些步骤必须按顺序执行,直到最后一个活动完成。 下面的插图演示一个顺序工作流示例。

顺序工作流

顺序工作流

状态机工作流表示一组状态、转换和操作。 其中一个状态用作启动状态,然后可以根据事件转换到另一个状态。 下面的关系图显示了一个状态机工作流示例。

状态机工作流

状态机工作流

有关工作流类型的更多信息,请参见工作流类型

使用向导

创建 SharePoint 工作流项目时,首先应在**“SharePoint 自定义向导”中指定项目的设置。 向导将存储这些设置并在“解决方案资源管理器”**中创建项目。 此项目包含一个代码文件、若干用于部署工作流模板的文件以及对创建自定义 SharePoint 工作流模板所必需的程序集的引用。

有关分步操作的信息,请参见如何:创建 SharePoint 工作流项目

设计 SharePoint 工作流

在定义业务过程中的所有步骤之后,可使用 Visual Studio 中的工作流设计器来设计 SharePoint 工作流。 创建工作流项目之后,该工作流将会在设计器中打开。 若要随时再次打开设计器,请在**“解决方案资源管理器”**中双击 Workflow1.cs 或 Workflow1.vb。

活动

若要设计工作流,请将**“工具箱”**中的活动添加到设计器上的工作流时间表。 工作流时间表包含按照执行顺序排列的活动序列。

有两种类型的活动:

  • “简单活动”执行单个工作单元,例如“延迟 1 天”或“启动 Web 服务”。

  • “复合活动”包含其他活动;例如,条件活动可能包含两个分支。

**“工具箱”**中提供了这两种类型的活动。

活动可以有属性、方法和事件。 使用**“属性”**窗口可以设置活动的属性。

还可以创建自定义活动。 有关更多信息,请参见创建自定义活动

各个活动被组织到**“工具箱”**的以下选项卡中:

  • Windows Workflow v3.0

  • Windows Workflow v3.5

  • SharePoint 工作流

Windows 工作流活动

**“Windows 工作流”**选项卡包含 Windows Workflow Foundation 提供的活动。 使用这些活动可以为任何种类的 Windows 工作流应用程序创建工作流时间表。

有关**“Windows 工作流”**选项卡中列出的活动的更多信息,请参见 Windows Workflow Foundation 活动。 有关 Windows Workflow Foundation 的更多信息,请参见 Windows Workflow Foundation 概述

SharePoint 工作流活动

**“SharePoint 工作流”选项卡包含专用于 Windows SharePoint Services 3.0 和 SharePoint Server 2007 的活动。 这些活动可简化文档生命周期工作流的开发,提高效率。 有关“SharePoint 工作流”**选项卡中列出的活动的更多信息,请参见 Windows SharePoint Services 的工作流活动概述

在设计器中使用活动

工作流时间表可以包含 Windows 工作流活动和 SharePoint 工作流活动的组合。

设计器会显示可视化提示,以帮助您正确地定位和配置活动。 当您将活动拖动到工作流时间表上时,设计器会显示绿色加号 (+) 图标,为您指示该活动在工作流中的有效位置。 不能将活动定位到无效的位置。 例如,不能将“发送”活动定位为“侦听”活动分支中的第一个活动。 有关如何使用设计器的更多信息,请参见 Visual Studio 2005 Designer for Windows Workflow Foundation 概述

在工作流执行过程中收集信息

您可能希望在工作流中的预定义时间收集用户的信息。 使用窗体或项属性可以收集信息。

窗体

窗体与包含问题并为用户提供回答问题的方式的对话框相似。

可以为工作流创建四种类型的窗体:

  • 关联

  • 启动

  • 修改

  • 任务

例如,可以设计一个从文档审阅者收集反馈的窗体。 用户必须提供反馈,然后工作流才能继续。 这种类型的窗体称为“任务窗体”。

提示

Visual Studio 提供了关联窗体和启动窗体的模板。 有关更多信息,请参见演练:创建带有关联窗体和启动窗体的工作流

项属性

您还可以使用 SharePoint 库或列表中的项的属性来收集用户的信息。 主代码文件(Workflow1.cs 或 Workflow1.vb)声明 Microsoft.SharePoint.Workflow.SPWorkflowActivationProperties.WorkflowProperties 类的一个名为 workflowProperties 的实例。 使用 workflowProperties 对象可在代码中访问库或列表的属性。 有关示例,请参见演练:创建和调试 SharePoint 工作流解决方案

调试 SharePoint 工作流模板

可以像调试其他 Visual Studio 项目那样调试 SharePoint 工作流项目。 当您启动 Visual Studio 调试器时,Visual Studio 将使用您在**“SharePoint 自定义向导”**中指定的设置打开相应的 SharePoint 网站,并自动将工作流模板与相应的库或列表相关联。 Visual Studio 还将 Visual Studio 调试器附加到名为 w3wp.exe 的 SharePoint Services 3.0 进程。

若要测试工作流,必须手动启动该工作流。 有关更多信息,请参见调试 SharePoint 工作流解决方案

部署 SharePoint 工作流模板

在 Visual Studio 中创建工作流后,可以将它像任何其他 SharePoint 项目一样进行部署。 按 F5 时,系统会将工作流进行打包并部署到 SharePoint。 有关更多信息,请参见部署 SharePoint 解决方案

请参见

其他资源

创建 SharePoint 工作流解决方案

针对开发人员的 Windows SharePoint Services 3.0 和 SharePoint Server 2007 工作流简介

Windows Workflow Foundation 概述

Windows Workflow Foundation 编程指南

Visual Studio 2005 Designer for Windows Workflow Foundation 概述

Windows Workflow Foundation 活动

Windows SharePoint Services 的工作流活动概述

Windows SharePoint Services 中的工作流对象模型概述

欢迎使用 Microsoft Office SharePoint Server 2007 SDK

工作流的 InfoPath 窗体

工作流窗体概述

使用功能进行工作流部署