2016-08-04 3 views
0

사용자를 위해 공유되는 계정 목록을 얻기 위해 어떻게 쿼리 할 수 ​​있는지 궁금해했습니다. SDK를 사용하여 나는 다음과 같은 방법을 시도했지만 수없는 적절한 해결책을 찾을 수 :공유 계정 가져 오기 CRM SDK의 권한있는 계정 엔티티

QueryExpression query1 = new QueryExpression 
     { 
      EntityName = "account", 
      ColumnSet = new ColumnSet("name", "address1_city") 

     }; 
query1.LinkEntities.Add(new LinkEntity("account", "systemuser", "ownerid", "systemuserid", JoinOperator.Inner)); 
query1.LinkEntities[0].Columns.AddColumns("fullname"); 
query1.LinkEntities[0].EntityAlias = "share"; 

나는 하루 종일이 주위에 내 머리를 작업 CRM SDK를 새로운 오전. 아무도 도와 줄 수 있습니까?

답변

1

RetrieveSharedPrincipalsAndAccessRequest을 사용해보세요.

MSDN.

var accessRequest = new RetrieveSharedPrincipalsAndAccessRequest 
{ 
    Target = leadReference 
}; 

// The RetrieveSharedPrincipalsAndAccessResponse returns an entity reference 
// that has a LogicalName of "user" when returning access information for a 
// "team." 
var accessResponse = (RetrieveSharedPrincipalsAndAccessResponse)_serviceProxy.Execute(accessRequest); 
Console.WriteLine("The following have the specified granted access to the lead."); 
foreach (var principalAccess in accessResponse.PrincipalAccesses) 
{ 
    Console.WriteLine("\t{0}:\r\n\t\t{1}", GetEntityReferenceString(principalAccess.Principal), principalAccess.AccessMask); 
} 
+0

대답과 주셔서 감사하지만 난 대상으로 시스템 사용자를 준 경우, 계정의 사용자 ID 목록을 얻기 위해 '가'RetrieveSharedPrincipalsAndAccess systemuser ''방법은 유형의 엔티티를 지원하지 않습니다 '을 보여줍니다 경우이 코드입니다. 사실 나는 특정 계정에 공유되는 계정 목록을 원합니다. –

+0

계정을 계정에 공유 할 수 없습니다. –

+0

죄송합니다. 특정 시스템 사용자와 공유되는 계정 목록을 가져 오라고 요청했습니다. 이전 댓글을 무시하십시오. –