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-你可以设置列表项的权限,与父列表/站点分开。设置>列表设置>权限>操作>编辑权限。