SharePoint Designer不仅仅可以用来对SharePoint站点的界面进行定制,它同时还内置了一个强大的工作流设计器。使用这个工作流设计器,我们可以通过一系列的配置工作,将指定的步骤、条件、操作组合起来,组合成一个完整的工作流模板。

Denny Zhang有三篇很好的介绍性文章,演示了如何利用SharePoint Designer来创建一个完整的工作流模板:
在SharePoint中实现Workflow(1)
在SharePoint中实现Workflow(2)
在SharePoint中实现Workflow(3)

为了帮助大家对SharePoint Designer 2007有更深入了解,在这篇文章里向介绍几个最基本的概念。

基本概念1、工作流启动方式

在SharePoint Designer中打开工作流设计器之后,第一个界面上就会让我们设定工作流的启动方式,如下图:

可以看到,SharePoint Designer有三种工作流启动方式:
i.项目被创建时自动启动;
ii.项目被更改时自动启动;
iii.由用户手工启动。

基本概念2、步骤

每一个工作流都是由一个或多个步骤组成的,步骤是工作流的基本组成单位。我们在SharePoint Designer里面可以任意添加新的步骤,调整已有步骤的顺序,或者删除某个步骤。

在上面的截图中,我们可以看到整个工作流由多个步骤组成。

基本概念3/4、条件和操作

每一个步骤都是由条件和操作组成的。条件和操作的概念类似于“如果满足某某条件,则执行某某操作”。SharePoint Designer提供了一组内置的且功能强大的条件和操作,我们可以选择自己需要的条件和操作,将它们组合在一起。

上面的图片显示,在“确定报销单正确性”这个步骤中,如果报销单的总金额大于10000元,那么就给报销单的创建者发送一封邮件告诉他报销金额太大,然后删除这张报销单,最后停止当前的工作流实例运行。

上面那个步骤中包含了一个条件、三个步骤。这些步骤会按照先后顺序来执行。条件和步骤的数量可以根据我们的需要来随意设定,甚至不设置条件或者操作。如果没有条件,那么选择的操作就必然会被执行。同样,只有条件没有操作也是被允许的,尽管这种情景没有什么意义。

基本概念5、条件分支

一个步骤里面并不一定只能包含一个条件分支,我们可以添加一个或者多个条件分支。条件分支执行“Else If”的逻辑,类似与“如果满足某某条件,那么执行某某方法,否则,如果满足第二个条件,那么执行某某方法...”。

在上图中,我们可以看到,这个步骤就包含了两个条件分支。第二个条件定义了这样的流程逻辑:如果报销单总金额并没有大于10000,那么就给管理者发送一封邮件,然后更新报销单中的某些数据。

最后,当我们在SharePoint Designer中完成了工作流程的设计,保存这个工作流的时候,SharePoint Designer会自动将流程以Windows Workflow Foundation的.xoml文件保存到服务器上,流程中的规则会保存成.xoml.rules文件,同时还生成其他一些必要的配置和页面文件。

我经常被人问到的一个问题就是,SharePoint Designer里面自带的条件和操作是否可以扩展呢?答案是:当然可以!实际上,这些条件和操作都是标准的Windows Workflow Foundation中的Activity,所以,我们只需要使用Visual Studio 2005创建定制的Activity,然后将其部署到SharePoint Server服务器上,就能够为SharePoint Designer添加上我们自己写的条件和操作了。

在下面所示的图片中,我们就添加了几个自己定制的操作。“发送即时消息”操作可以为我们给指定的用户发送LCS即时消息,“发送手机短消息”操作可以直接将消息用短消息的形式发送到某人手机上,而“获取用户经理信息”可以让我们用自己的逻辑来获取某个用户的经理是谁这样一个信息。

转载于:https://blog.51cto.com/kaneboy/281221

SharePoint Designer 2007,强大的工作流设计器相关推荐

  1. 在Sharepoint Designer 2007 中加入定制的工作流动作

    如果使用Sharepoint Designer 2007在Sharepoint列表中创建定制的工作流,会发现它是一个强大的工具.使用内嵌的工作流设计器,不写一行代码就可以创建一个还可以的工作流.使用这 ...

  2. Visio 2016 和 SharePoint Designer 2013 来创建工作流并将其发布到 SharePoint 2016 网站而无需任何代码

    本文章内容非本人所写,转载地址 https://msdn.microsoft.com/zh-cn/library/office/jj163272.aspx 抓图是使用Visio 2016 验证. 使用 ...

  3. 【转】Silverlight全开源工作流设计器

    声明 此工作流是作者自行构思和设计的被动式数据触发模式的工作流.没有遵循各种现有的工作流设计标准(如WFMC或WSFL),也没有与其他工作流通用性的接口规范.这里体现更多的是作者对工作流的使用思想,及 ...

  4. SharePoint Designer 2007发布WorkFlow的小bug

    今天,在用SharePoint Designer 2007里做工作流遇到了一个问题,一直找不到原因,具体情况就是发布WorkFlow的时候,会报一个错误, 这就导致发布的这个WorkFlow里面不能生 ...

  5. Silverlight全开源工作流设计器

     声明 此工作流是作者自行构思和设计的被动式数据触发模式的工作流.没有遵循各种现有的工作流设计标准(如WFMC或WSFL),也没有与其他工作流通用性的接口规范.这里体现更多的是作者对工作流的使用思 ...

  6. Microsoft Office SharePoint Designer 2007 (FrontPage) 2007 介绍

    原名为FrontPage Office SharePoint Designer 2007 提供的工具可使业务流程实现自动化.在 Microsoft SharePoint 平台上构建有效的应用程序,以及 ...

  7. 一招搞定可视化工作流设计器开发 巧用draw2d绝战可视化工作流设计器 友好的开源协议MIT

    技术岛公众号 工作流通常会使用xml进行管理与配置,之间流转关系使用不同的xml节点进行配置,看着xml文件,很难直接Get到流程之间的流转关系.如果使用可视化的呈现来展现工作流,则很好的解决这个问题 ...

  8. 基于地图的工作流设计器,及基于地图的业务流程办理界面(二)

    基于地图的工作流设计器,及基于地图的业务流程办理界面(二) ---------------------------------------------------------------------- ...

  9. [WF4.0]工作流设计器Rehosting(一)

    因为WF4.0使用WPF做可视化设计,能够利用WPF的数据绑定和其他一些内部实现,极大的简化了工作流设计器的开发工作:不用像3.5和3.0中那样,要开发一些服务类来支持工作流的设计操作. 首先看看Wo ...

  10. js 图形化工作流设计器

    最近比较闲,打算开发一个用js 写的 图形化工作流设计器,附上草图一张,要看运行效果请下载附件,这个版本还在开发中,以后会持续更新,直到满意为止.上面的列子虽然变形,我还是贴出来了,给大家一个直观的感 ...

最新文章

  1. ubuntu 新建一个root用户
  2. 手把手教你安装Navicat——靠谱的Navicat安装教程
  3. 十大经典排序算法之希尔排序及其优化
  4. c++ 12.一维数组冒泡排序
  5. 秒懂5G!通俗易懂外行也能看明白
  6. SpringMVC之拦截器和异常处理
  7. 【php复习之】php创建数组的几种方式
  8. 惠普光影精灵拆机换屏幕_聊聊惠普游戏本大军的“先遣部队”
  9. It's my life
  10. loj #10001. 「一本通 1.1 例 2」种树
  11. Noip2013错误避免
  12. MySQL错误号码1862:your password has expired
  13. 网络安全行业是蓝景吗?
  14. 数学之美系列—布隆过滤器(Bloom Filter)
  15. Dubbo服务调用过程流程图
  16. 每日一面 - java里的wait()和sleep()的区别有哪些?
  17. RYU实战,REST API流表控制(2)
  18. 编译报错unable to initialize decompress status for section .debug_info
  19. 【LiteOS】HUAWEI LiteOS 详解
  20. vue.draggable实现元素拖动效果

热门文章

  1. Git 常见问题总结
  2. Eclipse — 更改包名后导致服务器启动报异常
  3. 蔡工RK系列Android驱动开发入门视频课程
  4. MTK平台LCM驱动加载流程
  5. ubuntu下的项目管理工具dia, planner
  6. Vue2.0组织浏览器返回事件
  7. C#基础 数据类型 类型转换
  8. Jmeter学习笔记ONE
  9. Oracle中OEM的启动与关闭
  10. HTML5定稿了,终于有一种编程语言开发的程序可以在Android和IOS两种设备上运行了...