Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Arrastrar Registro (https://www.clubdelphi.com/foros/showthread.php?t=24112)

vtdeleon 09-08-2005 05:30:03

Arrastrar Registro
 
Saludos
D7,Firebird

De una consulta simple
Código SQL [-]
 Select * from tabla
Que arroje 5 registro (por ejemplo), todo esto vizualizado en un DBGrid. Como puedo arrastrar el 4to registro hacia el 2do o el 1ro al 3ro,.....?

Soy malisimo en esto de arrastre y soltar(Drag&Drop)

Gracias por su tiempo:)

epuigdef 09-08-2005 13:02:37

Buenas!


En principio creo que no vas a poder, porque lo que estás viendo en el DBGrid son los registros tal y como los ha devuelto la consulta. En el caso en que tuvieras que cambiar el orden de los registros podrías volcar los datos de la consulta a una Grid desligada de la base de datos, y podrías cambiar el orden, aunque no se reflejaría en la base de datos.

No sé si componentes third-party permiten esto, pero así a bote pronto no acabo de imaginarmelo.

Un saludo

Edu

vtdeleon 09-08-2005 13:36:05

Saludos

Gracias por la respuesta:)

Pensando en la noche y so~ando con esto(Que Pesadilla:P), se me ocurrio crear otro campo numerico. Por este campo, ordenar la consulta de 1...n. Arrastrar el registro como dije anteriormente y cambiar o modificar el campo numerico.

Que creen?

epuigdef 09-08-2005 13:41:02

Pensé esta respuesta, técnicamente está bien, pero muy raro tiene que ser lo que estás haciendo para tener que mover los registros de sitio. Al menos yo nunca he tenidio que hacer cosas así.

Quieres que se quede ordenado en la base de datos o es sólo en la visualización?

Un saludo

Edu

vtdeleon 09-08-2005 13:49:03

Saludos
Cita:

Empezado por epuigdef
pero muy raro tiene que ser lo que estás haciendo para tener que mover los registros de sitio.

Hehe, Bueno es un sistemita de control de produccion (Empresa Textil) que debe tener es particularidad, ya que hoy puede tener un ordenamiento y la semana prox puede cambiar. Esto asi, porque la linea de produccion estan organizadas de tal forma. (Requerimiento de la Empresa)
Cita:

Empezado por epuigdef
Quieres que se quede ordenado en la base de datos o es sólo en la visualización?

Preferiblemente en la base de datos, para que cualquier consulta posterior esten ordenados tal como fueron guardados.

vtdeleon 09-08-2005 23:38:35

Saludos

He buscado por todo el foro (creo) y nadie ha tenido esta curiosidad:(:(

Lepe 10-08-2005 12:52:50

Pues lo único que se me ocurre, es usar un grid para el reordenamiento.

Guardar en un campo de la base de datos, el orden que quieres que tenga cada registro. Posteriormente, haces la consulta con el order by de ese campo.

Cuando el usuario modifique ese campo en el grid, se hace un post y se trae la consulta de nuevo.

Un saludo y espero te sirva la idea

Lepe 10-08-2005 18:26:32

Te juro vtdeleon que no vi tu respuesta anterior, ya que es lo mismo.

en lugar de Arrastrar y soltar, pon en un Toolbar (por ejemplo) un SpinEdit que tenga el valor de ese campo numerico.

Casi mejor dos TSpeedButtons, ya que estos no capturan el foco del ratón, y así puede utilizar la bolita del raton para cambiar de registro, mientras deja situado el ratón sobre los TSpeedButtons.

¿te sirve?

vtdeleon 13-08-2005 00:51:17

Saludos

Disculpa que no respondiera con anterioridad, tengo algunos problemillas por aqui, que me imposibilitaron entrar a la Web por mas de 5min, pero ya...

Lepe, sinceramente estoy algo nublado y no entiendo tu logica


La franja horaria es GMT +2. Ahora son las 20:12:41.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi