文档章节

SharePoint 2013 实现多级审批工作流

 木宛城主
发布于 2015/03/02 19:38
字数 870
阅读 63
收藏 0

上一篇介绍了安装和配置SharePoint 2013 Workflow,这一篇将用SharePoint 2013 Designer Workflow来实现一多级审批工作流。

审批工作流介绍

这个Demo是基于多级审批工作流。以古代上传奏折为场景,共分为3个阶段。当创建者上传奏折时,首先会由对应的上级领导审批,审批通过,交付对应的下一级,审批拒绝时,则整个流程结束,具体的官阶信息如下所示:

然后,我们预先设定,以文档库来作为我们的上报奏折库,所以我们需要为其设定自定义的多级审批工作流。最后创建自定义的Task来存放待审批的任务。

创建多级审批工作流

  • 首先,我们可以创建多个审批Stage(阶段),每一阶段处理不同的流程,如下所示:

  • 接着,在Starting Stage,插入Set Workflow Status(设置工作流状态),输入"审批中",然后再插入Set Workflow Variable(设置工作流变量)来创建一个新变量,如下所示:

  • 然后,点击新建的变量(Approver)的Value链接,选择Define workflow lookup(定义工作流查阅项)Function,为了得到当前用户的上级领导,故在弹出的窗体中设置以下值:

  • 接上一点,一级审批者通过后,需要将任务分配给二级审批者,和上操作一样,不同之处是需要将查询条件换为FirstApprover,具体实现如下图所示:

  • 然后,我们需要最重要的一步,分配审批任务给待审批人,所以需要插入另一个Activity:Start a Task process(开始任务进程),点击these users(这些参与者)链接来负责启动任务,具体参数如下所示:

  • 最后,插入IF…ELSE条件,当审批为Approved时,跳转至Approved Stage,否则,跳转至Rejected Stage。如下所示:

  • 因为,我们工作流最终目的是实现多级审批,即一级审批通过,交给二级审批人,依次审批下去。当审批拒绝时,工作流结束,所示稍稍完善下上面的实现方式,具体流程如下实现:

  • 为了让分配的任务更加细化,让每人只能看到自己的任务,需要在Task中设置Filter,如下所示:

查找工作流异常

工作流发生异常很难找到, SharePoint 2013 Designer Workflow当发生异常时会抛出异常,比如500错误。排查这个异常非常麻烦,需要你的经验法则。比如在Workflow Management数据库中存在一张表DebugTraces会记录发生的错误,如下所示(Name为中文情况下,SharePoint会自动分配16进制的编码来表示Name,这样可能会发生一些意想不到的错误):

测试工作流

在文档库中上传一个奏折,将启动工作流,如下截图所示即为3级审批工作流审批流程日志:

小结

细心的朋友已经发现了,我没有去控制Task的权限,而是用了Filter来进行过滤。事实上,在Task任务库中,每个人(而非指定的Assign To对象)都可以启动(编辑、删除)任务。所以怎样用SharePoint Designer 2013去打断权限继承,只给Assign To的用户分配编辑权限,这实在让我很纠结。

 

© 著作权归作者所有

共有 人打赏支持
粉丝 2
博文 222
码字总数 199010
作品 0
黄浦
sharepoint 工作流文章

三个工作流配置文章 SharePoint Designer 2010 部署工作流实例 http://wenku.baidu.com/link?url=go4wGc9CFD5mtSmMiGKkmLjk1JOkpZxI2-tt8nWXSknxModuRL-z-ATMOVeOF9swhver05YEJTl8EtnX3tYB8j......

yuxye
2016/02/22
0
0
SharePoint结合PowerShell建立入离职自动化(一)

作为一个懒癌晚期的管理员,处理开通账号这种事情真的是一丁点都提不起兴趣啊,那么怎么样才能用最容易实现的方式把账号开通和注销自动化起来呢?考虑到我们的环境中已经有了SharePoint作为门...

Liuzw_37
2017/12/28
0
0
sharepoint2007就地升级2010系列(一)2007概览

大家可能熟悉了sharepoint2010,熟悉了sharepoint2013,做了N多个项目,但是有没有做过从sharepoint2007升级或者迁移到sharepoint2010的项目呢?我们做实验的时候,可能更多的是直接安装新的...

科技小能手
2017/11/12
0
0
SharePoint 2007中的工作流概览

SharePoint 2007中的一个重要的特性就是对工作流的支持,SharePoint2007中的工作流是基于WF3.x的,要想深入SharePoint 2007中的工作流开发,了解WF是必须的,关于WF3.x的相关知识可以参考我写...

科技小毛
2017/10/10
0
0
SharePoint 2013 开发——工作流架构

博客地址:http://blog.csdn.net/FoxDave SharePoint 2013的工作流较之前有了不同,第一次真正地作为独立的服务的概念推出了。这意味着SharePoint工作流不再运行于SharePoint服务中,而是在一...

justinliu927
2015/06/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

springmvc入门之映射处理器(一)

1.简析映射处理器 在spring mvc中,使用映射处理器可以把web请求映射到正确的处理器上,spring内置了很多映射处理器,而且我们也可以自定义映射处理器。下面的实例展示spring中最常用的两个映...

明理萝
3分钟前
1
1
一个破碎的人,窃机浪漫飞行后自由坠毁

简评:A sick man who needs treatment 29 岁的 Richard Russell 是西雅图机场地勤人员,上周五,在刚进入秋天的日子,他偷了一架未载客的飞机,在空中飞行独自超过一小时,甚至驾机在空中翻...

极光推送
5分钟前
0
0
linux一次性解压多个.gz或者.tar.gz文件

解压多个压缩包 对于解压多个.gz文件的,用此命令: for gz in *.gz; do gunzip $gz; done 对于解压多个.tar.gz文件的,用下面命令: for tar in *.tar.gz; do tar xvf $tar; done...

小兔纸乖乖
16分钟前
0
0
bower 安装包的使用

一,bower是什么? bower是一种包管理器,它可用于搜索、安装和卸载如JavaScript、HTML、CSS之类的网络资源。 它依赖于node.js和npm,如果要使用它需要先安装node.js和npm,因为node.js包含n...

nsns
18分钟前
0
0
EXCEL简易的进度条

在进度栏非常简单的进度控制,以下知道程序是否已完成。 Dim x As IntegerDim MyTimer As Double'Change this loop as needed.For x = 1 To 50' Do stuffApplication.StatusBar = ...

tedzheng
23分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部