Alina, proba lo sig:
//Carga de los registros del Grid
Event Load
&TotReg = 0
For each
... //Tus filtros de carga...
... //Tu logica de carga de las variables, si las tuvieras
... // LOAD : De ser requerido
&TotReg += 1 // Contador de registros de tu "tabla"...
Endfor
&TotalPages = Round( (&TotReg / Grid.Rows) + 0.5 , 0)
&label= str(&CurrentPage)+" de "+str(&TotalPages) "pags."
&label= trim(&label)
EndEvent //Load
Event 'First'
Grid.FirstPage()
&CurrentPage = 1
EndEvent // 'First'
Event 'Prev'
Grid.PreviousPage()
&CurrentPage -= 1
if &CurrentPage < 1
&CurrentPage = 1
endif
EndEvent // 'Prev'
Event 'Next'
Grid.NextPage()
&CurrentPage += 1
if &CurrentPage > &TotalPages
&CurrentPage = &TotalPages
endif
EndEvent // 'Next'
Event 'Last'
//Sólo funciona en Grids con Tabla Base...
//Grid.LastPage()
//&CurrentPage = &TotalPages
//Así Funciona con Grids sin Tabla Base...
Do while &CurrentPage < &TotalPages
Grid.NextPage()
&CurrentPage += 1
Enddo
EndEvent // 'Last'
Debes ubicar la variable &TotalPages "DEBAJO" del grid, de forma OCULTA. (con propiedad visible = 0)
Saludos
Gustavo gracias por la prontitud de la respuesta. Bueno en mi caso no son de diferentes datastores, a que se podrá deber entonces??. Esperemos que nos apoyen los amigos del foro.Intenté el paginado forzando a la variable total de paginas con el tema de la cantidad de filas(como resalto), y sí anda bien pero solo para la primera búsqueda, basta que filtre por otros datos, y si al inicio en la primera busqueda me daba 40pag y en la 2da tengo solo 2pags, me sigue mostrando como si tuviera las 40, no actualiza y se pierde la logica totalmente. No sé si tenga que ver el hecho que recorra un sdt que luego muestro en la grilla con variables, porque cuando uso la misma lógica del paginado para un grilla con atributos directos, anda todo sin problemas.Event Grid.Load
For &sdtitem in &sdt
&var1 = &sdtitem .var1
....
&var2 = &sdtitem .var2
Load
&x = &x +1 // cuenta los registros
Endfor
&TotPag = &x/grid.Rows //lo divido entre numero de filas y obtengo el total de paginas porque el grid.pagecount no funciona,me da //siempre -1
EndEventSaludos
--
Has recibido este mensaje porque estás suscrito al grupo "GeneXus" de Grupos de Google.
Para publicar una entrada en este grupo, envía un correo electrónico a genexus@googlegroups.com.
Para anular tu suscripción a este grupo, envía un correo electrónico a genexus+unsubscribe@googlegroups.com
Para tener acceso a más opciones, visita el grupo en http://groups.google.com/group/genexus?hl=es.
0 Response to "Re: [java-l] paginacion fallida con grid.pagecount [GxEvolution]"
Publicar un comentario