DBLookupComboBox en Delphi

| 2013-03-3 | No hay comentarios »

DBLookupComboBox
En que caso usaremos?..

der

 

Supongamos que tenemos un formulario y queremos mostrar los datos de una tabla, por ejemplo la tabla «distrito».
Primero hacemos la conexion con la base de datos (con IBDatabase e IBTransaction) y luego conectamos con un IBTable. Asignamos la tabla distrito al IBTable. Este IBTable solo traera los campos id_distrito, distrito, id_departamento y poblacion que pertenecen a la tabla distrito. El DBLookupComboBox es un componente parecido al ComoboBox en apariencia pero permite enlazar a travez de la clave externa (foreign key) dos tablas y mostrar el campo que deseemos de la otra tabla.
Para el ejemplo de la imagen tenemos que traer el campo departamento de la tabla departamento para mostrar con los datos de la tabla distrito.

 Sin el DBLookupComboBox Con el DBLookupComboBox
 id_distrito: 1 id_distrito: 1
 distrito: Encarnacion distrito: Encarnacion
 id_departamento: 7 id_departamento: 7
 poblacion: 93497 departamento: Itapua
poblacion: 93497

Configuracion del DBLookupComboBox
Usaremos la imagen anterior como ejemplo para la configuracion del componente.
Suponiendo que ya tenemos conexion con la base de datos, es decir, ya estan configuradas el IBDatabase y el IBTransaction.
1. Colocamos 2 ibtables y conectamos cada uno con una tabla: ibtable1 con distrito e ibtable2 con departamento.
2. Agregamos 2 datasource: datasource1 con ibtable1 y datasource2 con ibtable2.
3. Agregamos el DBLookupComboBox al formulario y editamos las siguientes propiedades:
3.1. DataSource: DataSource1 <- El datasource de la tabla principal (este caso distrito).
3.2. DataField: ID_DEPARTAMENTO <- La clave externa que se encuentra en la tabla principal.
3.3. ListSource: DataSource2 <- La tabla de donde vamos a traer el campo.
3.4. KeyField: ID_DEPARTAMENTO <- La clave por el cual se van a enlazar las tablas.
3.5. ListField: DEPARTAMENTO <- El campo que queremos que muestre en el DBLookupComboBox.

Acerca del autor: Rodrigo Paszniuk

Ingeniero Informático, amante de la tecnología, la música, el ciclismo y aprender cosas nuevas.

Posts Relacionados

  • Manual básico de Delphi
  • Reportes en Delphi
  • Busqueda de registros en Delphi
  • Botones para registros de tablas en Delphi



SEGUÍNOS EN FACEBOOK


GITHUB