Frage

Gibt es eine effiziente Möglichkeit, um durch die Ergebnisse einer Abfrage SOQL ohne Rück alle Abfrageergebnisse zu bringen und dann zu verwerfen, die Mehrheit von ihnen?

Als Beispiel würde Ich mag auf, um durch die vollständige Liste der Kontakte in der Lage sein 10 Datensätze gleichzeitig zeigt. Ich habe nicht das Bedürfnis habe, von einem bestimmten Feld zu sortieren.

War es hilfreich?

Lösung

Zur Zeit die effizienteste Lösung, die ich gefunden habe, die mit jeder SOQL Abfrage durch die Partner API arbeiten ist die sObjects von der anfänglichen queryresult zurück zu beharren und der Abfrage-Locator einhüllen einer Seite außerhalb der aktuellen Ergebnisse angefordert wird.

Dies erforderte ein Niveau von Paging-Unterstützung auf dem Salesforce queryresult.

d. Wenn eine Seite angefordert wird sObjects aus erforderlich sein kann:

  • Die aktuelle (gecached) queryresult
  • Eine nachfolgende queryresult, die die Abfrage-Locator abgerufen werden können mit
  • A vor queryresult
  • Eine Kombination aller drei.

Wenn die Seite erstreckt sich über zwei (oder mehr) QueryResults ein artifical queryresult benötigt mit allen erforderlichen Datensätze erstellt werden.

Update für das Frühjahr 2012 Release

Sieht aus wie es neue Funktionalität ist, dass kommen wird OFFSET Unterstützung SOQL hinzufügen. Z.

SELECT Name FROM Merchandise__c WHERE Price__c > 5.0 ORDER BY Name LIMIT 50 OFFSET 100

Siehe Frühling '12 Force.com Plattform-Release - OFFSET hinzugefügt SOQL (Pilot)

Update für den Sommer 2012 Release

OFFSET ist jetzt GA (General Verfügbarkeit?)

Andere Tipps

können Sie eine Auto-Nummer abgelegt verwenden Paginierung auf Server-Seite zu tun. Dieses Feld kann nach ‚order by‘ -Klausel verwendet wird, kann es als ein Indexfeld handeln.

Ich habe Paginierung getan wie das, was Sie auf dieser Seite. aber ich habe ein anderes Problem, kann ich irgendwie zur gleichen Zeit in Server-Seite nicht. weil Art und Paginierung müssen beide Spalte nach ‚order by‘ -Klausel hinzufügen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top