SharePoint 2013 Designer工作流——Parallel Block的应用
参考目录
在自定义Workflow时,往往会遇到这样场景,某个审批需要被多人查阅,每个查阅的审批人之间互相独立,即彼此互不影响,简单来说就是:"一人通过,审批通过;一人拒绝,审批拒绝"。这就像是中学物理中的并联电路,相对于串联电路,并联电路更加灵活。
在SharePoint Workflow中,也提供了类似并联电路的活动,即Parallel Block(并行程序块),在SharePoint Designer 2013中,位于工具栏中,如下所示:
要使用此活动也是很简单,接下来我以一个简单的入网申请来演示,假设有如下场景
公元前211年,秦朝的科技已如日中天,信息化建设也属七国中翘楚,为了更加集权监督,始皇帝决定三公九卿人人配置移动设备,时刻汇报日常工作。现御史大夫张学友购入设备一台,急需入网申报奏折。
设备入网申请
- 创建对应的List,Task,添加如下图所示的Column,具体细节详情此文中的设置。
打开SharePoint Designer,选择需要关联的List,创建自定义的工作流。
- 首先,新建并初始化变量,如下所示:
- 接着,插入Parallel Block,并在其中添加Step,在每个Step中分配需要的任务,如下图所示:
- 然后,右键单击Parallel Block(并行运算),选择高级属性,这时会弹出如下提示框:
可以看到CompletionCondition是一个Boolean类型的属性。它表示若属性值为True,即只要其中一个任务分支执行完毕,那么在并行块中的其他任务分支将被取消,即不执行。反之,若CompleteCondition为False时,那么在此并行块中所有已经执行完毕的任务分支都将等待,直到最后一个任务分支都执行完毕。
- 最后,对审批的结果进行判断,需要IF…ELSE 条件来进行逻辑处理,如下所示:
入网申请测试
当张学友发起入网申请时,工作流启动,并同时分配任务给指定的参与人(分配的任务存储在Task中)。由于分配的任务之间是并行关系,并且CompleteCondition位True,所以互相的操作不受影响,即"一人通过,审批通过;一人拒绝,审批拒绝"。
- 所以,当张学友提交入网申请时,嬴政、赵高同时收到审批任务,如下所示:
- 指定的参与人收到任务后,即可进行审批。当赵高审批通过,分配给嬴政的任务已没有意义,会自动删除,如下图所示:
小结
上述描述的工作流仅仅是Demo级别,对于复杂的业务,特别是权限的控制,SharePoint 2013 Workflow给我的感觉依然是捉襟见肘。
SharePoint 2013 Designer工作流——Parallel Block的应用的更多相关文章
- SharePoint 2013 Designer 入门教程
SharePoint的使用中,SharePoint Designer是非常重要的工具,我们可以通过Designer设计页面.母版页,维护.管理站点,也可以定制列表表单.数据视图,设计工作流等等.下面总 ...
- 系列文章--SharePoint 2013 Designer 入门教程
SharePoint的使用中,SharePoint Designer是非常重要的工具,我们可以通过Designer设计页面.母版页,维护.管理站点,也可以定制列表表单.数据视图,设计工作流等等.下面总 ...
- SharePoint 2013 状态机工作流之日常报销示例
简单介绍下状态机工作流,状态机工作流提供了一系列的状态.工作流从初始状态开始,到终止状态结束.两个状态之间定义行为进行过渡.通常情况下,状态机工作流对事件作出反应,事件的发生将会使状态发生改变. 1. ...
- SharePoint 2013 开发——工作流架构
博客地址:http://blog.csdn.net/FoxDave SharePoint 2013的工作流较之前有了不同,第一次真正地作为独立的服务的概念推出了.这意味着SharePoint工作流不再 ...
- SharePoint 2013 - Designer Workflow
另一篇文章 SharePoint Designer - Workflow 1. 可以定义每个Stage的名称,并将Stage名称显示在工作流状态字段,相比于SP2010时仅有的in progress ...
- SharePoint 2013 Designer系列之自定义列表表单
在SharePoint的使用中,默认的样式过于单调经常困扰着我们,其实,SharePoint使用Designer工具,可以很轻松解决这一问题,制作出各式各样漂亮的页面.下面,让我们简单介绍下这一过程. ...
- SharePoint 2013 状态机工作流之扩展自定义状态
当我们使用SharePoint 2013的状态机工作流时,发现一个非常不爽的事情,就是SharePoint 所有的工作流状态,都是固定的那些,没办法显示我们自定义的状态,后来经过Google发现,原来 ...
- SharePoint 2013 状态机工作流之UpdateItemActivity
没什么可说的,一个Activity的使用介绍,其他类似的Activity也可以参考这个使用. 1.添加ApplyActivation和UpdateItemActivity,在onWorkflowAct ...
- 关于SharePoint 2013的工作流(一)
从去年开始,一直和SharePoint 2013工作流打交道.自己瞎摸索,以实现功能为目的.直到如今也不知道走的路是否正确. 一开始用WF4发现整个都不一样了,用的xaml无法写后端代码.Google ...
随机推荐
- Socket 编程IO Multiplexing
Linux Socket 编程中I/O Multiplexing 主要通过三个函数来实现:select, poll,epoll来实现.I/O Multiplexing,先构造一张有关描述符的列表,然 ...
- ZH奶酪:中文依存句法分析概述及应用
句法分析是自然语言处理领域的一个关键问题,如能将其有效解决,一方面,可对相应树库构建体系的正确性和完善性进行验证;另一方面,也可直接服务于各种上层应用,比如搜索引擎用户日志分析和关键词识别,比如信息抽 ...
- 【树莓派】树莓派Android相关资料
树莓派完美运行最新 Android 7.0 牛轧糖: https://linuxstory.org/android-7-0-nougat-on-raspberry-pi/ Raspberry Pi 3 ...
- 使用Spring框架入门一:基于XML配置的IOC/DI的使用
一.Spring框架 1.方法一:逐项导入基础依赖包: spring-core.spring-beans.spring-context.spring-expression 2.方法二:最简洁的导入,直 ...
- 使用变量向SQL Server 2008中插入数据
QT通过ODBC连接数据库SQL Server 2008,进行数据插入时遇到的问题: 先把数据存入变量中,如何使用变量进行插入?插入语句该怎么写? QSqlQuery query(db); query ...
- tortoisegit 右键无图标
如果你安装 TortoiseGit之后,发现文件夹或文件左上角就是不显示图标,那么以下步骤就是最好的解决办法. 工具/原料 TortoiseGit 方法/步骤 确认是不是64bit 系统上 ...
- hibernate调用mysql存储过程
在mysql中创建两个存储过程,如下: 1.根据id查找某条数据: )) begin select * from emp where empId=id; end; 2.根据id查找某个字段,并返回 ) ...
- 【BI】商务智能
BI的定义 商务智能BI (Business Intellignece) 商务智能是涵盖性术语,包含框架.工具.数据库.分析工具.应用和方法.商务智能的主要目标是实现数据的交互,实现对数据的操作,供管 ...
- 【DB2】SQL优化
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAA
- 面向对象编程案例02--显示地调用父类的__init__()
# -*- coding: utf-8 -*- #python 27 #xiaodeng #面向对象编程案例02--显示地调用父类的__init__() ''' 继承是面向对象的重要特征之一,继承是2 ...