Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #8  
Antiguo 07-05-2006
arpegius25 arpegius25 is offline
Registrado
 
Registrado: may 2006
Posts: 6
Poder: 0
arpegius25 Va por buen camino
Thumbs up agradezco tu ayuda lepe

muchas gracias por la informacion probare lo que me enviaste
Cita:
Empezado por Lepe
Para llenar los combos con los campos de la base de datos, mira en el TTable.Fields[i].Name, tendrás que usar un bucle para rellenar los combos; tienes el TTable.FieldCount para saber cuantos campos hay.

Los Operadores los incluyes de forma fija, <, >, <>, =

Para construir el sql con las condiciones del usuario, tendrás que hacer algo así:

cboFields1 es el primer combo con el nombre del campo
cboOperator1 es el primer combo con los operadores <, > , <>, =, etc.
edSearch es el Edit donde el usuario escribe lo que quiere buscar.


Código Delphi [-]
TheSql := 'select * from tabla where ';
if (cboFields1.Itemindex <>-1) and
(cboOperator1.itemindex <> -1) and
(edSearch1.text <> EmptyStr) then
begin
TheSql := TheSql + cboFields1.items[cboFields1.itemindex] + ' ' +
cboOperator1.items[cboOperator1.itemindex] + ' ' +
quotedStr(edSearch.text) ;
query1.Sql.text := TheSql;
query1.Open;
end;





Todo esto sería para la primera condición que el usuario desea indicar. El campo elegido guarda un String.

Una vez entendido como funciona, hay más detalles que he omitido, porque si el campo es numérico no puedes usar quotedStr sino que tienes que enviarlo sin las comillas que pone el QuotedStr, para ello tendrás que mirar en la definición del campo TTable.FieldsDef.Datatype y si es un número, no incluir el QuotedStr.

Yo no usaría los filtros porque no son flexibles, es más comodo armar una consulta y pedirla al servidor, es más laborioso, pero funcionará mejor (a mi parecer claro ).

Saludos y espero se entienda.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como puedo hacer esto en fast report... AFilth Impresión 6 15-02-2017 16:59:02
como puedo hacer esto con mi FireBird 1.5 ELINK Firebird e Interbase 6 13-04-2005 20:30:46
¿alguien sabe hacer esto? (conexion a mySQL desde delphi pero sin acceso...) seccion31 Internet 24 27-08-2004 17:14:23
¿Como podria hacer esto? slat Conexión con bases de datos 5 26-06-2004 18:08:51
Como puedo hacer esto ? IVAND Conexión con bases de datos 1 21-07-2003 23:23:24


La franja horaria es GMT +2. Ahora son las 04:12:17.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi