Hay tres formas de hacer un filtrado. Una es mediante una expresión en la propiedad Filter. Ejemplos:
CodCliente = 5
Ciudad = 'Madrid' AND FechaVta = '28/05/2003'
Es necesario poner la propiedad Filtered en True para activar el filtro (la pones en False cuando quieras desactivar el filtro para volver a ver todos los registros).
La segunda opción es usar un evento OnFilterRecord en vez de la propiedad Filter. Eso te permitirá evaluar situaciones más complejas que las que se pueden resolver con una simple expresión. Para los registros que cumplen el criterio, a Accept le asignas True, y False a los que no. Ejemplo:
procedure TForm1.Table1FilterRecord(DataSet: TDataSet;
var Accept: Boolean);
begin
if Table1StockActual.AsFloat < Table1StockMinimo.AsFloat then
Accept := True
else
Accept := False;
end;
Igual que con la propiedad Filter, usa la propiedad Filtered para activar y desactivar el filtro.
La tercer forma es usar una consulta SQL con una cláusula WHERE.
Ejemplo: SELECT * FROM tabla WHERE CodCli = 5
Espero que te sirva.
Ernesto De Spirito
http://www.latiumsoftware.com/es/index.php