65.9K
CodeProject 正在变化。 阅读更多。
Home

无需工作流的请假审批

starIconstarIconstarIconstarIconstarIcon

5.00/5 (1投票)

2012年9月4日

CPOL

5分钟阅读

viewsIcon

21714

使用请假审批场景的内容审批功能。

引言

在本文中,我们可以探讨在不使用工作流的情况下实现请假审批场景。

场景

以下是系统的用户。

  1. manager (经理)
  2. employee1 (一名员工)
  3. employee2 (另一名员工)

员工可以使用名为“Leaves”的列表申请休假。经理有权批准或拒绝休假申请。员工不应看到其他员工的申请。我们如何实现这一功能?

解决方案

这里有两种解决方案

  • 使用列表内容审批
  • 使用审批工作流

为简单起见,我们使用列表内容审批功能。工作流解决方案可用于更复杂的场景。

以下是列表内容审批解决方案涉及的步骤。

创建新用户

为我们的目的创建三个新用户。如果您使用的是 Windows 7 操作系统,请转到“控制面板”>“用户账户”项。

如果您使用的是 Windows Server 操作系统,请使用服务器管理器应用程序的“Active Directory”部分添加新用户。

创建新网站集

创建用户后,从“中央管理”创建新的网站集。将经理设置为主要网站集管理员。

注意:添加为主要网站集管理员会将“manager”用户添加到网站权限中的“所有者”组。所有者应拥有更改列表设置、查看等权限。

分配网站权限

创建网站集后,使用 URL 打开新网站。以经理用户身份登录。

转到“网站操作”>“网站权限”并打开“成员”组。

使用“新建”>“添加用户”菜单项将另外两个用户(employee1、employee2)添加到此组。添加这两个用户后,列表应如下所示

现在,这些用户应该能够查看网站集内的列表和库。

创建新列表

现在执行以下操作

  • 使用 URL 打开网站集
  • 以经理用户身份登录
  • 创建一个名为 Leaves 的自定义列表
  • 将以下列添加到列表中

您可以看到“创建者”和“修改者”列已自动添加,并代表申请休假的员工。

以下是列表的默认视图。

启用内容审批

这是本文的核心部分,我们将启用 SharePoint 2010 的内容审批功能。启用此功能后,列表项将具有

  • 一个名为“审批状态”(待定、已批准、已拒绝)的新列
  • 当创建需要审批的项目时,会向经理发送通知
  • 当项目被批准或拒绝时,会向员工发送通知

要启用此功能,请以经理模式打开上述列表并转到“列表设置”。

从那里选择“版本设置”链接,如上所示。选择第一个选项“提交的项目需要内容审批”,然后单击“确定”按钮。

现在您可以看到列表视图中已添加一个新列。

注意:使用服务器对象模型列表属性 EnableModeration 可以实现同样的效果。

修改默认视图

我们需要对 Leaves 列表的视图进行一些修改。当前视图显示所有员工的休假申请。我们需要将其限制为仅显示

  • 当前登录用户的休假申请
  • 或者

  • 待定的休假申请

注意:视图提供了应用多个视图和更改现有休假等灵活性。

要实现这一点,请打开 Leaves 列表,转到“列表”选项卡,然后单击如下所示的“修改视图”按钮

向下滚动到“筛选”部分并进行如下设置

当满足以下任一条件时,将显示项目

  • “创建者”列等于 [我](作为登录用户)
  • 或者

  • “审批状态”列等于“待定”

以 Employee 1 身份登录

现在您需要以 Employee 1 用户身份登录。为此,请创建一个新的浏览器实例,并使用新会话。

注意:如果您使用的是 Internet Explorer,请在键盘上按下并释放 Alt 键以查看 文件 菜单。从菜单中单击“新建会话”菜单项。

在出现的新浏览器实例中,以 Employee 1 身份登录。

现在,在 Leaves 列表中创建一个新的休假项目。将休假时间设置为“Employee 1 的原因”,如下所示。

您可以看到“审批状态”已自动设置为“待定”。

以 Employee 2 身份登录

现在您需要以 Employee 2 用户身份登录。为此,请创建一个新的浏览器实例,并使用新会话。如果您使用的是 Internet Explorer,请使用相同的 Alt + 文件 > 新建会话。

在出现的新浏览器实例中,以 Employee 2 身份登录。

现在,在 Leaves 列表中创建一个新的休假项目。将休假时间设置为“Employee 2 的原因”,如下所示。

您可以看到“审批状态”已自动设置为“待定”。

注意:您可以看到 Employee 1 只能看到他自己的休假项目,Employee 2 也是如此。视图的过滤正在实现这一神奇效果。

返回到经理

现在您可以返回到经理的浏览会话。您应该能够看到两个列表项。

作为经理,您可以通过选择列表项并使用工具栏按钮来批准或拒绝该项目。

单击“批准/拒绝”按钮后,您将看到以下对话框。

您可以对第二个项目重复此操作。

返回到员工

回到 Employee 1 的会话,您可以看到相应的休假项目已被批准。

现在回到经理屏幕,拒绝剩余的休假项目,然后以 Employee 2 身份登录以查看状态为“已拒绝”。

至此,我们完成了不使用工作流的请假申请实现。为了方便经理使用,您可以编辑网站主页,将其包含 Leaves 列表,如下所示。

参考文献

摘要

在本文中,我们探讨了使用请假审批场景的内容审批功能。以下是值得记住的要点

  • 内容审批允许在不使用工作流的情况下进行项目审批
  • “审批状态”列会自动添加到列表项中
  • 视图提供了一种方便的过滤项目的方法。

要尝试邮件通知,您需要为 SharePoint 配置邮件设置。

© . All rights reserved.