Ver Mensaje Individual
  #2  
Antiguo 08-03-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Reputación: 28
jachguate Va por buen camino
hola efromm.

Antes de responder a tu pregunta, quiero recomendarte que leas la guia de estilo de los foros, y que para los próximos hilos que abras en estos foros, pongás un título adecuado a la pregunta que estas haciendo. En este caso, por ejemplo, "Cómo filtrar una consulta con el valor de un edit?" o algo similar. Se que cuando te inicias en los foros es algo dificil encontrar los títulos adecuados, y mas todavia plantear las preguntas que tenemos con toda la información necesaria, pero es un esfuerzo que vale la pena realizar, si queres encontrar ayuda y ser aceptado en esta comunidad.

Con respecto de tu pregunta, hay básicamente dos formas de resolverlo.

Una, es construir la sentencia SQL "al vuelo" y asignarla a un componente TQuery.

Algo como:

Código:
  MyQuery.SQL.Clear;
  MyQuery.SQL.Add('Select * from Comp.dbf where upc = ' + QuotedStr(Edit1.Text);
  MyQuery.Open;
La otra, que es la que yo prefiero y recomiendo, es usando parámetros en la sentencia SQL.

Lo harias de esta forma:

La sentencia SQL a introducir será:

Select * from Comp.dbf where upc = :CodigoUPC;

luego, en el inspector de objetos buscas la propiedad Parameters del query, y asignas el tipo de dato ptString y el tipo de parámetro ftInput al parámetro CodigoUPC.

Luego en tiempo de ejecución haces:

Código:
  MyQuery.ParamByName('CodigoUPC').AsString := Edit1.Text;
  MyQuery.Open;
Y listo!.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita