首页 > 其他 > 详细

crm查询记录共享给了哪些人

时间:2016-02-18 21:23:40      阅读:211      评论:0      收藏:0      [点我收藏+]

技术分享有时候,我们须要查询一个记录。共享给了哪些人?怎么做?

第一种做法:是sql的方式

select * from PrincipalObjectAccess where objectid = ‘522626B1-D10C-E411-80FF-00155D002F02‘
select u.FullName,sup.SystemUserId,POA.ObjectId,AccessRightsMask
from PrincipalObjectAccess POA inner
join SystemUserPrincipals sup on POA.PrincipalId = sup.PrincipalId
inner join SystemUserBase u
on sup.SystemUserId=u.SystemUserId
where
((POA.AccessRightsMask | POA.InheritedAccessRightsMask) & 1)=1
and POA.ObjectId=‘522626B1-D10C-E411-80FF-00155D002F02‘

技术分享

另外一种是运行request的方式:

EntityReference target = new EntityReference();
target.Id = new Guid("522626B1-D10C-E411-80FF-00155D002F02");
target.LogicalName = "new_pr_detail_gather";

                
RetrieveSharedPrincipalsAndAccessRequest shareRequest = new RetrieveSharedPrincipalsAndAccessRequest();
shareRequest.Target = target;
RetrieveSharedPrincipalsAndAccessResponse shareResponse =
      (RetrieveSharedPrincipalsAndAccessResponse)service.Execute(shareRequest);
if(shareResponse.PrincipalAccesses != null) 
{
        foreach(PrincipalAccess pa in shareResponse.PrincipalAccesses)
        {
                 System.Console.WriteLine("AccessMask: " + pa.AccessMask);
                 System.Console.WriteLine("Id: " + pa.Principal.Id + ",LogicalName: " + pa.Principal.LogicalName); 
        }
}


技术分享                

 

crm查询记录共享给了哪些人

原文:http://www.cnblogs.com/bhlsheji/p/5199283.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!