2016-05-12 7 views
0

Ich habe ein Szenario, in dem ich eine große Anzahl von Datensätzen (~ 20000) auf dem Gerät für die Offline-Nutzung durch den Benutzer speichern müssen. Ich wollte etwas darüber wissen, was der beste Weg dafür wäre. Ich plane, das KAPSEL OData Offline-Plugin zu verwenden, um mit den Daten zu interagieren.OData fordert zum Abrufen großer Datenmengen und speichert sie auf dem Gerät

Die größte Hürde ist der Datenabruf/-speicher für jeden Benutzer, der die App zum ersten Mal installiert. Danach werden nur Deltas abgerufen und periodisch gespeichert. Wenn ich einen OData-Aufruf für 20000 Datensätze mache, bin ich mir ziemlich sicher, dass dies zu einem Timeout führen oder die UI für eine beträchtliche Zeit unbrauchbar machen wird.

Es gibt immer die Möglichkeit, mehrere OData-Aufrufe durchzuführen, indem jedes Mal kleinere Datenmengen abgerufen oder die Datendateien in der App aufbewahrt werden, die nicht sicher sind.

Was könnte der beste Ansatz für ein solches Szenario sein?

Antwort

0

Sie könnten eine erste Anfrage machen, um alle Einträge zu holen, nur um sie auf dem Gerät (Kapsel) zwischenzuspeichern.

Später von der Benutzeroberfläche sollten Sie natürlich die Optionen $ top/$ skip verwenden, um nur begrenzte Datenblöcke auf einmal zu holen/zu rendern, wie schon @lencarest gezeigt hat.

Beachten Sie, dass einige der SAPUI5-Steuerelemente dies automatisch z. Überprüfen Sie sap.m.ListBase wachsende Eigenschaften.

Verwandte Themen