Hallo,

also wenn Du wirklich eine komfortable Suche erstellen willst, solltest Du ein wenig Java einsetzen und Lucene verwenden. Aber das ist ein anderes Thema.

Wir haben Dein Problem in etwa so realisiert. Die Kommunikation zwischen Client und AS/400 erfolgt über Keyed Dataqueue und Resultset. Bei der Suchanfrage des Client wird die Session-ID, der Suchstring und diverse Parameter (z.B. die gewählte Seitennummer) an die Input-Dataqueue übergeben, die ein Asynchronjob überwacht. Wenn die Seitennummer = 0, dann heißt das für uns es wird eine neue Suche durchgeführt, ansonsten wird nur in der Ergebnisliste navigiert. Je nach Seitennummer wird der entsprechende Teil der Ergebnisliste zusammen mit der Session-ID in eine Output Dataqueue zurück geschrieben (sozusagen als Zwischenspeicher). Der Inhalt bleibt in der Output-Dataqueue so lange erhalten, bis eine neue Suche ausgeführt wird. Beim Blättern bzw. Navigieren auf eine bestimmte Ergebnisseite lesen wir nur den betreffenden Teil aus dem Ergebnisfeld der Output-Dataqueue ein und geben das dem Client als Resultset zurück.

Gruß,
KM