Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-05-2004
Avatar de pepelu1975
pepelu1975 pepelu1975 is offline
Miembro
 
Registrado: feb 2004
Posts: 52
Poder: 21
pepelu1975 Va por buen camino
Filtrar

Me gustaria saber como puedo filtrar una tabla paradox por un dato en concreto
Responder Con Cita
  #2  
Antiguo 12-05-2004
Avatar de Nuria
Nuria Nuria is offline
Miembro
 
Registrado: may 2003
Posts: 531
Poder: 21
Nuria Va por buen camino
Hola Pepelu!

Cambia las propiedades del TTable ---> Filtered = true y en Filter pon la condición que deben cumplir los registros para mostrarse.

Espero que te sirva.

Saludos!
Responder Con Cita
  #3  
Antiguo 12-05-2004
Avatar de pepelu1975
pepelu1975 pepelu1975 is offline
Miembro
 
Registrado: feb 2004
Posts: 52
Poder: 21
pepelu1975 Va por buen camino
Muchas gracias, voy a intentar explicarlo un poco mejor, porque me he quedado a medias.

Tengo un programa en Paradox donde doy de alta cuadros y cadacuadro tiene un codigo perteneciente a la exposicion a la que pertenece, me gustaria saber como puedo hacer para que en un form me pregunte que codigo de exposicion quiero listar en un Qreport y que me liste todas las obras con ese codigo, me habian dicho que es mediante un filtro.

Chas gracias
Responder Con Cita
  #4  
Antiguo 12-05-2004
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
Pues es precisamente lo que te ha respondido Nuria

Selecciona el TTable y verás que tiene las propiedades que te indica (Filter y Filtered)

Eso si, recomiendo que sigas este orden

Código Delphi [-]
Table1.Filtered := false;
Table1.Filter := condicion;
Table1.Filtered := true;
Responder Con Cita
  #5  
Antiguo 12-05-2004
Avatar de pepelu1975
pepelu1975 pepelu1975 is offline
Miembro
 
Registrado: feb 2004
Posts: 52
Poder: 21
pepelu1975 Va por buen camino
Debo de estar hoy muy espeso orque no entiendo nada, gracias por vuestra ayuda a ver si me concentro un poco y lo saco.
Responder Con Cita
  #6  
Antiguo 12-05-2004
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Con lo que te han dicho Nuria y Cadetill sería más que suficiente, pero dado el espesor matutino que confiesas te amplio un poco más, pon un Tedit, escribe el código o dato a filtrar y en un botón pon el código siguiente:


Código Delphi [-]
Table1.Filter := 'Codigo = '+QuotedStr(Edit1.Text);
Table1.Filtered := true;

Ya puestos pones una rejilla que visualice los datos desde el principio así verás como al poner el filtro éste funciona.

Ahora lanzas quickreport y solamente te mostrará los elementos que pasen el filtro.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #7  
Antiguo 12-05-2004
Avatar de pepelu1975
pepelu1975 pepelu1975 is offline
Miembro
 
Registrado: feb 2004
Posts: 52
Poder: 21
pepelu1975 Va por buen camino
Gracias a todos los que ayudan a encontrar la fluidez en dias de espesor.
Responder Con Cita
  #8  
Antiguo 12-05-2004
Avatar de pepelu1975
pepelu1975 pepelu1975 is offline
Miembro
 
Registrado: feb 2004
Posts: 52
Poder: 21
pepelu1975 Va por buen camino
Se me ha vuelto a apagar la bombilla, la primear busqueda me la hace perfecta, pero el problema aparece cuando intento hacer una segunda busqueda, porque en el QReport me aparecen los datos de la primera y de la segunda y asi sucesivamente, existe algun comando que limpie de datos el Qreport.

Gracias
Responder Con Cita
  #9  
Antiguo 12-05-2004
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
y cómo lo haces? Pon algo de código a ver si damos con la solución

PD: acuerdate de usar la etiqueta [ code ] o [ delphi ]
Responder Con Cita
  #10  
Antiguo 12-05-2004
Avatar de pepelu1975
pepelu1975 pepelu1975 is offline
Miembro
 
Registrado: feb 2004
Posts: 52
Poder: 21
pepelu1975 Va por buen camino
El codigo de Busqueda es:

TObras.Filter := 'cod_expo = ' + QuotedStr(Edit1.Text);
TObras .Filtered := True;
FListadoObras.QuickRep1.Preview;

