Hola lito16.
Cita:
|
Lo que quiero hacer es que cuando selecciones una opcion del DBLookupComboBox, en el grid aparesca los resultados, y cuando lo deje en blanco esten todos los registros.
|
Hice la prueba directamente con los IBDataSet (para simplificar) usando los eventos OnCloseUp y OnDropDown del DBLookupComboBox .
Hace exáctamente lo que especificas en la cita.
Código Delphi
[-]
...
procedure TForm1.FormCreate(Sender: TObject);
begin
IBDataSetCliente.Open;
IBDataSetLocalidad.Open;
with DBLookupClientes do
begin
ListSource:= dsCliente;
ListField:= 'NOMBRE';
KeyField:= 'CLIENTE_ID';
end;
end;
procedure TForm1.DBLookupClientesCloseUp(Sender: TObject);
begin
if DBLookupClientes.Text > '' then
with IBDataSetLocalidad do
begin
Close;
SelectSQL.Text:= 'SELECT * FROM LOCALIDADES WHERE LOCALIDAD_ID = '+
IBDataSetCliente.FieldByName('LOCALIDAD').AsString;
Open;
end;
end;
procedure TForm1.DBLookupClientesDropDown(Sender: TObject);
begin
DBLookupClientes.KeyValue:='';
with IBDataSetLocalidad do
begin
Close;
SelectSQL.Text:= 'SELECT * FROM LOCALIDADES';
Open;
end;
end;
...
Espero haberte interpretado bíen...
Saludos.
