如何在Dynamics CRM 2016 v8.2中使用JavaScript在运行时检查用户特权?

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

我需要在运行时检查用户权限。场景:User1创建了记录,并且已将分配给user1记录的user2设为只读。因此,user1无权访问该特定记录。那么我们可以检查user1的运行时特权吗?

dynamics-crm dynamics-crm-2016
1个回答
0
投票

[我知道这是this的后续问题,您需要一种变通方法来识别表单模式-当用户的读取权限大于用户级别但具有用户级别的编辑权限时,因为CRM 2016错误无法对表单进行分类像只读vs更新这样的类型。

[您可以选择在表单中选择一个字段来检索该特定字段的canRead,canUpdate访问级别并确定您要执行的操作。

Xrm.Page.getAttribute("field_name").getUserPrivilege();

我认为这是一个错误,因为它从CRM 2011到CRM 2015一直在正常工作。我们使用的解决方法是,如果表单类型为2,我们将进行另一个JavaScript Ajax调用,以检查对记录,如果已读取,则我们认为该表单是只读的,如果是写入,则该表单处于更新模式。

当然,此解决方案会增加表单加载的性能成本,但对于我们的情况而言,它是不错的选择。

[另一种解决方法,我想我在StackOverflow中看到了它,是您在表单上寻找一个字段,该字段应在写入模式下可编辑,并检查它是否可编辑或只读,但我们没有这样做。请尝试此解决方案。

Reference

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