采用SharePoint Designer设计工作流
SharePoint Designer可以设计无代码的工作流,对列表项或文档启用处理逻辑。SharePoint Designer只能设计出简单的顺序工作流,本节了解一下具体的操作方法。
1 列表项流程示例
本节演示一个员工请假流程的设计:员工提交请假单,由审批人进行审批,审批人批准之后,自动添加一个日程到日历列表中,如果不批准,则邮件通知提交人。具体的操作步骤如下。
Step1 创建列表。新建一个自定义列表,名称为"员工请假",添加如图1所示的栏。
图1 创建列表
Step2 启用列表的内容审批。通过"列表设置"→"版本控制设置",启用列表的内容审批。设置"仅限可批准项目的用户"可以查看列表中的草稿项目,如图2所示。
图2 启用内容审批
Step3 新建工作流。用SharePoint Designer 打开站点,选择"文件"→"新建"→"工作流"命令,如图3所示。
图3 新建工作流
Step4 指定工作流名称和启动方式。在定义新工作流界面中,输入工作流名称为"员工请假流程",选择附加到"员工请假"列表,再选择"允许从项目中手工启动此工作流",如图4所示。
图4 定义新工作流界面
Step5 添加审批步骤。将步骤名称改为"经理审批",在操作中,选择"从用户处收集数据",单击"此用户"链接,在弹出的对话框中选择一个审批人,如图5和图6所示。
图5 添加审批步骤图
图6 选择审批用户
Step6 设计审批步骤需要采集的数据。单击"数据"链接,在自定义任务向导中输入任务名称为"请假审批",如图7所示,再单击"下一步"按钮。
图7 添加"请假申请"
添加一个名称为"审批意见"的多行域,如图8所示。添加一个名称为"是否同意"的选项类型域,选项为"批准和拒绝",如图9所示。
图8 添加"审批意见"域
图9 添加"是否同意"域
图10 请假审批内容类型
Step7 修改审批任务ID变量名。通过添加"从用户处收集数据"动作创建了一个任务内容类型,在工作流运行的时候,会创建一个任务列表项,这个列表项的ID会被放到流程的变量中,以便从工作流中可以访问任务数据。我们把存放这个任务列表项ID的变量名修改为"请假审批任务ID",如图11和图12所示。
图11 修改工作流变量名
图12重新选择任务ID绑定到的变量
Step8 添加审批完成后的处理逻辑。再添加一个工作流步骤,名称为"审批完成",如图13所示。
图13 添加审批完成步骤
Step9 添加判断条件。经理审批同意时需要批准列表项,并且将请假休息添加进日程列表中,首先需要添加判断经理审批是否同意的条件,查找到审批任务列表项的是否同意字段,进行判断即可。从"条件"菜单中选择"比较任意数据源",如图14和图15所示。
图14 添加比较任意数据源条件
图15 比较任意数据源
比较任意数据源条件是"如果值等于值"的形式,第一个值可以绑定到当前列表项的任意字段,或者是其他列表项的字段。这里我们要把它绑定到任务列表的"是否同意"字段。
单击"值",再单击"绑定"图标,在定义工作流查找窗口中,选择数据源为"任务",选择域为"是否同意",设置匹配值为任务ID匹配工作流变量中的"请假审批任务ID",如图16所示。
图16 绑定到是否同意字段
设置条件为任务的"是否同意"字段值等于"批准",如图17所示。
图17 设置判断条件为"批准"
Step10 添加列表项审批操作。在"操作"中选择"设置内容审批状态",并将内容审批状态设置为"已批准",如图18所示。
图18 添加审批操作
Step11 创建日历信息。添加一个"创建列表项"操作,选择列表为"个人日历"(若不存在,则先创建此日历列表),将日历的标题设置为"请假",将开始时间和结束时间绑定到当前列表项的相应字段,如图19所示。
图19 创建日历项
Step12 添加批准未通过的操作。添加一个Else If条件分支,添加设置内容审批状态操作,将内容审批状态设置为"已拒绝",添加一个发送邮件操作,给启动流程的用户发送一封提醒邮件,如图20所示。
图20 添加内容审批为"拒绝"和发送邮件操作
单击任务链接进入的任务查看页面,在任务查看页面中单击"编辑项目"链接后会转到任务编辑页面,如图21,图22和图23所示。
图21 任务列表
图22 任务查看页面
图23 任务编辑