首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SharePoint 2013 Designer工作流——Parallel Block的应用

SharePoint 2013 Designer工作流——Parallel Block的应用

作者头像
用户1161731
发布2018-01-11 15:39:00
9800
发布2018-01-11 15:39:00
举报
文章被收录于专栏:木宛城主木宛城主

参考目录

在自定义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给我的感觉依然是捉襟见肘。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2014-02-13 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 设备入网申请
  • 入网申请测试
  • 小结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档