Arbeiten mit dem Suchelementlimit der Schnellsuche

Schnellsuche bietet eine einfache Möglichkeit zum Konfigurieren der Standardsucherfahrung in Dynamics 365 Customer Engagement oder Microsoft Dataverse-Tabellen. Die Schnellsuche bietet eine optimierte Suche über mehrere Felder in einer einzigen Abfrage. Bei Verwendung der Schnellsuche gibt der Datendienst möglicherweise während einer Abfrage einen Fehler zurück, der Folgendes angibt:

Die Anzahl der Datensätze für diese Suche überschreitet das Datensatzlimit für die Schnellsuche.

Dieser Fehler tritt auf, weil die Abfrage zu viele Ergebnisse erhalten hat und gestoppt wurde, um zu verhindern, dass der Ressourcenverbrauch des Datendienstes potenzielle Ausfälle verursacht. In diesem Artikel wird erläutert, wie das Limit für 10.000 Suchelemente berechnet wird, und es werden bewährte Methoden zur Vermeidung dieses Grenzwerts aufgeführt.

Hinweis

Eine Schnellsuche ist eine FetchXML-Abfrage, die eine der folgenden Filterspalten enthält: isquickfindquery, isquickfindfields.

So wird das Suchelementlimit berechnet

Für Schnellsuche-Abfragen wird eine zweistufige Ausführung verwendet. In der ersten Phase werden die Filter der Schnellsuche und die bereitgestellte Suchzeichenfolge verwendet, um die Datensätze zu erfassen, bevor zusätzliche Filter angewendet werden. Die Abfrage-Engine erzwingt in dieser Phase das Limit von 10.000 Datensätzen.

Die zweite Stufe verwendet die Ergebnismenge der ersten Stufe und führt alle verbleibenden Filter aus, z. B. zugehörige Datensatz- oder Sicherheitsfilter.

Betrachten Sie die folgende FetchXML-Schnellsuche-Abfrage:

<fetch version='1.0' output-format='xml-platform' mapping='logical'>
  <entity name='account'>
    <attribute name='name' />
    <filter type='or' isquickfindfields='1' overridequickfindrecordlimitenabled='1'>
      <condition attribute='name' operator='like' value='%A%' />
    </filter>
    <filter type='and'>
      <condition attribute='statecode' operator='eq' value='0'/>
    </filter>
  </entity>
</fetch>

Die Abfrage-Engine führt zuerst die Bedingung für „Name“ aus. Da bei der Suche Platzhalter mit einer kurzen Suchzeichenfolge verwendet werden, erreicht die Abfrage das 10-KB-Limit, bevor andere Filter ausgeführt werden. Es ist wichtig zu beachten, dass selbst wenn die Ergebnismenge nach der zweiten Stufe (beim Anwenden eines Statuscodewerts) auf weniger als 10.000 Datensätze gefiltert worden wäre, die Abfrage-Engine in der ersten Stufe auf die Ausnahme trifft und nicht zur zweiten Stufe übergeht.

Wenn das Suchlimit nicht für Schnellsuche-Abfragen gilt

Die Abfrage-Engine behandelt Schnellsuche-Abfragen mit 1 oder null Suchspalten als Standardabfrage und nicht als Schnellsuche. Solche Abfragen unterliegen nicht dem Limit von 10.000 Datensätzen. Der Grund dafür ist, dass Schnellsuche-Abfragen mit 1 oder weniger Bedingungen als Standardabfrage besser funktionieren als bei der Schnellsuche.

Vermeiden der Suchlimitausnahme

Verwenden Sie beim Schreiben und Ausführen von Schnellsuche-Abfragen in Dynamics 365 Customer Engagement oder Dataverse die folgenden Tipps, um das Suchlimit von 10.000 zu vermeiden:

Bewährte Methoden bei Abfragen

Die folgenden bewährten Methoden sollten bei der Abfrage von Daten beachtet werden.

  • Vermeiden Sie das Hinzufügen unnötiger Felder zur Abfrageansicht der Schnellsuche
  • Halten Sie Abfragen so präzise wie möglich und vermeiden Sie generische Abfragen und unnötige Platzhalter

Spezifische Ausnahmeabfrage

Wenn Sie einen speziellen Bedarf haben, dass eine Abfrage dieses Limit vorübergehend überschreitet, bearbeiten Sie die FetchXML-Abfrage so, dass sie das Festlegen der Spalte overridequickfindrecordlimitenabled auf 0 innerhalb des Filter-XML-Elements enthält. Durch die Verwendung dieser Spalte wird das 10k-Limit für die spezifische Schnellsuche-Abfrage deaktiviert.

Organisatorische Außerkraftsetzung

In extremen Fällen, in denen eine Unternehmensorganisationsabfrage regelmäßig mehr als 10.000 Suchelemente zurückgibt, kann ein Administrator den Microsoft-Support kontaktieren, um die Deaktivierung des Grenzwerts für 10.000 Elemente anzufordern. Das Deaktivieren des Grenzwerts wird nicht empfohlen und kann bei Missbrauch zu übermäßigem Ressourcenverbrauch und umgebungsweiten Ausfällen führen.

Siehe auch

Verwenden von FetchXML zum Erstellen einerAbfrage

Hinweis

Können Sie uns Ihre Präferenzen für die Dokumentationssprache mitteilen? Nehmen Sie an einer kurzen Umfrage teil. (Beachten Sie, dass diese Umfrage auf Englisch ist.)

Die Umfrage dauert etwa sieben Minuten. Es werden keine personenbezogenen Daten erhoben. (Datenschutzbestimmungen).