Filtrando un DBGrid con ADOTable
Señores tengo mi ADOConnection1, ADOTable1, DataSource1, DBGrid1 y un Edit1.
Todo esta conectado a mi base de datos de MS Access... La tabla tiene mas de 30 campos, pero solo muestro 2 en el DBGrid, entonces, quisiera Filtrar esos DOS Campos. Uno es de Nombre y el otro es de Formula. Quisiera tener un filtro tal que si tengo en la lista maria, pedro, jimena, petra, carlos, dayana, etc... y si colocara en el EDIT1 "ar", solo me mostrara en el DBGrid a "maria, carlos". y los demas nombres desaparecieran del DBGrid apliqué este código que vi en algun post de este foro: ________________________________________________ procedure Tcomponentes.Edit1Change(Sender: TObject); begin If (Edit1.text <> '') then adotable1.Filter:= 'Nombre iupac Like '''+ Edit1.Text + '*'''; end; _______________________________________________ Sin embargo no me filtra y el DBGrid queda intacto... Que pueda ser lo q esta mal??? |
yo en lo personal, desaconsejo el uso de Filtros, pues son sumamente costosos para la aplicación. Lo mejor sería que usaras Una consulta con los criterios deseados para mostrar unicamente los registros concordantes.
Suerte |
como lo haria!
entonces. como le haria con los QUERY, soy nuevo en esto y apneas se trabajar con las tablas!
Como hacer para travajar con los QUERYS y los DBGrids???? Se agradece de antemano la valiosa colaboracion que puedan prestar... |
Hola
Aqui, vas a encontrar ejemplos cortos que coloque para vosotros. Hay uno que se llama filtros y combobox, trabaja con access, en este veras varios tipos de filtro, desde combobox, edit, memo etc. Baja el archivo, lo descomprimes, lo visualizas con delphi, le das doble click al adoconnection , buscas la tabla (biene en el zip) y lo corres, veras como te funciona. Si tienes mas dudas, aqui estamos. Saludos |
Hola
El ejemplo que te indique, (Uso de Combobox y Filtros), trabaja con adoquery, ya veras que es sencillo. Saludos |
a Caral
Ok, entonces, dejame revisar y vere que tal? ok, gracias por la molestia!
|
Hombre he resuelto tu problema aqui te envio de nuevo tu codigo con los arreglos:
Archivo Adjunto 1031 Nota: en la base de datos debes juntar el nombre del campo NOMBRE IUPAC quedando NOMBREIUPAC y en el codigo debe estar en Mayuscula tal como esta en la base de datos. espero que eso resuelva tu problema cualquier duda me lo comentas. Saludos. |
Esta Buenisimo, me gusto que pudieras dar con la solución, sin embargo,
yo lo necesito es de la siguiente manera: imaginemos que tenemos los siguientes Registros: "mengano, panema, cara, mari, angel, uruguay, vida" y que en el edit1, coloce, las LETRAS: "an". me mostrara a: -Mengano, panema, angel y no sólo "angel". Ojala me haya explicado? lo que hiciste esta bueno pero solo para las iniciales, lo que pasa es que mi base de datos tiene mas de 2000 registros, y al momento de filtrar tengo que hacerlo de la manera q te mencioné!!! Ojala puedas Arreglarlo! man! gracias por la molestia! |
Pon otro asterisco al principio, Así debe quedar el sql:
|
este es el código que tengo:
No se donde dices tu que coloque ese ASTERISCO... Por favor dime como lo solucionarias? Atentamente EDDG, gracias de antemano! |
Hola
No estoy muy seguro pero interpretando lo que menciona Lepe siria algo asi: La idea del asterisco que tienes actualmente es decirle al filtro que traiga todo lo que sigue al edit: La idea de Lepe seria todo lo anterior y lo posterior. saludos |
observen el adjunto que dejo ENECUMENE en el post #7, alli esta mas ilustrado el problemita!
él lo hizo excelente, sin embargo lo necesito mas refinado, tal como lo explique! Les pido un favor de revisar ese codigo, ya que hice lo q caral dijo pero me arroja un error! Observenlo y comenten SAlud y éxitos! |
Hola
Como indique anteriormente, el uso de * en el edit hace lo que mencionaba Lepe. Usando la logica de programacion y como soy un Novato lo tengo que hacer. Se puede ver que lo que pretendes es hacer un filtro que sea mas profundo o que traiga pranticamente todas las semejanzas. Bueno aqui lo tienes, espero que esto si sea lo que necesitas. Saludos |
Ya veo que Caral ha contestado antes. Solo un detalle, dejad de usar las comillas simples que eso marea mucho ;)
Aunque tal y como dije en un mensaje anterior, creo que "Like" y "Filter" son incompatibles, si eso da error tendrás que usar un TADOQuery. Saludos |
Hola
Impresionante, muy inteligente solucion. Saludos |
Excelente AYuda señores, ahora sí funciona correctamente.
Un millón de Gracias.... |
La franja horaria es GMT +2. Ahora son las 16:01: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