Entonces no se si existe la opcion Refresh, y si existiera la debo de poner tanto en el campo Edit1 para que me quite el valor introducido antes y ademas ponerlo en el QuickRep1?
Responder Con Cita
  #11  
Antiguo 12-05-2004
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
Pues esto debería de funcionarte

Código Delphi [-]
TObras.Filtered := False;
TObras.Filter := 'cod_expo = ' + QuotedStr(Edit1.Text);
TObras.Filtered := True;
FListadoObras.QuickRep1.Preview;
Responder Con Cita
  #12  
Antiguo 12-05-2004
Avatar de pepelu1975
pepelu1975 pepelu1975 is offline
Miembro
 
Registrado: feb 2004
Posts: 52
Poder: 21
pepelu1975 Va por buen camino
si que me funciona, el problema es que si lo cierro y vuelvo a hacer una consulta en el QuickReport me sale la consulta nueva mas la anterior
Responder Con Cita
  #13  
Antiguo 12-05-2004
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
mira de debuggear a ver que valores estás poniendo en el filtro. No tiene mucho sentido lo que comentas
Responder Con Cita
  #14  
Antiguo 12-05-2004
Avatar de pepelu1975
pepelu1975 pepelu1975 is offline
Miembro
 
Registrado: feb 2004
Posts: 52
Poder: 21
pepelu1975 Va por buen camino
Me da la impresion que el problema no es del filtro sino del QuickReport que he creado, voy a ver que consigo sacar por ese lado.
Gracias por todo
Responder Con Cita
  #15  
Antiguo 12-05-2004
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Código Delphi [-]
TObras.Filtered := False;
TObras.Filter := 'cod_expo = ' + QuotedStr(Edit1.Text);
TObras.Filtered := True;
ShowMessage(Tobras.Filter); //Para ver el contenido del filtro
FListadoObras.QuickRep1.PreviewModal;
FListadoObras.Close;

En el OnClose del Formulario que contiene QuickReport
Código Delphi [-]
Application.ProcessMessages;
FreeAndNil(QuickRep1);
Action:=CaFree;

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #16  
Antiguo 13-05-2004
Avatar de pepelu1975
pepelu1975 pepelu1975 is offline
Miembro
 
Registrado: feb 2004
Posts: 52
Poder: 21
pepelu1975 Va por buen camino
Me he fijado y la cuestion es que siempre que le pulso al boton de filtrar en el Qreport me aparecen todas las obras, tengan el codigo de exposicion que tengan
Responder Con Cita
  #17  
Antiguo 13-05-2004
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
cod_expo es un valor numérico o de cadena? si es numérico, sobraría en QuotedStr

Por otro lado, has mirado de debuggear a ver que es lo que hace exactamente?
Responder Con Cita
  #18  
Antiguo 13-05-2004
Avatar de pepelu1975
pepelu1975 pepelu1975 is offline
Miembro
 
Registrado: feb 2004
Posts: 52
Poder: 21
pepelu1975 Va por buen camino
el valor cod_expo es string (letras y numeros), no consigo encontrar el debugbear
Responder Con Cita
  #19  
Antiguo 13-05-2004
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Esto tiene que funcionar pues es el ABC.

Solamente me queda de pensar, que tengas 2 Ttable conectados a la misma tabla y filtres uno y sin embargo el Quickreport lo conectes al otro?

En cuanto a "debugear", lo que te quiere decir Cadetill, es que uses el depurador de Delphi para ver que valor tienen las variables en cada momento y así detectar en donde está el error.



Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.

Última edición por marcoszorrilla fecha: 13-05-2004 a las 14:32:51.
Responder Con Cita
  #20  
Antiguo 13-05-2004
Avatar de pepelu1975
pepelu1975 pepelu1975 is offline
Miembro
 
Registrado: feb 2004
Posts: 52
Poder: 21
pepelu1975 Va por buen camino
Creo que he encontrado el problema, pero necesito vuestra ayuda a ver si puede ser esto, la cuestion es que cuando yo plso sobre la opcion de listado obras, me aparece una pantalla pequeña en la que me pide el codigo de la exposicion, en esta pantalla es donde yo pongo el filtro y el boton de filtrar que me manda directamente al Quickrep1.preview, y este quickrep1.preview lo enlazo directamente cvon la tabla obras, mis dudas son:

Deberia enlazarlo al filtro?
Como puedo enlazarlo al filtro si estoy en otro form diferente.

Gracias a todos, cuando lo consiga os debo una cervecita a todos.
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


La franja horaria es GMT +2. Ahora son las 02:41:05.


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