Delphi - !URGE! Filtros en DB en Delphi!!!

 
Vista:

!URGE! Filtros en DB en Delphi!!!

Publicado por Omar Acuña (21 intervenciones) el 21/07/2002 21:01:30
Hola, ya había hecho esta pregunta antes, y gracias a JSC que me respondió, pero lamentablemente no funcionó c0mo el me dijo, lo que deseo hacer el lo siguiente:

Tengo una DB llamada 'PRODUCTOS.DB'
Con los campos: Id_prod, Nom_prod, Precom, Preven, Existencia y Categoría.

Necesito que en un Form que tiene un Cuadro Edit (no DBEdit, aunque si se puede con este último tambíen espero que me puedan ayudar), al momento de Teclear el nombre en el Edit de cierto producto que esté dado de alta en la BD, muestre, en un componente DBGrid solo los registros que contienen artículos que lleven ese nombre, por decir, al momento de entrar al Form en el DBGrid se mostrarán Todos los Registros, pero si yo en el cuadro Edit pongo 'Camisa', que se borren todos los demás registros y que solo queden los que su nombre empiece con 'Camisa', y se le cambio el nombre en el Edit a 'Playera'; que se borren todos los de 'Camisa' y Ponga los de 'Playera', y as´´i sucesivamente...se entendió?...
Por favor, tengame lástima, apiadense de mí y DÍGAMNE COMO HACERLO...please...soy novato en esto de Delphi...

Omar
[email protected]
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:!URGE! Filtros en DB en Delphi!!!

Publicado por BigLuis (463 intervenciones) el 22/07/2002 11:55:43
Puedes usar la propiedad FILTER de la tabla y despues poner Filtered:=True.Para esto no importa cirres la tabla. Otra solucion es utilizar un TQuery con los parámetros que quieras filtrar por ejemplo
Query1.Close;
Query1.SQL.Clear;
Dato2:='%'+FormFiltros.Edit1.Text+'%';
Cadena:='SELECT * FROM FICHAS'+' WHERE NOMBRE '+' LIKE (:DATO)';
Query1.SQL.add(Cadena);
Query1.Parameters.ParamByName('DATO').Value:=Dato2;//Delphi 6
//Query1.ParamByname('DATO').Asstring:=Dato2; //Para Delphi 2 y 3
Query1.Open;
Query1.Refresh;
if Query1.RecordCount=0 then
begin
showmessage('No hay registros con el dato introducido');
exit;
end;
DbGrid1.Datasource:=DataQuery;
DbNavigator1.Datasource:=DataQuery;
Puedes poner los parametros que quieras, en fin hay un montosn de soluciones

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar