Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Tablas planas
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 21-10-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Caral, ¿Por qué usar un filtro en lugar de una consulta?
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #2  
Antiguo 23-10-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola Lepe, en realidad el razonamiento biene de lo que necesira nuestro amigo:
Cita:
Lo que nesecito es que al ingresar un nombre en el tedit al darle click en el boton1 se filtre solo los que coincidan con este
En realidad tu duda es razonable, de todos modos se necesita hacer de una u otra manera la consulta, lo que pienso es que si tiene ya la tabla abierta por que no hacer simplemente un filtro, es simple y funciona.
Saludos Maestro
Responder Con Cita
  #3  
Antiguo 24-10-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Un filtro se ejecuta del lado cliente, por tanto, si está en red, viajará todos los registros de la tabla y despues se hará la restricción del filtro. Si no está en red, se seleccionan todos los registros y despues se hace el filtro... es un desperdicio de recursos y tiempo (desde mi punto de vista).

Al menos en paradox, no se permiten filtros con comodines del tipo "%fer%", (tú utilizas el asterisco... será que usas Access ) sino que habría que crear un filtro tal que así:
Código Delphi [-]
table1.filtered := false;
table1.filter := nombre > 'P' and nombre <'S';
table.filtered:= true;
que no es lo que pide, y además es más costoso para el programador.

Por otra parte, no puedes compartir ese TTable con otras ventanas, porque siempre mostraría los datos filtrados, y tarde o temprano necesitará un filtrado distinto para cada ventana.

Una consulta es totalmente independiente de la tabla, incluso la tabla puede estar cerrada y la consulta funciona perfectamente.

Una Consulta puedes ordenarla ascendente y descendentemente, por el campo "filtrado" o por otro cualquiera, usando los índices que se hayan creado para ese propósito en la BBDD. El filtro creo recordar, no usa los índices.

La consulta puedes dejarla preparada para tener un acceso más rápido de ejecución, esto solo funciona con parámetros:
Código Delphi [-]
query1.sql.text := 'select * from tabla where campo like :nombre order by Nombrecliente';
if not query1.Prepared then 
  query1.Prepare;
A partir de ahora solo hay que hacer:
Código Delphi [-]
query1.Close;
query1.parambyname('nombre').asString:= edit1.text+'%';
query1.Open;

Amén de poder usar inner joins en lugar de campos Lookup y restringir los datos con mucha más comodidad.

Saludos.
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #4  
Antiguo 04-02-2015
Matiax13 Matiax13 is offline
Registrado
NULL
 
Registrado: nov 2014
Posts: 7
Poder: 0
Matiax13 Va por buen camino
donde tengo q poner ese codigo?
Responder Con Cita
  #5  
Antiguo 04-02-2015
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Matiasx13, bienvenido a Club Delphi

La ubicación del código dependerá de la funcionalidad de tu aplicación, tendrías que dar mas datos. Por favor lee nuestra guía de estilo.

Saludos y gracias por tu colaboración
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #6  
Antiguo 06-02-2015
Matiax13 Matiax13 is offline
Registrado
NULL
 
Registrado: nov 2014
Posts: 7
Poder: 0
Matiax13 Va por buen camino
hola, muchas gracias por contestar
tengo un data module con 1 adoconnection, un adoquery(en el SQL :select * from tabla), 1 datasourse y esta todo bien conectado y el dbgrid al datasourse
lo q quiero es buscar en la tabla por el campo ''codigo'', pero uso el codigo este:
y lo pongo en onchange del edit
  1. begin
  2. query1.Close;
  3. query1.SQL.Clear;
  4. query1.SQL.Add('SELECT campo from tabla');
  5. query1.SQL.Add(' where campo LIKE ' +quotedstr('%' + edit1.Text + '%')+' ');
  6. query1.Open;
  7. end;
y me da q al campo ''codigo'' le falta operadores o algo asi, o si no q esta perdido el campo ''articulo''

muchas gracias desde ya!!!
Responder Con Cita
  #7  
Antiguo 06-02-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.044
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por Matiax13 Ver Mensaje
hola
Bienvenido a clubdelphi, como siempre aconsejamos a los nuevos, no olvides leer nuestra guía de estilo, gracias por tu colaboración

Recuerda poner los tags al código fuente, ejemplo:



Gracias
Responder Con Cita
  #8  
Antiguo 06-02-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.044
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Lee la guía de estilo, gracias

Cita:
Empezado por Matiax13 Ver Mensaje
y me da q al campo ''codigo'' le falta operadores o algo asi, o si no q esta perdido el campo ''articulo''
No somos adivinos, copia y pega el mensaje de error exacto.
Y procura escribir correctamente, gracias

Lee la guía de estilo, gracias
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
Filtrar tabla para dbgrid nachito_tuc Conexión con bases de datos 5 07-09-2006 19:55:18
como filtrar en un dbgrid por una palabra a buscar mrmago Conexión con bases de datos 10 30-12-2005 19:52:25
Filtrar por un campo de un dbgrid Ivan_25 C++ Builder 11 03-11-2005 11:29:44
Filtrar un DBGrid jdangosto OOP 4 22-02-2005 20:15:08
filtrar en un dbgrid click Varios 2 06-07-2004 19:28:23


La franja horaria es GMT +2. Ahora son las 13:42:32.


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