FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Nuevamente renegando con ClientDataSet, filter y LIKE...
Hola a todos.
Estoy usando Delphi 6 con MYSql, TADOQuery, DataSetProvider y ClientDataSet. No llego a entender el porqué de que si creo un filtro que contiene "LIKE" y se lo aplico al CLientDataSet, éste no funciona, es decir, lo ignora y me muestra los datos como si no le hubiera aplicado ningún filtro. El código que utilizo es :
Usando otros filtros que no usan el LIKE, funciona perfecto. Intenté usar el CommandText poniendole una sentencia SQL y directamente no me devuelve nada, queda el clientdataset vacio y sé que la sentencia SQL funciona (ni siquiera un mísero "Select * from tabla" devuelve algo). En el provider tengo activado el [poAllowCommandText]. Ya no se me cae ninguna idea mas...algun aporte de los genios ?. Desde ya, muchas gracias. |
#2
|
||||
|
||||
Hola Walterio.
Por los componentes que comentas, pienso que no tendrías que tener ningún problema. Pero en la composición del filtro de tu código hay muchas variables implicadas de las que desconocemos su valor y por tanto como queda conformada la cadena sFiltroCampo. ¿ Probaste mostrar el contenido de sFiltroCampo, para ver el valor que toma ? ¿ Podrías ponerlo en un mensaje ? Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#3
|
|||
|
|||
Filtro
hola Agregar el first a ver si te sirve
|
#4
|
|||
|
|||
Hola, muchas gracias por las respuestas.
Lo que me extraña es que si lo de los componentes está correcto, porqué no me funciona. Aclaro que en el ClientDataSet tengo seteadas las opciones de FIlterOptions en [foCaseInsensitive], nada más. Voy a probar de hacer lo del first, en cuanto a la cadena que se construye para el filtro queda algo asi como : 'NOM017 LIKE '%car%''. NOM017 es el nombre de uno de los campos involucrados. Voy a intentar de harcodearlo y ver que pasa.
Pruebo y comento. Nuevamente, muchas gracias. |
#5
|
|||
|
|||
Probé lo del first y no funcionó.
Tambien probé de hacerlo asi :
Utilizando el comodín '*' al final, me muestra todos los registros que comienzan con lo solicitado en el filtro. Lo que noté es que si le pongo la palabra LIKE, no funciona, pero si lo cambio por "=" si funciona. Evidentemente hay algo en mi Delphi que no me permite filtrar con LIKE. La misma rutina la tengo hecha en otro programa pero que no usa providers ni adoquery, usa tablas dbf que llenan el clientdataset "a mano" y aqui si funciona perfecto el LIKE... No entiendo...juro que no entiendo... |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Nuevamente Delphius llega a los 1000 | Bicho | La Taberna | 33 | 16-08-2007 22:03:11 |
Autonumerico nuevamente | jzginez | Firebird e Interbase | 3 | 27-11-2006 17:45:37 |
Nuevamente.... Servidor a Cliente INDY 10 | m@kio | Internet | 1 | 18-08-2005 18:34:56 |
nuevamente | marianaf | Varios | 3 | 29-11-2003 05:45:53 |
Nuevamente, como hago con el BDE? | emeceuy | Conexión con bases de datos | 6 | 20-07-2003 15:38:57 |
|