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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 05-05-2006
arpegius25 arpegius25 is offline
Registrado
 
Registrado: may 2006
Posts: 6
Poder: 0
arpegius25 Va por buen camino
Necesito saber como hacer esto en delphi

necesito que me ayudan a saber como hacer un pantalla en delphi trate de adjuntar la pantalla pero no puedo es una pantalla como sale en el programa de work que te permite filtrar la informacion
Responder Con Cita
  #2  
Antiguo 05-05-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Bienvenido al ClubDelphi. Puesto que es tu primer mensaje, por favor, revisa la guía de estilo de los Foros. En cuanto a lo que planteas o yo no lo entiendo o me parece que no estás dando información suficiente como para alguien pudiera echarte una mano. ¿A ti no te lo parece así? Además, piensa que el título de tu mensaje no ayudaría para nada a una posible persona que tuviera un problema similar al tuyo y utilizar el buscador de los Foros para tratar de encontrar información antes de nada.
__________________
David Esperalta
www.decsoftutils.com

Última edición por dec fecha: 05-05-2006 a las 20:45:04.
Responder Con Cita
  #3  
Antiguo 05-05-2006
arpegius25 arpegius25 is offline
Registrado
 
Registrado: may 2006
Posts: 6
Poder: 0
arpegius25 Va por buen camino
disculpa

si tienes razon no es muy claro, una disculpa, agregue un archivo espero la puedan checar y se den una ida de lo que necesito.
Archivos Adjuntos
Tipo de Archivo: zip filtro.zip (19,7 KB, 62 visitas)
Responder Con Cita
  #4  
Antiguo 05-05-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
¿Y cuál es la duda? ¿Cómo colocar los controles?

// Saludos
Responder Con Cita
  #5  
Antiguo 06-05-2006
arpegius25 arpegius25 is offline
Registrado
 
Registrado: may 2006
Posts: 6
Poder: 0
arpegius25 Va por buen camino
disculpa por la falta de explicacion

haber si con esta explicacion me entienden un poco, hay un combo donde aparecen los operadores los relacionales y los logicos quisiera saber como hacer para que aparezcan y como es que se programa internamente para que funcione.
Responder Con Cita
  #6  
Antiguo 07-05-2006
arpegius25 arpegius25 is offline
Registrado
 
Registrado: may 2006
Posts: 6
Poder: 0
arpegius25 Va por buen camino
componente GRIDTOOL

bien como no me he explicado vien hasta ahora es un componente parecido al GRIDTOOL oque me permite hacer varias cosas en un dbgrid una de ella es la de filtrar el grid donde en la opcion filtrar cono seleccionar en un combobox cualquier campo del grid una expresion y una condicion me filtra el grid. espero haber explicado un poco mejor. este componente es para delphi 3 lo encontre por casualidad quisiera saber si hay alguno para delphi 6 y
Responder Con Cita
  #7  
Antiguo 07-05-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
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.
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.

Última edición por Lepe fecha: 07-05-2006 a las 10:30:11.
Responder Con Cita
  #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
Respuesta



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 09:39:50.


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