Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-08-2010
zheen zheen is offline
Registrado
 
Registrado: ago 2010
Posts: 8
Poder: 0
zheen Va por buen camino
Mostrar 2 tablas anidadas en un DBGrid (Drill Down)

Buenas...
Pues tengo 2 tablas:
Usuario (idUsuario, Nombre, Apellido, ......) Con los siguientes datos:
  • (1,Jorge, Perez,...)
  • (2,Elena, Casanova, ....)
Venta (idVenta, idUsuario, fecha, Total$sus, ....) con los datos:
  • (1,1,23/08/2010, 500, ....)
  • (2,1, 25/08/2010, 300,....)
  • (3, 2, 25/08/2010, 400,....)
Ahora lo que quiero es que en un DBGrid me muestre las 2 tablas al estilo drill down, algo asi:

idusuario | Nombre | Apellido ......
1 | Jorge | Perez .....
idVenta | idUsuario | fecha | Total$sus ...........
1 | 1 |23/08/2010 | 500
2 | 1 |25/08/2010 | 300
2 | Elena | Casanova
idVenta | idUsuario | fecha | Total$sus ...........
3 | 2 |25/08/2010 | 400
Mas o menos que en la primera fila, es decir del primer usuario, aparezca una cruz (+) con la que se pueda expandir los datos de la venta realizada por un usuario, y Menos(-) para contraer....

Saludos...
Responder Con Cita
  #2  
Antiguo 29-08-2010
zheen zheen is offline
Registrado
 
Registrado: ago 2010
Posts: 8
Poder: 0
zheen Va por buen camino
Unhappy Mostrar 2 tablas anidadas en un DBGrid (Drill Down)

Nadie sabe como??

Última edición por zheen fecha: 29-08-2010 a las 16:31:18. Razón: Error
Responder Con Cita
  #3  
Antiguo 29-08-2010
zheen zheen is offline
Registrado
 
Registrado: ago 2010
Posts: 8
Poder: 0
zheen Va por buen camino
Unhappy Mostar datos de tabla en un grid y al hacer click en una celda desplegar otra tabla

Buenas... necesito su ayuda urgentemente.
Pues tengo 2 tablas:
Usuario (idUsuario, Nombre, Apellido, ......) Con los siguientes datos:
  • (1,Jorge, Perez,...)
  • (2,Elena, Casanova, ....)
Venta (idVenta, idUsuario, fecha, Total$sus, ....) con los datos:
  • (1,1,23/08/2010, 500, ....)
  • (2,1, 25/08/2010, 300,....)
  • (3, 2, 25/08/2010, 400,....)
Ahora lo que necesito es que en un Grid(dbgrid, o cualquier otro grid) me muestre, algo asi:

idusuario | Nombre | Apellido ......
1 | Jorge | Perez .....
idVenta | idUsuario | fecha | Total$sus ...........
1 | 1 |23/08/2010 | 500
2 | 1 |25/08/2010 | 300
2 | Elena | Casanova
idVenta | idUsuario | fecha | Total$sus ...........
3 | 2 |25/08/2010 | 400
O sea, al hacer click en cualquier fila de la tabla usuario me despligue los datos de la segunda tabla, es decir, las ventas que realizo ese usuario.

Es posible hacer eso...?

Saludos...
Responder Con Cita
  #4  
Antiguo 29-08-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.657
Poder: 19
Caral Va por buen camino
Hola
Me da la impresion de que lo que quieres es que se muestre la informacion de la segunda tabla en otro dbgrid ya que asi se ve en tu ejemplo.
De ser asi esto se hace normalmente con algo que se llama master detail, osea, se ligan las tablas a los dbgrid.
Hacerlos es algo muy sencillo y mas viendo como tienes ligados los datos en las tablas.
Me gustaria saber que Base de datos usas, tal vez me sea mas sencillo hacer un ejemplo que explicarlo.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #5  
Antiguo 29-08-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.657
Poder: 19
Caral Va por buen camino
Hola
Aqui te hice un ejemplo muy sencillo con Access.
Saludos
PD: Si no es lo que necesitas dilo.
__________________
Siempre Novato

Última edición por Caral fecha: 10-09-2010 a las 23:41:47.
Responder Con Cita
  #6  
Antiguo 29-08-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.657
Poder: 19
Caral Va por buen camino
Hola
Creo que es la misma pregunta.
Continua AQUI.
Saludos
PD: Muchos saben la respuesta, hay que ser paciente.
__________________
Siempre Novato
Responder Con Cita
  #7  
Antiguo 30-08-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 27.414
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Hola, zheen, bienvenido a clubdelphi, te recomiendo la lectura de nuestra guía de estilo, muchas gracias.
Responder Con Cita
  #8  
Antiguo 30-08-2010
zheen zheen is offline
Registrado
 
