레코드가 5000 개가 넘는 연락처 엔티티가 있습니다. 페이징 쿠키 이외의 다른 방법으로 레코드 수를 쉽게 찾을 수 있습니까?Dynamics CRM에서 5K 개 이상의 레코드에 대한 레코드 수를받습니다.
-1
A
답변
1
XRM 도구 상자에 뷰 레코드 카운터라고하는이 플러그인이 있다는 것을 알았습니다. 문제가 해결되어 페이징 쿠키를 사용할 필요가 없습니다. 그러나 이것은 50K 결과를 계산하기 전에 플러그인도 몇 초가 걸리기 때문에 이상적이지 않습니다.
이<fetch aggregate="true" >
<entity name="account" >
<attribute name="accountid" alias="an" aggregate="count" />
</entity>
</fetch>
당신은 그런 식으로 호출 할 수 있습니다 :
string fetchXml = @"<fetch aggregate='true' >
<entity name='account' >
<attribute name='accountid' alias='accountscount' aggregate='count' />
</entity>
</fetch>";
var results = Service.RetrieveMultiple(new FetchExpression(fetchXml)).Entities;
var count = ((Microsoft.Xrm.Sdk.AliasedValue)results.First()["accountscount"]).Value;
를 또는를 만들기 위해 FetchXMLBuilder 같은 도구를 사용
0
당신은 항상 계정에 대한 예를 들어, 레코드 수를 얻을 수 FetchXML을 사용할 수 있습니다 당신에게 전화하십시오
이것은 작동하지만 여전히 50,000 한계가 있습니다. 이 도구를 XRM 도구 상자에서 실행하면 AggregateQueryRecordLimit가 초과되었다는 오류가 반환됩니다. 내 경우에는 arround 550 K 레코드가 있으므로이 방법은 작동하지 않습니다. –