Filtrar datos

Puede limitar el acceso a los registros que desee con un índice filtrado. Al crear un índice filtrado, solamente estarán disponibles para su presentación y acceso los registros que coincidan con la expresión de filtro.

Para filtrar los datos con un índice filtrado

  • En el Diseñador de tablas, seleccione la ficha Índices y escriba una expresión de filtro en el cuadro Filtro del índice por el que desea filtrar.

    –O bien–

  1. En el Administrador de proyectos, seleccione la tabla a la que desea agregar un índice y elija Modificar.

  2. En la ficha Índices, cree o seleccione un índice.

  3. En el cuadro Filtro, escriba una expresión de filtro.

    Por ejemplo, intente crear un filtro que seleccione únicamente los registros de clientes de Canadá:

    customer.country = "Canada"
    
  4. Elija Aceptar.

    –O bien–

  • Utilice la cláusula opcional FOR con el comando Index.

Si incluye la cláusula opcional FOR con el comando INDEX, el archivo de índice actuará como un filtro para la tabla. En el archivo de índice sólo se crearán claves para los registros que coincidan con la expresión de filtro. Por ejemplo, si prepara una circular destinada a los representantes de ventas de su empresa y desea ordenar el envío por países, puede crear un índice que filtre la tabla employee de forma que sólo aparezcan los registros de los representantes de ventas, ordenados por países y por apellidos. El código siguiente crea un índice filtrado y muestra los datos resultantes en una ventana Examinar:

USE employee
INDEX ON country+last_name FOR title = "Sales Representative" ;
TAG reps_cntry
BROWSE

Al ver la ventana Examinar, sólo aparecerán los representantes de ventas, no los registros de los demás empleados.

Un índice filtrado muestra solamente los registros que coinciden con la expresión de filtro.

Filtrar datos de forma temporal

Puede utilizar el comando SET FILTER para filtrar los datos de forma temporal, sin crear un índice filtrado especial. Este comando es especialmente útil cuando se desea especificar una condición temporal que los registros de una tabla deben satisfacer para ser accesibles. Para desactivar el filtro en la tabla actual, ejecute SET FILTER TO sin ninguna expresión. Por ejemplo, puede utilizar el comando siguiente para filtrar la tabla customer de forma que sólo muestre los clientes de Alemania:

USE customer
SET FILTER TO country = "Germany"
BROWSE

El comando SET FILTER admite como condición de filtro cualquier expresión lógica válida en Visual FoxPro. Una vez ejecutado el comando SET FILTER, sólo estarán disponibles en la tabla los registros que cumplan la condición de filtro. Todos los comandos de acceso a la tabla respetan la condición de SET FILTER. Puede establecer un filtro distinto para cada tabla abierta.

Vea también

Acceso a los registros en orden descendente | Mejorar la eficacia de los índices | Trabajar con registros | Diseñador de tablas | INDEX | Crear un índice | Crear múltiples índices | Ordenar por múltiples campos | Crear índices para tablas