PDA

Ver la Versión Completa : Busqueda de un registro en DBGrid


eduardo s.
15-10-2007, 03:16:24
hola a todos. estoy creando un programa de control de almacen y ventas, usando Paradox.

los componentes que estoy usando es un TTable, data source y DBGrid.
las funciones actualmente activas son el orden por clave o marca, edicion de registro dando clic en el que se desea modificar del dbgrid abriendo una ventana para hacerlo, tambien el eliminar registro.

pero esta vez lo que intento hacer es que en un campo edit1 escribir el nombre del articulo a buscar, dar clic a buscar y que en el dbgrid me lleve hasta el registro que estoy buscando.

no estoy buscando el filtrado, mas bien que localice ese registro y resalte el registro en el dbgrid.

espero me aya explicado bien en lo que intento hacer.

gracias.

enecumene
15-10-2007, 03:29:34
Hola eduardo s., eso lo puedes hacer con un simple locate de la tabla en el evento onchange del edit:

Tabla1.locate('campo',Edit1.text,[lopartialkey,locaseinsensitive]);

espero que te sirva.

Saludos.

eduardo s.
15-10-2007, 03:48:41
gracias por tu ayuda, pero no me funciona.

puede ser que el codigo si busque enla base de datos, pero no lo localiza en el dbgrid.

intento hacer que al escribir en el campo de texto lo que quiero buscar, que de entre todos los registros mostrados en el dbgrid me lleve al registro con la misma palabra encontrado resaltandolo como seleccionado.

recuerden que no busco el filtrado.

enecumene
15-10-2007, 04:02:50
Hola, que raro, estas seguro que le estas haciendo el locate a la misma tabla que esta enlazado al dbgrid, porque deberia de funcionarte, me podrias decir como lo estas haciendo?

Saludos.

eduardo s.
15-10-2007, 04:23:09
ya me funciono,jeje, gracias no me funcionaba por la razon de que una de las opciones del DBGrid llamada dgAlwaysShowSelection estaba deshabilitada.

este codigo que me diste lo busca de forma exacta como esta en la descripcion, no se puede que lo encuentre almenos que tenga una palabra igual? o no en el mismo orden en que este registrado?