Foros del Web » Programación para mayores de 30 ;) » Java »

Displaytag: ¿Dejar una columna fija?

Estas en el tema de Displaytag: ¿Dejar una columna fija? en el foro de Java en Foros del Web. Hola Estoy utilizando la librería "DisplayTag" para el manejo de mis tablas y tengo una duda. ¿Es posible dejar una columna fija al ordenar? Me ...
  #1 (permalink)  
Antiguo 16/01/2009, 01:47
Avatar de javimartinez  
Fecha de Ingreso: marzo-2003
Ubicación: Leganés (Madrid)
Mensajes: 284
Antigüedad: 21 años, 1 mes
Puntos: 1
Displaytag: ¿Dejar una columna fija?

Hola

Estoy utilizando la librería "DisplayTag" para el manejo de mis tablas y tengo una duda. ¿Es posible dejar una columna fija al ordenar?

Me explico un poco mejor, me gustaría que la primer columna de la tabla fuera un contador del número de registro en el que estamos, es decir, que siempre siguiera el orden 1, 2, 3, 4 ...

Para ello he incluido el siguiente código:

Código:
<% int cont = 1 %>

...

<displaytag:column>
     <%=cont++%>
</displaytag>
Con esto me funciona tanto al cargar la página como al paginar, pero al ordenar por otra columna la que contiene el contador se me desordena, siendo esa la que me gustaría dejar fija. Con un ejemplo sería:

Tabla ordenada por id:

count ------ id ----- name
1 ----------- a1 ----- Juan
2 ---------- a2 ------ Pepe
3 ---------- a3 ------ Arturo

Ahora ordenamos por name y queda:

count ------ id ------ name
3 ---------- a3 ------ Arturo
1 ----------- a1 ----- Juan
2 ---------- a2 ------ Pepe

Mientras que lo que me gustaría que queda al ordenar por nombre es:

count ------ id ------ name
1 ---------- a3 ------ Arturo
2 ----------- a1 ----- Juan
3 ---------- a2 ------ Pepe

Es decir, que la columna count no se ordene con el resto.

He probado varias formas más pero en ninguna me va bien, ¿alguna idea?

Gracias y un saludo
__________________
Javi Martínez

Web: Acertijolandia Blog: A Entretenerse
  #2 (permalink)  
Antiguo 16/01/2009, 04:01
 
Fecha de Ingreso: marzo-2008
Ubicación: Cádiz, España
Mensajes: 89
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Displaytag: ¿Dejar una columna fija?

Buenas javi. Me parece a mi que eso es imposible, a no ser que pongas dos displaytags en la misma página. Uno para los contadores y el otro para los datos. Porque con la etiqueta "sorttable" te da la opcion de que puedas ordenar por cada columna, pero no soluciona tu problema.


Ya me contaras. suerte, y haber sihay alguien que te pueda ayudar mas que yo.

Salu2
  #3 (permalink)  
Antiguo 16/01/2009, 09:17
 
Fecha de Ingreso: julio-2008
Mensajes: 16
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Displaytag: ¿Dejar una columna fija?

mmm entiendo la pregunta, trabaje una vez con displaytag .. y tiene una opcion de cantidad de items que listara... iguala tu variable count ah esa cantidad y dependiendo de la cantidad que aya listara xD . podria ser una opcion
  #4 (permalink)  
Antiguo 19/01/2009, 02:26
Avatar de javimartinez  
Fecha de Ingreso: marzo-2003
Ubicación: Leganés (Madrid)
Mensajes: 284
Antigüedad: 21 años, 1 mes
Puntos: 1
Respuesta: Displaytag: ¿Dejar una columna fija?

Hola, al final conseguí sacar como hacerlo. Para ello he tenido que crear un "decorator" para la tabla y utilizar las funciones getListIndex() y getViewIndex que ofrece la clase TableDecorator (de la cual debe extender tu decorador).

Saludos :)
__________________
Javi Martínez

Web: Acertijolandia Blog: A Entretenerse
  #5 (permalink)  
Antiguo 19/01/2009, 02:50
 
Fecha de Ingreso: marzo-2008
Ubicación: Cádiz, España
Mensajes: 89
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Displaytag: ¿Dejar una columna fija?

Cita:
Iniciado por javimartinez Ver Mensaje
Hola, al final conseguí sacar como hacerlo. Para ello he tenido que crear un "decorator" para la tabla y utilizar las funciones getListIndex() y getViewIndex que ofrece la clase TableDecorator (de la cual debe extender tu decorador).

Saludos :)
Pues perfecto tio. Enhorabuena
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:54.