Paginación de rejillas


([N1] Rafael) #1

Buenos días,

Tengo un formulario en el que ejecuto una búsqueda que me devuelve 5.800 registros y que muestro en una rejilla. He comprobado que en la nube es algo lento, sobre todo porque puede que en un futuro la búsqueda me devuelve más registros. he pensado entonces en que, quizá, se podría paginar los resultados.

Me refiero a que en vez de mostrar los 5800 registros, muestre sólo 100 y con un botón ir cargando de 100 en 100. He pensado en que la búsqueda tenga un inicio y un fin, pero no sé como hacerlo, ya que no puedo hacerlo sobre el campo ID puesto que dependiendo de otras condicionantes de búsqueda pueden salirme ID no ordenador (los 100 primeros resultantes no tiene que tener forzosamente los 100 primeros ID.

¿Se os ocurre alguna forma de hacerlo?

 

Saludos y gracias a todos

 


([N1] Pepeto) #2

Puedes hacerlo con la sentencia CORTAR LISTA,

solo necesitas saber el nº de registro inicial y el nº de registros de la lista resultante

el orden, sera el que tenga la lista inicial

un saludo

Jose Luis

 


([N1] Rafael) #3

Hola Pepeto,

El comando CORTAR LISTA me permite reducir una lista que ya tengo como origen. Es decir, tendría que hacer la búsqueda sobre los 5.800 registros y luego sobre la lista resultante aplicar el CORTAR LISTA. Luego, cada vez que quisiera paginar tendría que volver a ejecutar la busqueda completa y no ganaria nada en velocidad, más bien empeoraría la cosa.

 


([N1] Pepeto) #4

Te puedo asegurar que se nota la diferencia, si bien las pruebas las hice con la version 7.3 de vServer y listas de mas de 100.000 registros que iban muy lentas, y se notaba muchisimo.

Ahora, tambien es verdad que vServer ha mejorado los tiempos de respuesta, y las listas de 100.000 registros apenas tardan nada, entonces si usas CORTAR LISTA, la diferencia sera menor.

Las pruebas se realizaron en local, pero con la 7.3 habia mucha diferencia.

No he tenido ocasion de volver a probarlo con la nueva version porque necesito avanzar otros temas.

un saludo

Jose Luis

 








(Chema) #5

Podrías hacer la búsqueda en 3P y retornar únicamente el bloque de 100 elementos que te interesa. En este tutorial tienes ejemplos de búsqueda en 3P.

 

Saludos





([N4] velavisual) #6

@rzaragoza.dinacom

 

Podías probar con el nuevo control -visor html- que mostrase el listado previamente generado en 3p de los registros buscados. Al ser código html que has generado a la hora de crear la búsqueda, seguro que es casi inmediato.

 

Por otra lado está la posible edición de cualquier registro mostrado, eso ya sería otro detalle a tener en cuenta.

 

No he probado nada de esto aún, pero te debe funcionar muy bien al mostrar el html directamente sobre el formulario, y no mostrar la rejilla en sí.

A los que generan listados en html le encantará éste control.

 

saludos

Antonio Vela

http://www.velavisual.com