Sharepoint 为用户授予对其他列表中项目的权限

Sharepoint 为用户授予对其他列表中项目的权限,sharepoint,Sharepoint,这就是我正在做的。 我有两份清单: 列用户和分配给该用户的列项目 (图书馆):所有项目的清单 我想知道,通过在第一个列表中创建的每一行(因此添加一个用户和一个项目),如何能够在第二个库(项目库)中授予该项目引用的用户权限。 例子: 项目库: 项目1 项目2 项目3 第一个清单: 用户1项目1 用户1项目2 用户2项目2 用户2项目3 用户3项目3 现在我想让每个用户都有权查看分配给他的项目,这样当他打开第三个表单时,一个充满项目的组合框将只显示他有权查看的项目 非常感谢你 据我所知,在S

这就是我正在做的。 我有两份清单:

  • 列用户和分配给该用户的列项目
  • (图书馆):所有项目的清单
  • 我想知道,通过在第一个列表中创建的每一行(因此添加一个用户和一个项目),如何能够在第二个库(项目库)中授予该项目引用的用户权限。 例子: 项目库:

    • 项目1
    • 项目2
    • 项目3
    第一个清单:

    • 用户1项目1
    • 用户1项目2
    • 用户2项目2
    • 用户2项目3
    • 用户3项目3
    现在我想让每个用户都有权查看分配给他的项目,这样当他打开第三个表单时,一个充满项目的组合框将只显示他有权查看的项目


    非常感谢你

    据我所知,在Sharepoint中没有设置某些项目权限的标准方法。只在整个名单上。如果要筛选组合框-您需要在代码中实现自定义表单(应用程序页面)和筛选组合框。

    在SharePoint 2007中,支持项目级权限

    您可以创建一个列表事件处理程序(SPItemEventReceiver)。每次更改/添加用户项时,处理程序都可以更新相应的项目项

    public class EventHanlder: SPItemEventReceiver
    {
        public override void ItemAdded(SPItemEventProperties properties)
        {
            // collection user and project information from the item being updated.
            SPListItem item = properties.ListItem;
            SPUser user = new SPFieldUserValue(item.Web, item["UserFieldName"] as string).User;
            int projectId = new SPFieldLookupValue(item["ProjectFieldName"]).Id;
    
            // create role assignment for the user on the user item.
            SPRoleAssignment ra = new SPRoleAssignment(user);
            SPRoleDefinition rd = item.Web.RoleDefinitions.GetByType(SPRoleType.Reader);
            ra.RoleDefinitionBindings.Add(rd);
            ra.Update();
    
            // get the project item and update the role assignments.
            SPList projectList = // retrieve project list here...
            SPListItem projectItem = projectList.GetItemById(projectId);        
            projectItem.RoleAssignments.Add(ra);
        }
    }
    
    这只是示例代码。我不能100%确定SPField***值的东西是否是这样工作的

    现在我想让每个用户都有权查看分配给他的项目,这样当他打开第三个表单时,一个充满项目的组合框将只显示他有权查看的项目


    这应该通过查找字段自动完成,因为只有用户有权限的项目才会显示。

    OS?编程语言/环境?在Sharepoint中,使用nintex workflowson支持web的组合框,您无法实现过滤器,必须使用下拉列表:(您可以使用ExtJs组合框或jQuery自动完成或其他其他功能。并使用HttpHadler(*.ashx文件)为combo提供筛选数据。这对我来说最有效,因为我不熟悉这个,所以我真的不知道你在说什么。你能再解释一下吗?re:权限和列表项。不太正确Tim-你可以设置列表项的权限,与父列表/站点分开。设置>列表设置>权限>操作>编辑权限。