Hasta ahora en mis programas la búsqueda de registros era mediante SEEK. Esto quiere decir que al buscar un término, por ejemplo ‘software’ en un fichero de libros, la búsqueda devolvía como resultado el primer registro que empezase por ese término. Si el título del libro era Ingeniería de software la búsqueda anterior ni le rozaba.
A partir de ahora las búsquedas no van a ser por SEEK sino que van a permitir realizar búsquedas en cualquier parte del campo por el que se quiera buscar. Asi ya podré encontrar mis libros de Ingeniería de software al introducir software en el formulario de búsqueda de Cuaderno de Bitácora. El resultado es este:
El mayor problema que he tenido para implementar este tipo de búsquedas no ha sido la manera de hacer la búsqueda sino como presentar el resultado. Al final la decisíón ha sido mostrar un formulario con la relación de ejemplares que cumplen la condición para ahi hacer la selección definitiva del ejemplar a consultar. Una lista sobre otra lista, como dice mi amigo Manuel, pero creo que es la mejor manera de hacerlo.
Normalmente lo enfoco mas que como una búsqueda como un filtro, es decir, el usuario escribe las palabras a mostrar cuando está en un grid/browse y sólo se muestran los registros/filas que cumplen ese criterio. Eso lo suelo combinar con otro tipo de filtros: estados, desde/hasta fechas, etc.
En definitiva, enhorabuena porque ese tipo de búsquedas son muy útiles.
Yo también lo suelo utilizar como un filtro respecto al total de registros.
Es más, el filtro lo puedes aplicar a todos o casi todos los campos de la tabla que muestras (título, descripción, fecha, …)
Jose Luis, como lo has hecho?. Lo que tengo entendido es que cuando aplicas filtros sobre campos de una base de datos la cosas se ralentiza mucho. Y no te digo si tiens bases de datos con set relation to….
Un saludo.
Andrés: no uso filtros, sino que recorro el fichero y con un AT miro si en el campo está la cadena buscada. Así monto un array multidimensional que es el que muestro en la lista.
Saludos,
Muy JL, este tipo de búsquedas son muy útiles para la localización de Título de Libros, como asi también de Clientes, Proveedores….te sugiero que evalues la posibilidad de usar HyperSeek que ya esta implementado en xHarbour…creo que podrías hacer una búsqueda mas efeciente…y te permite inclusive la búsqueda en campos memo.
Saludos.
Antonio F. Ortega