按“组的当前用户成员筛选SharePoint列表”

问题描述 投票:0回答:1

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

例如:

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

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

我想过滤此列表,以便每个用户仅看到指向其所属站点的链接。

请看上面的示例,如果当前用户是财务团队的成员,但不是行政部门的成员,那么他应该只看到第1条。

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

谢谢!

sharepoint sharepoint-online sharepoint-list
1个回答
0
投票

您可以将类型为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。

© www.soinside.com 2019 - 2024. All rights reserved.