Ver Mensaje Individual
  #12  
Antiguo 23-03-2007
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.557
Reputación: 25
egostar Va camino a la fama
Hola Caral

Si no estoy tan mal, lo que hace roman es evitar el uso del try...except con el case y me parece una excelente idea.

En todo caso, yo haría lo siguiente.

Código Delphi [-]
// J debe ser el indice del campo que deseas filtrar
case ADOQuery1.Fields[J].DataType of 
   ftString   : ADOQuery.Filter := ComboBox2.Text+ ' Like "'+Edit1.Text+ '*"'; //No se si es correcto el * y mejor deberias usar el signo de %.
     ftInteger : ADOQuery.Filter := ComboBox2.Text+ ' = '+Edit1.Text;
     ftFloat,ftCurrency : ADOQuery.Filter := ComboBox2.Text+ ' >= '+Edit1.Text;
end;

Se me hace raro que no puedas usar el signo = y uses el >=, pero eso puede suceder en campos de punto flotante o de moneda, por eso lo puse en el case de ftFloat y ftCurrency. Bueno, eso creo.

Salud OS.
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita