Die Anzahl der Suchergebnisse beträgt 5.000, wenn das Count-Attribut in Microsoft Dynamics CRM

Dieser Artikel bietet eine Lösung für das Problem, dass die Anzahl der zurückgegebenen Suchergebnisse 5.000 ist, auch wenn Sie das Count-Attribut im FetchXml-Schema auf 20.000 festlegen.

Gilt für: Microsoft Dynamics CRM 2011
Ursprüngliche KB-Nummer: 911510

Wichtig

Dieser Artikel enthält Informationen zum Bearbeiten der Registrierung. Sie sollten eine Sicherungskopie der Registrierung erstellen, bevor Sie die Registrierung bearbeiten. Sie müssen wissen, wie die Registrierung wiederhergestellt werden kann, wenn ein Problem auftritt. Weitere Informationen zum Sichern, Wiederherstellen und Ändern der Registrierung finden Sie unter Sichern und Wiederherstellen der Registrierung in Windows.

Problembeschreibung

Sie verwenden das Count -Attribut im FetchXml-Schema, um eine Abfrage für die Microsoft Dynamics CRM-Datenbank zu erstellen. Anschließend legen Sie das Count Attribut auf 20.000 fest. In diesem Szenario beträgt die Anzahl der zurückgegebenen Suchergebnisse 5.000. Darüber hinaus ist die SELECT Anweisung in der SQL-Sprache immer SELECT TOP 5001 unabhängig davon, was für das Count Attribut und für das Paging Attribut festgelegt ist.

Ursache

Dieses Problem tritt auf, wenn Sie das FetchXml-Schema verwenden, um einen resultierenden Suchsatz abzurufen, und wenn das moreRecords Attribut auf 1 festgelegt ist. Der Wert 1 gibt an, dass mehr als 5.000 Datensätze verfügbar sind. In Microsoft Dynamics CRM hat das Paging Attribut ein Seitenlimit von 5.000.

Lösung

Die Verwendung der hier aufgeführten Informationen, Makro- oder Programmcodes geschieht auf Ihre eigene Verantwortung. Microsoft stellt Ihnen diese Informationen sowie Makro- und Programmlistings ohne Gewähr auf Richtigkeit, Vollständigkeit und/oder Funktionsfähigkeit sowie ohne Anspruch auf Support zur Verfügung. Die zur Verfügung gestellten Makro- und Programmierungsbeispiele sollen lediglich exemplarisch die Funktionsweise des Beispiels aufzeigen. Die Mitarbeiter der Microsoft Product Support Services erklären Ihnen gerne die Funktionsweise einer bestimmten Prozedur. Die Mitarbeiter werden diese Beispiele jedoch weder modifizieren, um zusätzliche Funktionalität zu schaffen, noch Prozeduren entwickeln, die auf Ihre spezifischen Bedürfnisse zugeschnitten sind.

Um dieses Problem zu beheben, verwenden Sie das Paging -Attribut zum Abrufen von Datensätzen. Verwenden Sie dann das moreRecords -Attribut im resultierenden Suchsatz, um zu bestimmen, ob die nächste Seite zurückgegeben werden soll.

Der folgende Code veranschaulicht beispielsweise, wie dieses Problem behoben wird.

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

Weitere Informationen

Warnung

Schwerwiegende Probleme können auftreten, wenn die Registrierung mit dem Registrierungs-Editor oder einer anderen Methode unsachgemäß bearbeitet wird. Aufgrund dieser Probleme kann eine Neuinstallation des Betriebssystems erforderlich sein. Microsoft gibt keinerlei Garantien dafür ab, dass diese Probleme behoben werden können. Das Ändern der Registrierung erfolgt auf eigenes Risiko.

Um das Seitenlimit auf einen Wert unter 5.000 anzupassen, fügen Sie den MaxRowsPerPage DWORD-Wert der Registrierung hinzu. Gehen Sie dazu wie folgt vor:

  1. Klicken Sie auf Start und auf Ausführen. Geben Sie in das Feld Öffnen die Zeichenfolge regedit ein, und klicken Sie anschließend auf OK.

  2. Klicken Sie auf den folgenden Registrierungsunterschlüssel:

    HKEY_LOCAL_MACHINE\Software\Microsoft\MSCRM

  3. Zeigen Sie im Menü Bearbeiten auf Neu, und wählen Sie dann DWORD-Wert aus.

  4. Geben Sie MaxRowsPerPage ein, und drücken Sie dann die EINGABETASTE.

  5. Klicken Sie mit der rechten Maustaste auf MaxRowsPerPage, und wählen Sie dann Ändern aus.

  6. Geben Sie im Feld Wert eine Zahl ein, die kleiner oder gleich 5.000 ist, und wählen Sie dann OK aus.

  7. Wählen Sie im Menü Datei die Option Beenden aus.

Um das Auslagerungsfeature zu deaktivieren und dann den MaxRowsPerPage Parameter 5.000 zu ignorieren, fügen Sie der Registrierung den TurnOffFetchThrottling DWORD-Wert hinzu. Gehen Sie dazu wie folgt vor:

Hinweis

Die Ausführung dieser Schritte kann zu Leistungsproblemen auf Ihrem Computer führen.

  1. Klicken Sie auf Start und auf Ausführen. Geben Sie in das Feld Öffnen die Zeichenfolge regedit ein, und klicken Sie anschließend auf OK.

  2. Klicken Sie auf den folgenden Registrierungsunterschlüssel:

    HKEY_LOCAL_MACHINE\Software\Microsoft\MSCRM

  3. Zeigen Sie im Menü Bearbeiten auf Neu, und wählen Sie dann DWORD-Wert aus.

  4. Geben Sie TurnOffFetchThrottling ein, und drücken Sie dann die EINGABETASTE.

  5. Klicken Sie mit der rechten Maustaste auf TurnOffFetchThrottling, und wählen Sie dann Ändern aus.

  6. Geben Sie im Feld Wert eine andere Zahl als 0 ein, und wählen Sie dann OK aus.

    Hinweis

    In Schritt 6 können Sie die Anzahl der Datensätze abrufen, die im Count-Attribut Ihrer fetch-Anweisung angegeben sind.

  7. Wählen Sie im Menü Datei die Option Beenden aus.