FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Combinar Dos Dblookupcombobox
Hola a todos y muchas bendiciones
Estoy realizando un modulo de Inscripción de Estudiantes en Delphi 2009 con MySql, mi duda es la siguiente: La tabla inscripción contiene tres campos que se alimentan de tres tablas diferentes, estas tablas son: Ahora aqui le presento el modulo de inscripción donde contiene 3 DbLookUpCombobox (SERVICIO / TANDA, GRADO, SECCIÓN) que se van a llenar de esas tres tablas Explico, UN SERVICIO puede tener varios GRADOS y UN GRADO puede tener VARIAS SECCIONES Lo que quiero hacer es que cuando yo seleccione UN SERVICIO me muestre en el otro dblookupcombobox los grados que están asignados al servicio seleccionado. De la misma forma cuando seleccione UN GRADO me muestre en el otro dblookupcombobox las SECCIONES que le han sido asignadas a ese GRADO. espero haberme explicado, y espero sus respuestas, agradeciendo de antemano, cualquier ayuda brindada. |
#2
|
|||
|
|||
Buenas,
puedes usar en Dblookupcombobox el metodo onchange, o del datasource ondatachange. create 3 Tquery Q_Servicio creas los parametros SQL Select * from Servicio (al modificar aqui algo disparas el onchange para el sql de Q_Grado) Q_Grado le asignas el Masterdatasource de tu tabla Q_Servicio, masterfield el Servicios_ID (al modificar aqui algo disparas el onchange para el sql de Q_Seccion) creas los parametros SQL: Select * from grado where servicio_id = :servicio_id Q_Seccion y lo mismo de como en grado pero con la seccion. en teoria deberia de funcionar |
#3
|
|||
|
|||
Hola Rocksoft
lei tu comentario y le he buscado la vuelta, pero no entiendo que debo hacer, |
#4
|
||||
|
||||
Lo que apunta rocksoft me parece correcto
Podes usar cualquiera de los dos eventos que el te comenta (TDBLookupComboBox.OnChange, o bien TDataSource.OnDataChange) Estos eventos se disparan cuando cambia el registro seleccionado Luego es cuestion de traer de la otra tabla, por ejemplo GRADOS, todos los Grados que cumplan que GRADOS.Servicios_Id = SERVICIOS.Servidios_Id Eso lo haces usando una consulta o query SQL Asi que lo que debes hacer es, crear un componente query, realizar la consulta y asignar ese DataSet al TDBLookupComboBox que estas usando para seleccionar Grados |
#5
|
|||
|
|||
AgustinOrtu hola, excusa mi ignorancia, a cual datasource en el evento ondatachange debo colocarle el codigo, al datasource de servicios o grados????
|
#6
|
||||
|
||||
De acuerdo a lo que comentaste mas arriba, a ambos:
El TDataSource de Servicios va a disparar el evento cuando selecciones un Servicio: en ese momento cargas la tabla de Grados Osea que en el TDataSource de Servicios, en el evento OnDataChange deberias poner el codigo para llenar la tabla de Grados Cuando seleccionen un Grado, se va a disparar el evento para que llenes la tabla de Secciones Osea que en el TDataSource de Grados, en el evento OnDataChange deberias poner el codigo para llenar la tabla de Secciones |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
como pasar datos de un DBLookupComboBox a otro DBLookupComboBox | francodelphi | Conexión con bases de datos | 3 | 30-11-2011 21:02:34 |
Tratar de combinar dblookupcombobox con radiogroup | aleja | Conexión con bases de datos | 2 | 13-06-2008 14:33:38 |
Combinar 2 imagenes en una | seoane | Trucos | 0 | 14-06-2006 13:19:15 |
Combinar tablas | jrcosta75 | Conexión con bases de datos | 1 | 19-02-2004 21:44:48 |
|