2

我目前正在开发一个 MOSS 2007 站点,我需要设置一个“系统”,它将通过电子邮件发送站点中所有列表和库中的所有更改。

我是 Sharepoint 世界的新手,我想知道这是否可能。

PS 我无法访问中央管理面板。(如果这与我的目的有关)

谢谢

4

2 回答 2

1

恐怕您只能在列表(或项目)的基础上设置警报。在列表中,您转到操作 => 警报 => 何时发送警报 => 每周。我没有检查中央管理员,因为您在您的场景中没有访问权限。

于 2010-02-11T13:53:02.220 回答
1

您可以编写自定义计时器作业来完成此任务。

你可以这样做:

  1. 创建自定义计时器作业功能,设置计时器作业时间表。
  2. 在 FeatureActivated 事件中,将该 timerjob 添加到 SharePoint 并在 timerjob 中具有类似 SiteUrl 的[Persisted] 属性,您可以将其传递给构造函数以让 timerjob 确定要使用哪个站点。
  3. 使用SPWeb.SiteUsers获取 SharePoint 中的所有用户。
  4. 循环每个用户,打开新的 SPSite 冒充每个用户
  5. 在 SPSite.RootWeb (SPWeb) 上执行GetSiteData(阅读社区评论以获取一些很好的示例和有关如何使用它的说明)。使用 Query 来查询Modified 字段的值大于您想要的值的项目(点击链接获取重要信息以正确查询)。
  6. 从您的数据和SPUtility.SendMail生成 html 。

有可用的预定提醒作业功能。但是它仅适用于 1 List 范围。但是您可以下载源代码,打开 RmdJobDefinition 类,然后看看它是如何帮助您编写自己的类的。

祝你好运。

于 2010-02-12T11:01:38.553 回答