PDA

Ver la Versión Completa : DbLookupComboBox Que filtre uno anterior


Camilo
15-12-2007, 20:56:39
Hola Amigos, con mis agradecimientos de antemano por lo que me puedan ayudar; tengo una pregunta: Tengo en un form (Form1) dos DbLookupComboBox (el 1 y el 2), el 1 esta relacionado con una tabla que se llama Tableedificio y muestra el nombre de los ediicios. Pero el 2 esta relacionado con una tabla que se llama TableOficinas que contiene 100 numero de oficinas; (101, 102, 103,...). La duda es que quiero que al darle clik al primer DblookupComboBox en el segundo me aparezcan solamente las oficinas relacionadas con el edificio que acabo de elegir en el primero.

Gracias por su aporte.

Trabajo D-7 y Paradox

marcoszorrilla
15-12-2007, 20:59:07
Al elegir en el primero, tomas el texto de éste y con él montas una consulta que filtre por ese concepto, esta segunda consulta la vínculas con el segundo DbLookUpComboBox.

Un Saludo.

Camilo
15-12-2007, 21:01:08
Gracias marcos por tu pronta respuesta e interes; pero seria mucha molestia si me lo colocas ( el codigo)en el OnClik del segundo DbLookComboBox. Qu pena abusar de tu generosidad.

marcoszorrilla
15-12-2007, 21:14:03
En el sengundo no tienes que hacer nada especial, lo inhabilitas:
Enabled = False;

Y cuando pulses en el primero y elijas algo:

procedure TForm1.DBLookupComboBox1Click(Sender: TObject);
begin
Table2.Filter:='Busqueda = '+QuotedStr(DbLookupComboBox1.Text);
ShowMessage(Table2.Filter);
Table2.Filtered:=True;
DBLookupComboBox2.Enabled:=True;
end;

Un Saludo.

Camilo
15-12-2007, 21:19:42
Marcos Gracias, En Colombia hoy es sabado y el primer brindis de vino de la noche lo hare en tu nombre (de pura gratitud).

marcoszorrilla
15-12-2007, 21:27:41
El ShowMessage lo quitas pues es solamente para que vieras como estaba aramado el filtro.

Un Saludo.

Camilo
15-12-2007, 21:31:29
Listo, Mil Gracias.

marcoszorrilla
15-12-2007, 21:32:46
Un último apunte:

procedure TForm1.DBLookupComboBox1Click(Sender: TObject);
begin
Table2.Filter:='Busqueda = '+QuotedStr(DbLookupComboBox1.Text);
Table2.Filtered:=True;
DBLookupComboBox2.Enabled:=True;
DBLookupComboBox2.DropDown;
end;

Así igual te gusta más.

Un Saludo.

Camilo
15-12-2007, 21:38:54
Muy practico. De nuevo mil gracias Marcos, que bueno contar con personas capaces y solidarias como tu.

Gracias.