设为首页 收藏本站
查看: 1141|回复: 0

[经验分享] 揪出未完成的SharePoint Server 2007调查答复

[复制链接]

尚未签到

发表于 2015-9-27 08:08:23 | 显示全部楼层 |阅读模式
  SharePoint的调查功能是一种用来收集反馈的极为有效的方法。在调查列表中,可以设置权限来规定用户是否能看到其他用户的答复以及是否能编辑其他用户的答复,但这种权限仅限于其他用户已经正常完成了的答复。
  也就是说,如果某一用户的答复没有正常完成,只是暂时保存了,那么除了创建者之外,所有人都无法在调查列表中看到该答复,甚至管理员也不例外。
  在包含未完成答复的情况下,调查列表的“答复数量”中显示的数字会多余点击“显示所有答复”后显示的答复数量。那么此时,如果想要知道哪些用户还没有完成答复,该怎么做呢?
  上面说过,网站管理员也无法看到未完成的答复;而我尝试过使用SharePoint对象模型来获取该调查列表中的Items,也只能获取到已经完成的答复;最后只好进入SharePoint的数据库中来寻找答案……
  在包含调查列表的内容数据库中执行下面这段SQL查询,然后就可以得到指定调查列表中的所有未完成答复的用户:
  select UserInfo.tp_login,UserInfo.tp_Title,UserInfo.tp_Email --取出用户登录名、显示名和邮箱
  from UserInfo,AllUserData,AllLists
  where AllUserData.tp_Author = UserInfo.tp_ID --关联用户数据的创建者和用户信息ID
  and AllUserData.tp_ListID = AllLists.tp_ID --关联用户数据的列表和列表ID
  and AllUserData.tp_DeleteTransactionId = 0x --除去用户数据中已经被删除的条目
  and AllUserData.tp_CheckoutUserId is not NULL --除去没有被签出的条目(签出即表示没有完成)
  and AllLists.tp_DeleteTransactionId = 0x --除去列表中已经被删除的条目
  and AllLists.tp_Title = N'调查测试' --传入列表名称
  
  这段SQL查询看其来有点儿复杂,其实不难理解,这里简单地解释一下涉及到的3张表:

  • UserInfo表包含了所有用户的信息,我们将在此表中获取用户信息;
  • AllUserData表包含了所有用户所产生的数据,当然也包含未完成的答复;
  • AllLists表包含了所有列表,当然也包含了调查列表,我们将在此表中根据列表名称获取列表ID;
  上面的SQL查询只是简单地列出了某调查列表中所有未完成答复的创建者信息,这样管理员就可以通知这些创建者去完成各自的答复了。
  本文仅适用于SharePoint Server 2007,它的数据库结构和SPS 2003有所区别,关于如何在SPS2003中获取调查答复,可以参考这篇文章:http://cregan.wordpress.com/2006/07/28/sharepoint-surveys-finding-the-results-in-the-database/
  另外,直接操作SharePoint数据库并不是微软所推荐的方式,在可以使用SharePoint对象模型或其他方法的情况下,尽量不要去直接操作SharePoint数据库。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-119266-1-1.html 上篇帖子: Sharepoint学习笔记—Ribbon系列-- 9.如何让用户定义的Ribbon引用外部Javascript文件 下篇帖子: [SharePoint 2010 的那些事儿 – Excel Service]如何与EWA WebPart进行交互
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表