Registrado: ago 2010
Posts: 8
Poder: 0
zheen Va por buen camino
Gracias por responde... pero por desgracia no es lo que necesito...
La base de datos que utilizo es MySQL. En ralidad lo que quiero es q la otra tabla se muestre en el mismo dbgrid, mas o menos como un drill down, que vi en algunos softwares comerciales... te adjunto una imagen de lo que necesito hacer, es una imagen de aacess q encontre por ahi...(aun no tengo los permisos para poner imagenes pero te dejo la url , asi q por delante aumentale http ://)

nxtgenug.net/images/Access2007DrillDown.jpg


te agradeceria mucho si me das una mano...

Saludos..

Última edición por zheen fecha: 30-08-2010 a las 06:59:36.
Responder Con Cita
  #9  
Antiguo 30-08-2010
Avatar de defcon1_es
defcon1_es defcon1_es is offline
Miembro
 
Registrado: mar 2004
Ubicación: Cuenca - España
Posts: 524
Poder: 14
defcon1_es Va por buen camino
Lo mismo que muestras en la imagen lo puedes conseguir con los componentes InfoPower (de pago) de la empresa Woll2Woll.
__________________
Pintor de pantallas...
Responder Con Cita
  #10  
Antiguo 30-08-2010
zheen zheen is offline
Registrado
 
Registrado: ago 2010
Posts: 8
Poder: 0
zheen Va por buen camino
ufa... de pago?.. no hay forma de realizar este trabajo con componentes nativos de delphi?. trabajo con delphi y c++ builder 2009.

Saludos
Responder Con Cita
  #11  
Antiguo 30-08-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.657
Poder: 19
Caral Va por buen camino
Hola
Aqui tienes un ejemplo usando dbgrid.
Es un truco pero es lo mas que este novato puede hacer.
Por lo menos hace algo parecido que el de la foto, solo que a lo novato.
Saludos
PD: Lo que quedaria seria usar un stringrid, pero ya se complica para novatos.
__________________
Siempre Novato

Última edición por Caral fecha: 10-09-2010 a las 23:41:47.
Responder Con Cita
  #12  
Antiguo 30-08-2010
zheen zheen is offline
Registrado
 
Registrado: ago 2010
Posts: 8
Poder: 0
zheen Va por buen camino
Muchisimas gracias

Muchisimas gracias... trabajare sobre ello....
Saludos.
Responder Con Cita
  #13  
Antiguo 30-08-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.657
Poder: 19
Caral Va por buen camino
Hola
La verdad no me gusta que se repita el idusuario.
Me gusta mas asi:
Saludos
PD: Ademas de darle cierta separacion para que se distinga la informacion.
__________________
Siempre Novato

Última edición por Caral fecha: 11-09-2010 a las 15:20:12.
Responder Con Cita
  #14  
Antiguo 06-09-2010
Avatar de Neftali
Neftali Neftali is offline
-Germán Estévez-
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 15.275
Poder: 10
Neftali Va camino a la famaNeftali Va camino a la fama
Cita:
Empezado por zheen Ver Mensaje
ufa... de pago?.. no hay forma de realizar este trabajo con componentes nativos de delphi?. trabajo con delphi y c++ builder 2009.
Que yo sepa los que hay que lo hacen son todos de pago (y no baratos precisamente); Si quieres algo con componentes nativos, la solución de Caral es sencilla y buena para comenzar.

No es la misma que la que te ofrece Access, por ejemplo, pues en este caso quedan datos ocultos, pero creo que a partir de ahí puedes generar una solución buena.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #15  
Antiguo 06-09-2010
Jab Jab is offline
Miembro
 
Registrado: feb 2008
Posts: 82
Poder: 10
Jab Va por buen camino
Lo que intentas hacer en un dbgrid no lo puedes aplicar directamente, lo que sí puedes hacer, siendo una tabla maestro-detalle y enlazadas tal y como te han comentado, es, usar una dbgrid y a un lado otro dbgrid, de tal manera que cuando pulses en un registro y quede seleccionado de la tabla maestro, en el otro dbgrid te aparezca el detalle.

Otra opción es que uses un dbgrid propio modificando el original, lo puedes aplicar encapsulando el dbgrid original y añadiéndo un componente nuevo, llámalo dbgridzheen por ejemplo, en ella puedes generar los eventos nuevos que requieras y el objeto dbgrid inserto en un propio registro con el [+], cuyo evento onclick te permita la aparición de ese objeto heredado.

Son ideas.
Otra opción es usar otros objetos o bien ventanas que no sean modales donde te aparezca la info del detalle (de la otra tabla) durante el tiempo que ese registro está siendo seleccionado... como si fuera un Hint de ayuda típico.
Responder Con Cita
  #16  
Antiguo 06-09-2010
zheen zheen is offline
Registrado
 
Registrado: ago 2010
Posts: 8
Poder: 0
zheen Va por buen camino
Muchas a gracias a todos(as)

Pues por falta de tiempo no pude profundizar este tema, lo que hice fue trabajar en base a lo que propuso caral, asi q gracias a ti Caral y a todos, por colaborar...

Saludos..
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Actualizar tabla con datos de otra tabla mediante UPDATE Rockin Firebird e Interbase 18 28-11-2007 19:15:42
Actualizar un campo de una tabla con datos que se encuentran en otra tabla Morphine SQL 4 15-12-2006 22:47:42
Dbgrid para insertar en una tabla pero cogiendo datos de otra tabla taru MySQL 1 27-07-2006 15:36:12
Problema al hacer un update en una tabla con datos de otra Iseberiano SQL 3 08-06-2005 12:32:14
Como insertar datos de una tabla en otra tabla? Salomon Firebird e Interbase 1 28-08-2003 11:29:40


La franja horaria es GMT +2. Ahora son las 19:00:03.


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