Ver Mensaje Individual
  #6  
Antiguo 04-07-2006
Avatar de jjorell
jjorell jjorell is offline
Miembro
 
Registrado: jun 2006
Posts: 22
Reputación: 0
jjorell Va por buen camino
Cool Ejemplo para filtrar una Query por uno o varios campos

Hola! La verdad No se si te he logrado entender la consulta, pero entiendo que necesitas tener una especie de filtro y que puedas seleccionar registros en base a uno o varios campos segun el usuario lo desee. Bueno si es asi, tal vez te pueda servir este ejemplo:

Teniendo una ventana y combos por cada uno de los campos a filtrar, puedes poner un codigo como este:

Código Delphi [-]
 
qGAnaAcuMst.close;
qGAnaAcuMst.SQL.Clear;
qGAnaAcuMst.sql.add('SELECT * FROM muestras WHERE FecInicial=:fecInicial AND FecFinal=:fecFinal ');
qGAnaAcuMst.paramByName('fecInicial').asDateTime := eFechaMin.Date;
qGAnaAcuMst.paramByName('fecFinal').asDateTime := eFechaMax.date;
if (trim(cbCosechas.text) <> 'Todas') and (Trim(cbCosechas.text)<>'')
then begin
 qGAnaAcuMst.sql.add(' and Cosecha = :cosecha');
        qGAnaAcuMst.paramByName('cosecha').asString := cbCosechas.text;
end;

if cbTipMuestra.text <> 'Todos'
then begin
 qGAnaAcuMst.sql.add(' and SubProducto = :subproducto');
        qGAnaAcuMst.paramByName('subproducto').asString := cbTipMuestra.text;
end;
qGAnaAcuMst.sql.add('group by Cosecha');
qGAnaAcuMst.open;

Espero que este codigo te ayude.
Responder Con Cita