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 22-10-2010
cmfab cmfab is offline
Miembro
 
Registrado: jun 2010
Posts: 419
Poder: 14
cmfab Va por buen camino
Tabla Zeos

Hola de nuevo a todos.

Alguien puede ayudarme. necesito establecer un filtro a una tabla en la propiedad Filter de Ztable. pero resulta que el campo que deseo filtrar es de tipo texto y no logro conseguir el operador like para que me filtre por ejemplo todos los nombres "Pedro". muchas gracias
Responder Con Cita
  #2  
Antiguo 22-10-2010
Avatar de movorack
[movorack] movorack is offline
Miguel A. Valero
 
Registrado: feb 2007
Ubicación: Bogotá - Colombia
Posts: 1.346
Poder: 20
movorack Va camino a la famamovorack Va camino a la fama
Hola,

Podrias pasar un poco del código que usas para establecer el filtro?

Así medio a ciegas, te puedo decir que para establecer un filtro deberás usar algo así:

Código Delphi [-]
  //FilterData es la variable o el texto que vas a filtrar
  //Los % son comodines. en este caso buscara tanto a Pedro fernandez como a San Pedro o PedroNel
  //Los UpperCase son para evitar problemas con la sensibilidad a mayusculas
  ZTable.Filter := UpperCase('campo')+' like '+QuotedStr('%'+UpperCase(FilterData)+'%');

  //Recuerda que debes tener el filtro activo
  ZTable.Filtered := True;

Ahhh y echale una miradita a la Guia de estilo
__________________
Buena caza y buen remar... http://mivaler.blogspot.com

Última edición por movorack fecha: 22-10-2010 a las 21:12:27.
Responder Con Cita
  #3  
Antiguo 22-10-2010
cmfab cmfab is offline
Miembro
 
Registrado: jun 2010
Posts: 419
Poder: 14
cmfab Va por buen camino
Gracias por la respuesta pero especificamente imprimo en pantalla el filter de mi tabla Zeos

por ejemplo NOMBRE like '%PEDRO%'

todo parece estar bien y no me devuelve ningun registro. incluso lo probé con el codigo recomendado y sigue todo igual. la propiedad filtered está True

saludos
Responder Con Cita
  #4  
Antiguo 22-10-2010
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
Que yo sepa, no puedes usar LIKE en un filtro. Puedes usar un comodín * pero incluso eso tiene limitaciones. Por ejemplo, puedes poner

Código:
nombre='perez*'
pero no

Código:
nombre='*perez'
Al menos así pasa con Paradox, pero creo que el mecanismo de filtrado es igual para cualquier DataSet, o por lo menos la ayuda no indica que cada descendiente implemente su propio mecanismo.

// Saludos
Responder Con Cita
  #5  
Antiguo 22-10-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Roman, ahora si me pusiste a dudar.
Esto no es un filtro?
Código Delphi [-]
var
   Filtro : String;
begin
   If (Edit1.Text <> '') then
   begin
      ATClientes.Filtered := False;
      If CBFiltro.Text = 'Código' then Filtro := 'CodCliente Like '+Edit1.Text
         else If CBFiltro.Text = 'Nombre' then Filtro := 'NombreCliente Like '''+ Edit1.Text + '*'''
            else If CBFiltro.Text = 'Teléfono' then Filtro := 'Telefono Like '''+ Edit1.Text + '*''';
      ATClientes.Filter := Filtro;
      ATClientes.Filtered := True
   end
   else ATClientes.Filtered := False;
Por que es lo que hago en un table y tiene el like, ademas funciona.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #6  
Antiguo 22-10-2010
cmfab cmfab is offline
Miembro
 
Registrado: jun 2010
Posts: 419
Poder: 14
cmfab Va por buen camino
Vale el codigo de Caral funciona perectamente

Gracias a todos
Responder Con Cita
  #7  
Antiguo 22-10-2010
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
Tienes razón Caral. Se ve entonces que sí depende de la base.

// Saludos
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
vaciar una tabla con zeos markarla MySQL 2 26-05-2008 17:55:16
Problema con actualizacion de tabla con Zeos y Mysql whatson Conexión con bases de datos 2 20-04-2008 04:02:20
No puedo insertar datos (por parámetros) en una tabla - Zeos, Mysql belen MySQL 2 13-10-2006 00:16:51
Dbgrid para insertar en una tabla pero cogiendo datos de otra tabla taru MySQL 1 27-07-2006 15:36:12
Actualizar Tabla con Zeos en win98 pgraciap MySQL 1 03-12-2005 17:20:19


La franja horaria es GMT +2. Ahora son las 20:33:31.


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