【问题标题】:Filter SharePoint list by "current user member of group"按“当前用户组成员”筛选 SharePoint 列表
【发布时间】:2020-03-22 03:11:38
【问题描述】:

我有一个 SharePoint 在线列表,在一个网站上,组织中的每个人都具有读取权限。 该列表有 3 列:标题、链接、站点,并且是来自不同 SharePoint 站点的页面的目录,具有不同的成员。该列表由在发布页面并且其名称遵循模式时触发的 Flows 填充。

例如:

第 1 条 |链接到文章1 |财务

第 2 条 |链接到文章 2 |管理

我想过滤此列表,以便每个用户只能看到指向他所属网站的链接。

看上面的例子,如果当前用户是 Financial Team 的成员但不是 Administration 的成员,他应该只看到 Article1。

是否可以通过 SharePoint 视图筛选或视图格式 json 来做到这一点?

谢谢!

【问题讨论】:

    标签: sharepoint sharepoint-online sharepoint-list


    【解决方案1】:

    您可以将类型为 User/Group 的第四列(组)添加到列表中,并用应该查看它的组填充它。之后,您可以使用 CAML Membership 元素进行过滤。

    基本上,您的 SPView.Query 应该类似于(如果 ShowForGroups 是包含组的列的内部名称):

    <Where>
       <Or>
          <Eq>
             <FieldRef Name="ShowForGroups" />
             <Value Type="Integer">
                <UserID />
             </Value>
          </Eq>
          <Membership Type="CurrentUserGroups">
             <FieldRef Name="ShowForGroups" />
          </Membership>
       </Or>
    </Where>
    

    但是,您将无法创建此类视图,使用 SharePoint 视图创建页面,您需要使用 powershell。

    【讨论】:

    • 谢谢!有效!我对 CAML 或使用 PowerShell 一无所知,但您的回答是一个很好的起点。
    猜你喜欢
    • 2014-11-26
    • 2019-02-26
    • 2011-06-14
    • 2013-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多