Filtrar datos se hacen muy importantes a la hora de programar sistemas dinámicos que están conectados a una base de datos puede ser ACCESS o SQL SERVER o también ORACLE o MYSQL, pero en necesario aprender a filtrar datos porque esto se convierte en nuestra base para recaudar información personalizada de nuestra base de datos.
Vamos aprender a filtrar datos en C++ BUILDER, lo vamos a hacer directamente con las propiedades y luego mediante programación.
Bueno para empezar yo tengo una base de datos en ACCESS y en mi formulario tengo los siguientes componentes:
* ADOCONNECTION1
* ADOTABLE1
* DATASOURCE1
* DBGRID
Como se muestra en la siguiente imagen:
Primeramente vamos a filtrar para que se filtren los datos en tiempo de ejecucion, y lo hacemos directamente en las propiedades de ADOTABLE1 entonces le hacemos clic y nos vamos a sus propiedades que están en la parte izquierda por defecto y cambiamos las siguientes propiedades:
* En la propiedad FILTER escribimos: NOMBRECAMPO = ‘VALOR’
Por ejemplo Nombre = ‘Adalid’
* La propiedad FILTERED ponemos en TRUE para que funcione, el filtrado.
Hacemos los pasos arriba descritos como se muestran en la siguiente imagen:
Esto hará que al momento de ejecutar la aplicación en el DBGRID1 solo se mostraran los datos los cuales el campo NOMBRE sean igual a Adalid, también se pueden filtrar con distintas condiciones por ejemplo:
= COMPRACLIENTE < 10000
= Ciudad <> 'Santa Cruz'
= COMPRACLIENTE > 1000 and Ciudad = 'Santa Cruz'
Si no queremos que se filtre nada en tiempo de ejecución simplemente no escribimos nada o lo dejamos vacío en la propiedad FILTER y en la propiedad FILTERED ponemos en FALSE.
Bueno ahora vamos a filtrar por órdenes del usuario final y no en tiempo de ejecución, para eso necesitamos un EDIT donde el usuario final escriba su valor de búsqueda:
Bueno entonces como en la anterior imagen ponemos en EDIT y un botón para crear la búsqueda.
Ahora hacemos doble clic en el botón y escribimos el siguiente código:
Por ejemplo para filtrar por el campo Nombre escribimos el siguiente código tienes que respetar las mayúscula y minúscula de los nombres de campo, en mi ejemplo yo escribí todo en mayúsculas porque estoy usando MS WORD y para evitar los errores gramaticales.
//HACEMOS LO MISMO QUE HICIMOS QUE CUANDO FILTRAMOS EN TIEMPO DE EJECUCIÓN.
//EL FORMATO ES EL MISMO MODELO.
ADOTABLE1->FILTER = "NOMBRE = '"+EDIT1->TEXT+"'";
ADOTABLE1->FILTERED = TRUE;
Por ejemplo si queremos que filtre para todos los nombres que empiecen por las letras que escribe en el EDIT:
ADOTABLE1->FILTER = 'NOMBRE LIKE ' + QUOTEDSTR (“%” + EDIT1->TEXT + “%”);
ADOTABLE1->FILTERED = TRUE;
Bueno con este ejemplo espero que te sirva de mucho.
Cómo filtrar de una base de datos mientras se escribe en un Edit en C++ Builder
4 alumnos Filtrar datos en una operación muy importante a la hora de recaudar información de... [21/12/11] |
Cómo filtrar datos mientras se escribe en un Textbox en Visual Basic
16 alumnos Todo programador sabe que filtrar datos es muy importante en el sistema que se esté... [22/12/11] |
Cómo ingresar datos y convertirlos. C++ Builder
33 alumnos Muchas veces necesitamos ingresar datos numéricos a nuestro sistemas en C++ Builder... [21/11/11] |