Busqueda segun radiobutton seleccionado
Hola a todos.
Tengo un formulario que tiene 3 TRadio_Buttom (codigo, nombre y direccion) y un TextBox donde coloco la palabra a abuscar y ademas un DB grid donde visualizo el contenido del text box.
Lo que deseo es que conforme valla ingresando los caracteres me valla seleccionado a tal punto que encuentre el texto ingresado en el textbox.
procedure TFrm_Busq_Clie.txt_buscarChange(Sender: TObject);
var consulta : String;
nombre: String;
texto:String;
x:integer;
begin
if rb_codigo.Checked=True Then
begin
nombre:=DM_General.TClientes.Fields[0].FieldName;
texto:=txt_buscar.Text;
end
else if rb_nombres.Checked=True Then nombre:= DM_General.TClientes.Fields[1].FieldName
else if rb_comercial.Checked=True Then nombre:=DM_General.TClientes.Fields[2].FieldName
else if rb_direccion.Checked=True Then nombre:=DM_General.TClientes.Fields[3].FieldName;
QUERY1.Active := False;
consulta := 'SELECT * FROM T_Clientes WHERE '+ ' '+ nombre + ' LIKE ''';
consulta := consulta + '%';
consulta := consulta + texto;
consulta := consulta + '%';
consulta:=consulta + '''';
consulta:=consulta + ' ORDER BY '+' '+nombre+'';
QUERY1.SQL.Clear;
QUERY1.SQL.ADD(consulta);
QUERY1.Active := TRUE;
QUERY1.Open;
end;
He colocado esta rutina pero no me selecciona segun el caracter que ingreso y por ejemplo coloco la letra C y me displaya todos los registros de la Tabla en el DBGRID y despues coloco en el text CA me sigue saliendo todos los registros, y no me elimina los otros que no corresponden a la cadena ingresada (CA)
Cual seria el error.
Gracias y saludos.
|