Het aantal zoekresultaten is 5000 bij het instellen van het kenmerk Count op 20000 in Microsoft Dynamics CRM

Dit artikel biedt een oplossing voor het probleem dat het aantal zoekresultaten dat wordt geretourneerd 5000 is, zelfs als u het kenmerk Count instelt op 20.000 in het FetchXml-schema.

Van toepassing op: Microsoft Dynamics CRM 2011
Origineel KB-nummer: 911510

Belangrijk

Dit artikel bevat informatie over het wijzigen van het register. Zorg ervoor dat u een back-up van het register maakt voordat u deze wijzigt. Zorg dat u weet hoe u het register wilt herstellen als er een probleem optreedt. Raadpleeg Een back-up maken van en het herstellen van het register in Windows voor meer informatie over het maken van een back-up van het register, het herstellen en wijzigen van het register.

Symptomen

U gebruikt het Count kenmerk in het FetchXml-schema om een query te maken op de Microsoft Dynamics CRM-database. Vervolgens stelt u het Count kenmerk in op 20.000. In dit scenario is het aantal zoekresultaten dat wordt geretourneerd 5000. Bovendien is de SELECT instructie in de SQL-taal altijd SELECT TOP 5001 ongeacht wat er is ingesteld voor het Count kenmerk en voor het Paging kenmerk.

Oorzaak

Dit probleem treedt op wanneer u het FetchXml-schema gebruikt om een resulterende zoekset op te halen en wanneer het moreRecords kenmerk is ingesteld op 1. De waarde van 1 geeft aan dat er meer dan 5000 records beschikbaar zijn. In Microsoft Dynamics CRM heeft het Paging kenmerk een paginalimiet van 5000.

Oplossing

Microsoft verstrekt programmeervoorbeelden alleen ter illustratie, zonder expliciete of impliciete garantie. daaronder mede begrepen, maar niet beperkt tot impliciete garanties met betrekking tot de verkoopbaarheid en/of geschiktheid voor een bepaald doel. In dit artikel wordt ervan uitgegaan dat u bekend bent met de programmeertaal VBScript, alsmede met de hulpprogramma's waarmee procedures worden gemaakt en waarmee fouten in procedures worden opgespoord. Ondersteuningsmedewerkers van Microsoft kunnen helpen bij de uitleg over de functionaliteit van een bepaalde procedure. Deze medewerkers zullen de voorbeelden echter niet aanpassen om extra functionaliteit toe te voegen of om procedures te maken die aan uw specifieke eisen voldoen.

U kunt dit probleem oplossen door het Paging kenmerk te gebruiken om records op te halen. Gebruik vervolgens het moreRecords kenmerk in de resulterende zoekset om te bepalen of de volgende pagina moet worden geretourneerd.

De volgende code laat bijvoorbeeld zien hoe u dit probleem kunt oplossen.

moreRecords = true;
i = 0;
while(moreRecords)
{
get page i
if(result has more records)
i++
else
moreRecords = false
}

Meer informatie

Waarschuwing

Er kunnen zich ernstige problemen voordoen als u het register met de Register-editor of met een andere methode foutief wijzigt. Wellicht moet u door deze problemen het besturingssysteem opnieuw installeren. Microsoft kan niet garanderen dat deze problemen kunnen worden opgelost. Het wijzigen van het register is op eigen risico.

Als u de paginalimiet wilt aanpassen aan een waarde die kleiner is dan 5000, voegt u de MaxRowsPerPage DWORD-waarde toe aan het register. Ga hiervoor als volgt te werk:

  1. Selecteer StartUitvoeren, typ regedit in het vak Openen en selecteer vervolgens OK.

  2. Selecteer de volgende registersubsleutel:

    HKEY_LOCAL_MACHINE\Software\Microsoft\MSCRM

  3. Wijs in het menu Bewerkende optie Nieuw aan en selecteer vervolgens DWORD-waarde.

  4. Typ MaxRowsPerPage en druk op Enter.

  5. Klik met de rechtermuisknop op MaxRowsPerPage en selecteer vervolgens Wijzigen.

  6. Typ een getal dat kleiner is dan of gelijk is aan 5000 in het vak Waardegegevens en selecteer vervolgens OK.

  7. Klik in het menu Bestand op Afsluiten.

Als u de wisselfunctie wilt uitschakelen en vervolgens de MaxRowsPerPage parameter 5000 wilt negeren, voegt u de TurnOffFetchThrottling DWORD-waarde toe aan het register. Ga hiervoor als volgt te werk:

Opmerking

Het uitvoeren van deze stappen kan prestatieproblemen op uw computer veroorzaken.

  1. Selecteer StartUitvoeren, typ regedit in het vak Openen en selecteer vervolgens OK.

  2. Selecteer de volgende registersubsleutel:

    HKEY_LOCAL_MACHINE\Software\Microsoft\MSCRM

  3. Wijs in het menu Bewerkende optie Nieuw aan en selecteer vervolgens DWORD-waarde.

  4. Typ TurnOffFetchThrottling en druk op Enter.

  5. Klik met de rechtermuisknop op TurnOffFetchThrottling en selecteer vervolgens Wijzigen.

  6. Typ een ander getal dan 0 in het vak Waardegegevens en selecteer vervolgens OK.

    Opmerking

    Met stap 6 kunt u het aantal records ophalen dat is opgegeven in het kenmerk Aantal van uw instructie ophalen.

  7. Klik in het menu Bestand op Afsluiten.