Guia De Visual Foxpro

  • October 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Guia De Visual Foxpro as PDF for free.

More details

  • Words: 17,424
  • Pages: 30
Guía elaborada por: Carmen Estela Silva H. Este tutorial lo bajaste de http://www.mipagina.cantv.net/carmenestela

1. INTRODUCCION…………………………………………………01 2.ESTABLEZCA LA UNIDAD O EL DIRECTORIO PREDETERMINADOS. …………………………………………… 2.1. ESTABLEZCA EL ARCIVO DE AYUDA 3. REQUISITOS DE VISUAL FOX PRO ……………………… 4. EL ADMINISTRADOR DE PROYECTOS………………… 5. PROGRAMAS SECUENCIALES INTERACTIVOS Y ORIENTADO A EVENTOS………………………………………… 6. PROGRAMA PARA EL ENTORNO DE WINDOWS ……………… 7. MODO DISEÑO Y MODO DE EJECUCIÓN ………………… 8. DISEÑADORES DE VISUAL FOXPRO………………… 9. USAR LOS ASISTENTES………………… 10. INICIAR UN ASISTENTE ………………… 10.1. ASISTENTES………………… 10.2. USAR GENERADORES………………… 10.2.1. GENERAR UN CONTROL ………………… 10.2.2. DAR FORMATO A VARIOS CONTROLES ………………… 10.2.3. USAR EL GENERADOR DE FORMULARIOS…………… 11. CREAR TABLAS………………… 11.1. CREAR UNA TABLA CON UN ASISTENTE ………………… 11.2. DISEÑADOR DE TABLAS………………… 11.3. TIPO DE DATOS DE UN CAMPO………………… 11.4. VENTAJAS DE LAS TABLAS ASOCIADAS A UNA BASE DE DATOS………………… 11.4.5. BASE DE DATOS………………… 11.4.5.1. ASISTENTE PARA BASES DE DATOS 11.4.5.2. DISEÑADOR DE BASES DE DATOS………………… 11.5. INDEXAR TABLAS………………… 11.5.1. CREAR UNA CLAVE DE ÍNDICE DE UNA TABLA ………… 11.5.1.2. CREAR UN ÍNDICE PARA ORDENAR REGISTROS …… 11.5.1.3. CREAR UN ÍNDICE QUE IMPONGA VALORES ÚNICOS EN UN CAMPO ………………………………………… 11.5.2. ELEGIR UN TIPO DE ÍNDICE………………………. 11.5.2.1. PRINCIPAL …………………………………… 11.5.2.2. CANDIDATO …………………………………… 11.5.2.3. NORMAL …………………………………… 11.5.2.4. ÚNICO …………………………………… 12. FORMULARIOS 12.1. ADMINISTRAR FORMULARIOS 12.2. ESTABLECER EL ENTORNO DE DATOS 12.2.1. ABRIR EL DISEÑADOR DE ENTORNOS DE DATOS 12.2.2. PROPIEDADES HABITUALES DEL ENTORNO DE DATOS 12.2.3. AGREGAR UNA TABLA O VISTA AL DISEÑADOR DE ENTORNOS DE DATOS 12.2.4. QUITAR UNA TABLA O UNA VISTA DEL DISEÑADOR DE ENTORNOS DE DATOS 12.2.5.1. EL DISEÑADOR DE ENTORNOS DE DATOS CON RELACIONES ESTABLECIDAS ENTRE TABLAS 12.2.5.2. MODIFICAR LAS PROPIEDADES DE LA RELACIÓN 12.3. INTERFACES DE UN ÚNICO DOCUMENTO E INTERFACES DE DOCUMENTOS MÚLTIPLES 12.3.1. TIPOS DE FORMULARIOS 12.3.1.1. ESPECIFICAR UN FORMULARIO SECUNDARIO 12.3.1.2. ESPECIFICAR UN FORMULARIO FLOTANTE 12.3.1.3. ESPECIFICAR UN FORMULARIO DE NIVEL SUPERIOR 12.3.1.3.1. AGREGAR UN MENÚ A UN FORMULARIO DE NIVEL PRINCIPAL 12.3.1.2. OCULTAR LA VENTANA PRINCIPAL DE VISUAL FOXPRO CLASES CLASES DE BASE DE VISUAL FOXPRO CREAR UNA CLASE NUEVA EJEMPLO SENCILLO GALERÍA DE COMPONENTES ABRIR LA GALERÍA DE COMPONENTES MOVER ELEMENTOS DESDE LA GALERÍA DE COMPONENTES EJEMPLO 12.3.2. OBJETOS Y PROPIEDADES 12.3. ASIGNAR UN ICONO A UN FORMULARIO REFERENCIAS A OBJETOS EN LA JERARQUÍA DE OBJETOS CONTROLES USAR GRUPOS DE BOTONES DE OPCIÓN USAR CUADROS DE LISTA Y CUADROS DE LISTA DESPLEGABLES (CUADROS COMBINADOS) MÉTODOS DE CUADRO DE LISTA QUE SUELEN UTILIZARSE CON FRECUENCIA CASILLAS DE VERIFICACIÓN CUADROS DE TEXTO VALIDAR DATOS EN UN CUADRO DE TEXTO CUADROS DE EDICION CUADROS COMBINADOS

CONTROLES NUMÉRICOS BOTONES DE COMANDO Y GRUPOS DE BOTONES DE COMANDO OBJETO HYPERLINK CONTROL CRONÓMETRO CONTROL IMAGE USAR ETIQUETAS USAR FORMAS USAR LÍNEAS USAR GRÁFICOS DE FORMULARIO PARA MOSTRAR INFORMACIÓN MEJORAR LA PRESENTACIÓN DE CONTROLES USAR CUADRÍCULAS PROPIEDADES COMUNES DE LAS COLUMNAS PARA ESTABLECER EL ORIGEN DE DATOS PARA UNA CUADRÍCULA PARA ESTABLECER EL ORIGEN DE DATOS PARA UNA COLUMNA AGREGAR DE FORMA INTERACTIVA CONTROLES A UNA COLUMNA DE CUADRÍCULA PARA QUITAR CONTROLES DE COLUMNAS DE CUADRÍCULA EN EL GENERADOR DE FORMULARIOS USAR MARCOS DE PAGINA CONTROL CONTENEDOR OLE CONTROL ACTIVEX DEPENDIENTE NOMBRES DE OBJETOS EVENTOS CONJUNTO BÁSICO DE EVENTOS MÉTODOS CONSULTAS TIPOS DE CONSULTAS CONSULTAS SENCILLAS DE SÓLO LECTURA BASADAS EN TABLAS (ARCHIVOS .DBF) O EN VISTAS COMO INICIAR EL GENERADOR DE CONSULTAS. CREAR UNA CONSULTA CON EL DISEÑADOR DE CONSULTAS PARA CREAR UNA CONSULTA CON UN ASISTENTE DESTINO DE LA CONSULTA CONSULTAS LOCALES DE MÚLTIPLES TABLAS O CON DATOS REMOTOS OPCIONES DEL CUADRO DE DIÁLOGO CONDICION DE COMBINACION CREAR UNA COMBINACIÓN ENTRE TABLAS ELIMINAR UNA COMBINACIÓN MODIFICAR UNA COMBINACIÓN VISTAS CREAR VISTAS CREAR UNA VISTA CON UN ASISTENTE INICIAR EL DISEÑADOR DE VISTAS

CREAR UN SISTEMA DE MENÚS CREAR UN SISTEMA DE MENÚS CON MENÚ RÁPIDO GENERAR UN MENÚ CREAR MENÚS SDI (UNA APLICACIÓN QUE SÓLO ADMITE UN DOCUMENTO CADA VEZ) CREAR UN MENÚ SDI INCLUIR UN SISTEMA DE MENÚS EN LA APLICACIÓN ADJUNTAR MENÚS SDI A FORMULARIOS CREAR UN MENÚ CONTEXTUAL ADJUNTAR MENÚS CONTEXTUALES A CONTROLES ACTIVAR O DESACTIVAR UN MENÚ O ELEMENTO DE MENÚ MARCAR EL ESTADO DE UN ELEMENTO DE MENÚ ASIGNAR UN COMANDO A UN MENÚ O ELEMENTO DE MENÚ ESPECIFICAR UN MÉTODO ABREVIADO DE TECLADO PARA UN MENÚ O ELEMENTO DE MENÚ ESPECIFICAR LA TECLA DE ACCESO DE UN MENÚ O ELEMENTO DE MENÚ INFORMES DETERMINAR EL TIPO DE INFORME QUE VA A CREAR CREAR EL ARCHIVO QUE CONTENGA EL DISEÑO DEL INFORME USAR UN ASISTENTE PARA INFORMES CREAR UN INFORME RÁPIDO CREAR UN INFORME EN BLANCO MODIFICAR EL DISEÑO MODIFICAR UN INFORME GENERADO BANDAS DE INFORME EN EL DISEÑADOR DE INFORME AGREGAR LAS BANDAS TÍTULO Y RESUMEN AGREGAR UNA BANDA TÍTULO Y RESUMEN TIPOS DE CONTROLES DE INFORME.

ESTABLECER EL ORIGEN DE DATOS DEL INFORME EL ENTORNO DE DATOS ADMINISTRA LOS ORÍGENES DE LOS DATOS DE SUS INFORMES ESTABLECER UN ÍNDICE PARA EL ENTORNO DE DATOS AGREGAR CONTROLES DE CAMPO AGREGAR CAMPOS DE TABLA DESDE LA BARRA DE HERRAMIENTAS UTILICE LA BARRA DE HERRAMIENTA DISEÑO PARA ALINEAR LOS CONTROLES AGREGAR UN GRUPO HERRAMIENTAS PARA PERSONALIZAR EL DISEÑO DEL INFORME CUADRO DE DIÁLOGO CONFIGURAR PÁGINA DEFINIR EL ENCABEZADO Y EL PIE DE PÁGINA DEFINIR LA BANDA DETALLE DAR FORMATO A LOS CONTROLES DE CAMPO OPCIONES DEL CUADRO DE DIÁLOGO VISTA PRELIMINAR E IMPRESIÓN DE SU INFORME VISTA PRELIMINAR DE LOS RESULTADOS IMPRIMIR INFORMES PARA IMPRIMIR UN INFORME

INTRODUCCION Visual FoxPro, es un nuevo y potente entorno orientado a objetos para la creación de bases de datos y la programación de aplicaciones. Visual FoxPro proporciona todas las herramientas necesarias para administrar datos, tanto si va a organizar tablas de información y ejecutar consultas, como si va a crear un sistema de base de datos relacional integrado o programar una aplicación para la administración de datos de usuarios. PARA REALIZAR LOS EJERCICIOS CREE UNA CARPETA EN C: Y ESTABLEZCA UNA UNIDAD Y DIRECTORIO PREDETERMINADO DE TRABAJO CON EL COMANDO SET DEFA TO Así: SET DEFA TO "E:\EJERCICIOS DE VISUAL FOXPRO6.0" desde la ventana comandos en el menú Ventana.

Las bases de datos son conjuntos de tablas, normalmente relacionadas entre sí mediante campos comunes. Como soporte para las tablas y las relaciones, también puede incluir en la base de datos vistas, conexiones, procedimientos almacenados, reglas de negocios y desencadenantes. Los archivos de base de datos tienen la extensión .dbc. Las tablas libres son tablas que no forman parte de la base de datos y que están almacenadas en un archivo con la extensión .dbf. Las consultas son un método estructurado de solicitar información específica que está almacenada en tablas. Mediante el Diseñador de consultas se formula una pregunta que extrae registros de las tablas basándose en los criterios especificados. Las consultas se guardan como archivos con la extensión .qpr.

ESTABLEZCA EL ARCHIVO DE AYUDA Haga clic en el menú Herramientas y luego en opciones. En el cuadro de diálogo opciones, seleccione la ficha archivo, en tipo de archivo haga clic en archivo de ayuda, luego haga clic en el botón modificar.En el cuadro cambia la ubicación del archivo de ayuda coloque ; c:\archivos de programa\microsoft visual studio\msdn98\98vs\3082\foxhelp.chm 1. REQUISITOS DE VISUAL FOX PRO • Los requisitos mínimos para ejecutar Visual FoxPro con los sistemas operativos Windows: • Un PC compatible con IBM con un procesador 486 a 66MHz (o superior). • Un mouse. • 16 MB de RAM. • 85 MB para la instalación típica y 90 MB para la instalación completa. • Se recomienda un monitor VGA o de mayor resolución. EL ADMINISTRADOR DE PROYECTOS La primera vez que inicie Visual FoxPro, el Administrador de proyectos creará un nuevo proyecto vacío de forma que pueda agregar elementos existentes al nuevo proyecto o bien crear elementos nuevos para incluirlos en el proyecto. La forma más sencilla de familiarizarse con Visual FoxPro es utilizar el Administrador de proyectos. El Administrador de proyectos proporciona un método sencillo y visual de organizar y trabajar con tablas, archivos, bases de datos, informes, consultas y otros archivos cuando se administran tablas y bases de datos o se crea una aplicación.

Las vistas son consultas especializadas que permiten tener acceso a datos remotos y actualizar orígenes de datos modificando los registros devueltos por la consulta. Sólo existen dentro de una base de datos y no son archivos independientes. 2. PROGRAMAS SECUENCIALES INTERACTIVOS Y ORIENTADO A EVENTOS Aunque Visual FoxPro admite la programación estándar por procedimientos, se ha ampliado la capacidad del lenguaje para proporcionar la potencia y la flexibilidad propias de la programación orientada a objetos. El diseño orientado a objetos y la programación orientada a objetos representan un cambio de perspectiva con respecto a la programación estándar por procedimientos. En lugar de pensar en el flujo del programa desde la primera hasta la última línea de código, se debe pensar en la creación de objetos: componentes autocontenidos de una aplicación que tienen funcionalidad privada además de la funcionalidad que se puede exponer al usuario. 3. PROGRAMA PARA EL ENTORNO DE WINDOWS Visual FoxPro 6.0 está orientado a la realización de programas para Windows, pudiendo incorporar todos los elementos de este entorno como son: ventanas, botones, cajas de diálogo y de texto, botones de opción y de selección, barras de desplazamiento, gráficos, menús, etc. Prácticamente todos los elementos de interacción con el usuario de los que dispone Windows 95/98/NT pueden ser programados en Visual FoxPro 6.0 de un modo muy sencillo. En ocasiones bastan unas pocas operaciones con el ratón y la introducción a través del teclado de algunas sentencias para disponer de aplicaciones con todas estas características. En los siguientes puntos se introducirán algunos conceptos de este tipo de programación 4. MODO DISEÑO Y MODO DE EJECUCIÓN VFP puede trabajar de dos modos distintos: en modo de diseño y en modo de ejecución. En modo de diseño el usuario construye interactivamente la aplicación, colocando controles en el formulario, definiendo sus propiedades, y desarrollando funciones para gestionar los eventos, es decir diseñando la interfaz gráfica o escribiendo código. La aplicación se prueba en modo de ejecución. En ese caso el usuario actúa sobre el programa (produce eventos) y prueba cómo responde el programa. Hay algunas propiedades de los controles que deben establecerse en modo de diseño, pero muchas otras pueden cambiarse en tiempo de ejecución desde el programa escrito en Visual FoxPro. También hay propiedades que sólo pueden establecerse en modo de ejecución y que no son visibles en modo de diseño. Todos estos conceptos –controles, propiedades, eventos, etc.- se explican más adelante. DISEÑADORES DE VISUAL FOXPRO La tabla siguiente resume los diseñadores que se utilizan para realizar las distintas tareas. Para

El Administrador de proyectos es la herramienta principal de organización para trabajar con datos y objetos en Visual FoxPro. Un proyecto es un conjunto de archivos, datos, documentos y objetos de Visual FoxPro que se guardan como un archivo con extensión .pjx

Utilice este diseñador

Crear tablas y establecer índices en tablas

Diseñador de tablas

Ejecutar consultas en tablas locales

Diseñador de consultas

Ejecutar consultas en orígenes de datos remotos; crear consultas actualizables

Diseñador de vistas

Crear archivos de combinación de correspondencia

Asistente para correspondencia

Crear un formulario para ver y modificar los datos de las tablas

Diseñador formularios

Crear formularios uno a varios

Asistente para formularios uno a varios

Crear un informe para mostrar e imprimir los datos

Diseñador de informes

Crear informes uno a varios

Asistente para informes uno a varios

Configurar una base de datos; ver y crear relaciones entre tablas

Diseñador de bases de datos

Asistente para upsizing a Oracle

Crear una conexión para vistas remotas

Diseñador conexiones

Crear bases de datos Oracle que dupliquen, en todo lo posible, la funcionalidad de bases de datos Visual FoxPro Crear tablas dinámicas

Asistente para tablas dinámicas

Crear consultas

Asistente para consultas

Crear vistas remotas

Asistente para vistas remotas

Crear informes

Asistente para informes

Exportar clases de Visual FoxPro a un archivo de modelo de objeto Microsoft Visual Modeler (.mdl)

Asistente para ingeniería inversa

Crear un personalizado

Asistente de ejemplo

de

de

Cada diseñador dispone de una o varias barras de herramientas que proporcionan acceso rápido a las características o acciones más habituales de la herramienta.

combinar

USAR LOS ASISTENTES Los Asistentes son programas interactivos que ayudan a realizar rápidamente las tareas habituales, como crear formularios, dar formato a informes y configurar consultas PARA INICIAR UN ASISTENTE

1.

2.

En el Administrador de proyectos, seleccione el tipo de archivo que desea crear y elija Nuevo. También puede elegir Nuevo en el menú Archivo y seleccionar el tipo de archivo que desea crear. Seleccione la opción Asistente.

También puede tener acceso directo a la mayor parte de los Asistentes si elige el comando Asistentes del menú Herramientas. ASISTENTES Para

Use el asistente

Crear aplicaciones de Visual FoxPro

Asistente para aplicaciones También puede usar el Generador de aplicaciones para incluir características avanzadas en su aplicación. Nota: También está disponible el Asistente para aplicaciones (5.0) de Visual FoxPro 5.0 para asegurar la compatibilidad con las versiones anteriores.

Importar un modelo de objeto de un archivo Microsoft Visual Modeler (.mdl) a Visual FoxPro

Asistente para la generación de código

Crear consultas de tablas de referencias cruzadas

Asistente para tablas referencias cruzadas

Crear una base de datos

Asistente para bases de datos

Dar formato y generar archivos de texto a partir del código de archivos de proyecto y de programa

Asistente para documentación

Crear formularios

Asistente para formularios

Crear gráficos

Asistente para gráficos

Importar o anexar datos

Asistente para importar

Crear etiquetas de correo

Asistente para etiquetas

Crear vistas

Asistente para vistas locales

de

asistente

Crear discos de distribución a partir de los archivos del árbol de distribución

Asistente para instalación

Crear bases de datos SQL Server que dupliquen, en todo lo posible, la funcionalidad de bases de datos Visual FoxPro

Asistente para upsizing a SQL Server

Crear una tabla

Asistente para tablas

Mostrar datos de una tabla o vista en un documento HTML

Asistente para publicación en Web

Crear páginas Web que permitan a los visitantes de la página Web buscar y recuperar registros de la tabla de Visual FoxPro

Asistente para páginas búsqueda de WWW

de

USAR GENERADORES Los generadores son cuadros de diálogo con fichas que simplifican la creación y modificación de formularios, controles complejos y código de integridad referencial. Cada generador muestra una serie de fichas que le permiten establecer las propiedades del objeto seleccionado. Puede usar los generadores para algunos controles, para formularios, para dar formato a controles y para crear integridad referencial entre tablas de bases de datos. GENERAR UN CONTROL





En la barra de herramientas Controles de formularios, elija el botón Bloqueo del Generador. Cada vez que agregue un control nuevo a un formulario, Visual FoxPro muestra el generador adecuado. –O– Seleccione un control del formulario y elija el botón Generador de la ventana Propiedades

CREAR UNA TABLA CON UN ASISTENTE

1. 2. 3. 4.

En el Administrador de proyectos, seleccione la ficha Datos y, a continuación, seleccione Tablas libres. Elija Nuevo. Elija el botón Asistente. Siga las instrucciones que aparecerán en las pantallas del asistente.

Puede diseñar y crear una tabla de forma interactiva mediante el Diseñador de tablas, accesible a través del Administrador de proyectos o del menú Archivo, o mediante el lenguaje de programación.

DAR FORMATO A VARIOS CONTROLES

• •

Para crear y modificar una tabla mediante programación se utilizan los comandos siguientes: Comandos para crear y modificar tablas

En el Diseñador de formularios, seleccione controles. En la barra de herramientas Diseñador de formularios, elija el botón Autoformato.

ALTER TABLE

CLOSE TABLES

CREATE TABLE

DELETE FILE

REMOVE TABLE

RENAME TABLE

DROP TABLE DISEÑADOR DE TABLAS

USAR EL GENERADOR DE FORMULARIOS



En el menú Formulario, elija Formulario rápido.

Utilice el Diseñador de tablas para crear y modificar tablas de base de datos, tablas libres, campos e índices. El Diseñador de tablas le ayuda a implementar características avanzadas como reglas de validación y valores predeterminados, y clases predeterminadas de controles. Opciones de la ficha • Campos Presenta los campos de la tabla en una cuadrícula que se puede desplazar. • Índices Contiene una cuadrícula desplazable para la definición de índices. • Tabla Presenta la información acerca de la tabla y le permite especificar desencadenantes y reglas a nivel de registro. TIPO DE DATOS DE UN CAMPO Tipo de datos

Descripción

Ejemplo

Character (Carácter)

Texto alfanumérico

La dirección de un cliente

Currency (Moneda)

Unidades monetarias

Precio de compra

Numeric (Numérico)

Números decimales

Float (Flotante)

Igual que Numeric

Date (Fecha)

Día, mes y año

Fecha en que realizó un pedido

DateTime (FechaHora)

Día, mes, año, horas, minutos y segundos

Fecha y hora en que un empleado llegó al

CREAR TABLAS Puede crear una tabla en una base de datos o una tabla libre que no esté asociada a ninguna base de datos. Cuando tenga que crear una tabla nueva, puede obtener ayuda de un Asistente para tablas o bien puede usar el Diseñador de tablas y crear una tabla con los campos que necesite. Las tablas, cuando se usan individualmente, son útiles para almacenar y ver la información con la que se trabaja. Pero si organiza sus tablas en una base de datos, podrá sacar más partido a la potencia de Visual FoxPro. Si introduce las tablas en una base de datos, puede reducir el almacenamiento de datos redundantes y proteger la integridad de los datos.

enteros

o

Cantidad de artículos pedidos

se

trabajo Double (Doble)

Número doble

de

precisión

Datos procedentes de experimentos que requieren un elevado grado de precisión

Integer (Entero)

Valores numéricos no decimales (números enteros)

Número de línea de un pedido

Logical (Lógico)

Verdadero o Falso

Campo que indica si se ha completado o no un pedido

Memo

Texto alfanumérico de longitud indeterminada

Notas de un registro telefónico sobre las llamadas

General

OLE

Hoja de cálculo de Excel

Character (binario)

Igual que Character, pero los valores no se traducen cuando cambia la página de códigos

Las contraseñas de usuario almacenadas en una tabla y usadas en distintos países

Memo (binario)

Igual que Memo, pero los valores no se traducen cuando cambia la página de códigos

Un archivo de comandos de inicio de sesión empleado en distintos países

VENTAJAS DE LAS TABLAS ASOCIADAS A UNA BASE DE DATOS: Las tablas asociadas a una base de datos cuentan con ciertas ventajas sobre las tablas libres. Cuando una tabla forma parte de una base de datos, es posible crear: • Nombres largos para la tabla y para cada uno de sus campos. • Títulos y comentarios para cada campo de la tabla. • Valores predeterminados, máscaras de entrada y formato para los campos de la tabla. • Clases de control predeterminada para campos de tablas. • Reglas a nivel de campo y a nivel de registro. • Índices de clave primaria y relaciones de tablas para compatibilidad con reglas de integridad referencial. • Un desencadenante para cada evento INSERT, UPDATE o DELETE.

Puede colocar las tablas y las vistas si las arrastra a su lugar o si utiliza el comando Organizar del menú Base de datos.

INDEXAR TABLAS Para desplazarse por los registros de una tabla, verlos o manipularlos en un orden determinado, debe utilizar un índice. Visual FoxPro utiliza los índices como mecanismos de ordenación para ofrecer flexibilidad y eficacia al programar una aplicación. La flexibilidad supone crear y utilizar múltiples claves de índice distintas para la misma tabla, lo que permite trabajar con los registros ordenados de formas diferentes, según las necesidades de la aplicación. La potencia implica crear relaciones personalizadas entre las tablas, basadas en sus índices, lo que le permite tener acceso a los registros que desea. Un índice de Visual FoxPro es un archivo que contiene punteros ordenados lógicamente según los valores de una clave de índice. El archivo de índice es independiente del archivo .DBF de la tabla, y no cambia el orden físico de los registros contenidos en la misma. Al crear un índice se crea un archivo que mantiene punteros a los registros del archivo .DBF. Cuando desee trabajar con los registros de la tabla en un orden determinado, elija un índice para controlar el orden en que se ve la tabla y se tiene acceso a ella. CREAR UNA CLAVE DE ÍNDICE DE UNA TABLA





En el Diseñador de tablas, elija la ficha Índices e introduzca la información de una clave de índice. Elija Normal como tipo de índice. –O – Utilice el comando INDEX.

Puede llevar a cabo varias tareas en función del tipo de índice que cree. Si desea

Use

Ordenar los registros para aumentar la velocidad a la que se muestran, se consultan o se imprimen

Un índice normal, candidato o principal.

Controlar la entrada de valores duplicados en un campo y ordenar los registros

Un índice principal o candidato para una tabla de base de datos o un índice candidato para una tabla libre.

BASE DE DATOS Un archivo de base de datos que tiene una extensión .DBC y puede contener una o varias tablas, vistas, conexiones con orígenes de datos remotos y procedimientos almacenados. Las bases de datos se pueden crear con el asistente para bases de datos o con el diseñador de bases de datos ASISTENTE PARA BASES DE DATOS En la ficha datos del administrador de proyecto, seleccione Databases y haga clic en el botón nuevo, seleccione asistente para bases de datos y siga las instrucciones. DISEÑADOR DE BASES DE DATOS El Diseñador de bases de datos muestra todas las tablas, vistas y relaciones contenidas en una base de datos. Cuando la ventana del Diseñador de bases de datos está activa, Visual FoxPro muestra el menú Base de datos y la barra de herramientas Diseñador de bases de datos. Cada tabla se representa por una ventana dimensionable que muestra los campos de la tabla y los índices, si existe alguno. El Diseñador de bases de datos muestra las relaciones persistentes al mostrar líneas entre las tablas que conectan los índices.

CREAR UN ÍNDICE PARA ORDENAR REGISTROS 1.

En el Administrador de proyectos, seleccione la tabla a la que desea agregar un índice y elija Modificar. 2. En la ficha Índices, escriba un nombre y un tipo para el índice. 3. En la columna Expresión, escriba el nombre de campo que desea usar para ordenar los registros. –O– Escriba una expresión que quiera usar para ordenar los registros o generar una expresión; para ello, elija el botón situado al final del cuadro para mostrar el Generador de expresiones. 4. Si quiere que los registros se muestren en orden descendente, seleccione el botón de flecha situado a la izquierda del nombre del índice.

La flecha del botón apunta hacia abajo para orden descendente y hacia arriba para orden ascendente. 5. Elija Aceptar. CREAR UN ÍNDICE QUE IMPONGA VALORES ÚNICOS EN UN CAMPO 1. 2. 3. 4.

En el Administrador de proyectos, seleccione la tabla a la que quiera agregar un índice y elija Modificar. En la ficha Índices, cree un índice. En la columna Tipo, seleccione Principal o Candidato. Elija Aceptar.

ELEGIR UN TIPO DE ÍNDICE Puede elegir entre cuatro tipos de índices: • Principal • Candidato • Normal • Único Los íNDICES PRINCIPALES aseguran que sólo se introducen valores únicos en un campo y determinan el orden en el que se procesan los registros. Puede crear un índice principal para cada tabla si la tabla está incluida en la base de datos. Si la tabla ya tiene un índice principal, agregue un índice candidato. Los ÍNDICES CANDIDATOS también imponen valores únicos y determinan en qué orden se procesan los registros, como un índice principal. Puede tener varios índices candidatos por tabla en bases de datos y en tablas libres. Los ÍNDICES NORMALES determinan el orden en que se procesan los registros pero permiten que se introduzcan valores duplicados en un campo. Puede agregar más de un índice normal a una tabla. ÍNDICE ÚNICO. Por compatibilidad con versiones anteriores, este índice selecciona y ordena un subconjunto de registros según la primera aparición de un valor en el campo que especifique.

ADMINISTRAR FORMULARIOS tareas comunes relacionadas con la administración de formularios Ocultar un Puede ocultar un formulario Use el Método Hide. formulario para que deje de estar Ejemplo visible para un usuario. THISFORM.Hide Cuando el formulario está oculto, el usuario no puede tener acceso a sus controles, pero sigue teniendo control total sobre ellos mediante programación Liberar un Puede permitir que un Utilice el método formulario usuario libere un formulario Release. cuando haya terminado de Ejemplo interactuar con él. Al liberar THISFORM.Release un formulario, ya no podrá tener acceso a sus propiedades y métodos. 12.2. ESTABLECER EL ENTORNO DE DATOS El entorno de datos de un formulario o un conjunto de formularios incluye las tablas o vistas con las que interactúa el formulario y las relaciones entre tablas que espera el formulario. Puede diseñar visualmente el entorno de datos en el Diseñador de entornos de datos y guardarlo con el formulario o con el conjunto de formularios. El entorno de datos puede automatizar la apertura y el cierre de tablas y vistas cuando se ejecuta el formulario. Además, el entorno de datos le ayuda a establecer la propiedad ControlSource para controles al rellenar el cuadro del valor de la propiedad ControlSource de la ventana Propiedades con todos los campos del entorno de datos. 12.2.1. PARA ABRIR EL DISEÑADOR DE ENTORNOS DE DATOS 1. 2. 3.

En el menú Ver, elija Entorno de datos. En el cuadro Agregar tabla o vista, elija Agregar. En el cuadro de diálogo Abrir, elija la tabla o vista que desea agregar al entorno de datos.

12. FORMULARIOS PROPIEDADES HABITUALES DEL ENTORNO DE DATOS Cada uno de los elementos gráficos que pueden formar parte de una aplicación típica de Windows 95/98/NT es un tipo de control: los botones de comando, las cajas de diálogo, los cuadros de texto, las casillas de selección, los botones de opción, las barras de desplazamiento horizontales y verticales, los gráficos, los menús, y muchos otros tipos de elementos son controles. Cada control debe tener un nombre a través del cual se puede hacer referencia a él en el programa. VFP proporciona nombres por defecto que el usuario puede modificar. En la terminología de Visual FOXPRO 6.0 se llama formulario (form) a una ventana.

Propiedad

Descripción

Valor predeterminado

AutoCloseTables

Controla si las tablas y las vistas se cierran cuando se libera el formulario o el conjunto de formularios.

Verdadero (.T.)

AutoOpenTables

Controla si las tablas y las vistas del entorno de datos se abren cuando se ejecuta el formulario.

Verdadero (.T.)

InitialSelectedAlias

La tabla o la vista que se selecciona cuando se ejecuta el formulario.

"" en tiempo de diseño. Si no se especifica, en tiempo de ejecución se seleccionará inicialmente el primer cursor agregado a DataEnvironment.

AGREGAR UNA TABLA O VISTA AL DISEÑADOR DE ENTORNOS DE DATOS Figura 1. Formulario

Cuando agregue tablas o vistas al Diseñador de entornos de datos, puede ver los campos y los índices que pertenecen a la tabla o a la vista.

Un formulario puede ser considerado como un objeto contenedor para los controles. Una aplicación puede tener varios formularios, pero un único formulario puede ser suficiente para las aplicaciones más sencillas. Los formularios deben también tener un nombre, que puede crearse siguiendo las mismas reglas que para los controles.

Una forma fácil de agregar una tabla o vista consiste en arrastrar una tabla o una vista desde un proyecto abierto hasta el Diseñador de entornos de datos. Cuando el Diseñador de entornos de datos está activo, la ventana Propiedades muestra objetos y propiedades asociadas al entorno de

datos. Cada tabla o vista del entorno de datos, cada relación entre tablas y el mismo entorno de datos son objetos distintos en el cuadro Objeto de la ventana Propiedades. QUITAR UNA TABLA O UNA VISTA DEL DISEÑADOR DE ENTORNOS DE DATOS 1. En el Diseñador de entornos de datos, seleccione la tabla o la vista. 2. En el menú Entorno de datos, elija Quitar. ESTABLECER RELACIONES EN EL DISEÑADOR DE ENTORNOS DE DATOS Si agrega al Diseñador de entornos de datos tablas que tienen relaciones persistentes establecidas en una base de datos, las relaciones se agregarán automáticamente al entorno de datos. Si las tablas no tienen relaciones persistentes, podrá relacionarlas en el Diseñador de entornos de datos.

INTERFACES DE UN ÚNICO DOCUMENTO E INTERFACES DE DOCUMENTOS MÚLTIPLES

RELACIÓN PERSISTENTE Relaciones entre tablas que duran más que simplemente el tiempo de ejecución. Las tablas deben estar en una base de datos para poder tener una relación persistente. EL DISEÑADOR DE ENTORNOS DE DATOS CON RELACIONES ESTABLECIDAS ENTRE TABLAS

Visual FoxPro le permite crear dos tipos de aplicaciones: • Las aplicaciones con interfaz de documentos múltiples(Multipledocument interface, MDI) están formadas por una ventana principal única y las ventanas de la aplicación están contenidas en la ventana principal. Visual FoxPro es fundamentalmente una aplicación MDI. • Las aplicaciones con interfaz de un único documento (SDI) están formadas por una o más ventanas independientes, cada una de las cuales aparece como ventana independiente en el escritorio de Windows. Algunas aplicaciones mezclan elementos SDI y MDI. TIPOS DE FORMULARIOS

También puede arrastrar un campo desde la tabla principal hasta un campo de la tabla relacionada. Si no hay ninguna etiqueta de índice en la tabla relacionada correspondiente al campo de la tabla principal, se le pedirá que cree la etiqueta de índice. MODIFICAR LAS PROPIEDADES DE LA RELACIÓN

• En la ventana Propiedades, seleccione la relación en el cuadro Objeto. Las propiedades de la relación corresponden a cláusulas y palabras clave de los comandos SET RELATION y SET SKIP. La propiedad RelationalExpr se establece de forma predeterminada con el nombre del campo clave principal de la tabla primaria. Si la tabla relacionada está indexada en una expresión, deberá establecer la propiedad RelationalExpr con esta expresión. Por ejemplo, si la tabla relacionada está indexada en UPPER(cust_id), deberá establecer RelationalExpr como UPPER(cust_id). Si la relación no es de uno a varios, establezca la propiedad OneToMany como falsa (.F.). Esto equivale a utilizar el comando SET RELATION sin ejecutar SET SKIP. Establecer la propiedad OneToMany de una relación como verdadera (.T.) equivale a ejecutar el comando SET SKIP. Si omite la tabla primaria, el puntero de registro permanecerá en el mismo registro primario hasta pasar a través de todos los registros relacionados de la tabla secundaria. Nota Si desea crear una relación de uno a varios en el formulario o el conjunto de formularios, establezca como verdadera (.T.) la propiedad OneToMany, aunque se haya establecido una relación persistente de uno a varios en la base de datos.

Formulario secundario. Un formulario contenido en otra ventana, utilizada en la creación de aplicaciones MDI. Los formularios secundarios no se pueden mover fuera de los límites de su formulario primario y cuando se minimizan aparecen en la parte inferior del formulario primario. Si el formulario primario está minimizado, también se minimizan los formularios secundarios. Formulario flotante. Formulario que pertenece a un formulario primario, pero no está contenido en él. Los formularios flotantes se pueden mover por toda la pantalla. No se pueden mover por detrás de su ventana primaria. Si están minimizados, aparece un formulario flotante en la parte inferior del escritorio. Si su formulario primario está minimizado, los formularios flotantes también se minimizan. Los formularios flotantes también se usan en la creación de aplicaciones MDI. Formulario de nivel superior. Un formulario independiente sin formulario primario, utilizado para crear una aplicación SDI o como formulario primario de otros formularios secundarios de una aplicación MDI. Los formularios de nivel superior funcionan al mismo nivel que otras aplicaciones de Windows y pueden aparecer por delante o por detrás de ellas. Aparecen en la barra de estado de Windows. Si va a crear un formulario secundario, debe especificar no sólo qué debe aparecer dentro de otro formulario, sino también si es un formulario secundario compatible con MDI, que indica el comportamiento del formulario cuando se maximiza. Si el formulario secundario es compatible MDI, se combina con el formulario primario, compartiendo la barra de título, el título, los menús y las barras de herramientas del formulario primario. Un formulario secundario no compatible con MDI se maximiza en toda la zona cliente del formulario primario, pero conserva su título y su barra de título. ESPECIFICAR UN FORMULARIO SECUNDARIO 1. 2.

• •

Cree o modifique el formulario mediante el Diseñador de formularios. Establezca la propiedad ShowWindow del formulario a uno de los valores siguientes: 0 – En pantalla. El formulario primario del formulario secundario será la ventana principal de Visual FoxPro. 1 – En formulario de nivel superior. El formulario primario del formulario secundario será el formulario de nivel superior que esté activo cuando se muestre la ventana secundaria. Use este valor si quiere que la ventana secundaria aparezca dentro de

3.

cualquier ventana de nivel superior distinta de la ventana principal de Visual FoxPro. Establezca la propiedad MDIForm del formulario a .T. (verdadero) si quiere que el formulario secundarios se combine con el formulario primario cuando se maximice, o a .F. (falso) si la ventana secundaria debe seguir siendo una ventana independiente cuando se maximice.

Un formulario flotante es una variación de un formulario secundario.

CommandButton

FormSet

OLEBoundControl

Shape

CommandGroup

Grid

OLEContainerControl

Spinner

ComboBox

Header*

OptionButton*

TextBox

Container

Hyperlink Object

OptionGroup

Timer

Control

Image

Page*

ToolBar

ESPECIFICAR UN FORMULARIO FLOTANTE 1. 2.

• • 3.

Cree o modifique el formulario con el Diseñador de formularios. Establezca la propiedad ShowWindow del formulario a uno de los valores siguientes: 0 – En pantalla. El formulario primario del formulario flotante será la ventana principal de Visual FoxPro. 1 – En formulario de nivel secundario. El formulario primario del formulario flotante será el formulario de nivel superior que esté activo cuando se muestre la ventana flotante. Establezca la propiedad Desktop del formulario a .T. (verdadero).

* Estas clases son parte integral de un contenedor primario y no pueden usarse como subclases en el Diseñador de clases. Todas las clases de base de Visual FoxPro reconocen el siguiente conjunto mínimo de eventos:

Evento

ESPECIFICAR UN FORMULARIO DE NIVEL SUPERIOR 1. 2.

Cree o modifique el formulario con el Diseñador de formularios. Establezca la propiedad ShowWindow del formulario a 2 – Como formulario de nivel superior.

AGREGAR UN MENÚ A UN FORMULARIO DE NIVEL PRINCIPAL 1. 2. 3.

Cree un menú de formulario de nivel superior. Establezca la propiedad ShowWindow del formulario a 2 – Como formulario de nivel superior. En el evento Init del formulario, ejecute el programa de menú y pásele dos parámetros:

Por ejemplo, puede llamar a un menú llamado mimenuSDI con este código: DO mimenuSDI.mpr WITH THIS, .T. OCULTAR LA VENTANA PRINCIPAL DE VISUAL FOXPRO 1.

2.

En el evento Init del formulario, incluya la siguiente línea de código: Application.Visible = .F. En el evento Destroy del formulario, incluya la siguiente línea de código: Application.Visible = .T.

Descripción

Init

Ocurre cuando se crea el objeto.

Destroy

Ocurre cuando el objeto se libera de la memoria.

Error

Ocurre siempre que tiene lugar un error en procedimientos de evento o de método de la clase.

Todas las clases de base de Visual FoxPro tienen el siguiente conjunto mínimo de propiedades:

Propiedad

Descripción

Class

El tipo de clase de que se trata.

BaseClass

La clase de base de la que se deriva, como Form, Commandbutton, Custom, etc.

ClassLibrary

La biblioteca de clases en la que está almacenada.

ParentClass

La clase de la que se deriva la clase actual. Si la clase se deriva directamente de una clase de base de Visual FoxPro, la propiedad ParentClass es la misma que la propiedad BaseClass.

CLASES CREAR UNA CLASE NUEVA La programación orientada a objetos es en gran medida un modo de empaquetar código de manera que se pueda volver a utilizar y mantener más fácilmente. Los paquetes principales se llaman clases. Una clase es una plantilla que define las características de un objeto y describe qué apariencia y comportamiento debe tener el objeto. Las clases y los objetos están estrechamente relacionados, pero no son lo mismo. Una clase contiene información sobre cuál debe ser la apariencia y el comportamiento de un objeto. CLASES DE BASE DE VISUAL FOXPRO

• • •

En el Administrador de proyectos, seleccione la ficha Clases y elija Nuevo. • –O– En el menú Archivo, elija Nuevo, seleccione Clase y elija Nuevo archivo. • –O– Utilice el comando CREATE CLASS.

El cuadro de diálogo Nueva clase le permite especificar el nombre de la nueva clase, la clase en la que se basa la nueva clase y la biblioteca en la que se almacenará. EJEMPLO SENCILLO

ActiveDoc

Custom

Label

PageFrame

CheckBox

EditBox

Line

ProjectHook

Column*

Form

ListBox

Separator

Cuando especifica la clase en la que está basada la nueva clase y la biblioteca en la que se va a almacenar, se abre el Diseñador de clases

De este modo podrá utilizar este botón salir como cualquier otro control de la barra de herramientas controles de formularios. GALERÍA DE COMPONENTES La Galería de componentes es un contenedor de catálogos de objetos de software tales como bibliotecas de clases, formularios, botones, etcétera. También contiene nuevas clases de Visual FoxPro. ABRIR LA GALERÍA DE COMPONENTES

El Diseñador de clases proporciona la misma interfaz que el Diseñador de formularios, y permite ver y modificar las propiedades de la clase en la ventana Propiedades. La ventana de edición de código le permite escribir código para que se ejecute cuando ocurran eventos o se llame a métodos.



Por ejemplo en la ventana de propiedades colocaremos los siguientes valores

MOVER ELEMENTOS DESDE LA GALERÍA DE COMPONENTES



En el menú Herramientas, haga clic en la Galería de componentes. -OEscriba DO (_GALLERY) en la ventana Comandos.

1. Propiedad

Valor

Caption

\<Salir

FontBold

.T.-Verdadero

ToolTipText

salir de la aplicación

En el panel derecho, haga clic en el elemento que desee mover. El icono Mover, situado en la esquina superior izquierda de la ventana Galería de componentes, cambia de según el elemento seleccionado. 2. Arrastre y coloque el icono Mover en el escritorio o en un proyecto o formulario abierto. EJEMPLO:

En el código del evento Clic escriba THISFORM.Release, para que el botón libere formularios cuando se haga clic en él. Cuando haga clic en el botón cerrar del diseñador de clases, aparecerá:

1. 2. 3. 4. 5.

Cree un formulario nuevo. Abra la galería de componentes. En el panel izquierdo, seleccione Foundation classes Aún en el panel izquierdo, haga click en botones. En el panel derecho, haga clic en botón del cuadro de diálogo Filtro

Observe el icono Mover

Responda Sí. Puede agregar la biblioteca de clases a la barra de herramientas Controles de formularios si elige Agregar en el submenú del botón Ver clases de la barra de herramientas Controles de formularios.

6. 7.

Arrastre y coloque el icono Mover en el formulario abierto. Ejecute el formulario. Se verá así:

para el formulario o el conjunto de formularios.

OBJETOS Y PROPIEDADES Los formularios y los distintos tipos de controles son entidades de las que puede haber varios ejemplares concretos en cada aplicación. En programación orientada a objetos se llama clase a estas entidades genéricas, mientras que se llama objeto a cada ejemplar de una clase determinada. Por ejemplo, en un programa puede haber varios botones, cada uno de los cuales es un objeto del tipo botón de comando, que sería la clase. Cada formulario y cada tipo de control tienen un conjunto de propiedades que definen su aspecto gráfico (tamaño, color, posición en la ventana, tipo y tamaño de letra, etc.) y su forma de responder a las acciones del usuario (si está activo o no, por ejemplo). Cada propiedad tiene un nombre que viene ya definido por el lenguaje. Por lo general, las propiedades de un objeto son datos que tienen valores lógicos (True, False) o numéricos concretos, propios de ese objeto y distintos de las de otros objetos de su clase. Así pues, cada clase, tipo de objeto o control tiene su conjunto de propiedades, y cada objeto o control concreto tiene unos valores determinados para las propiedades de su clase. Casi todas las propiedades de los objetos pueden establecerse en tiempo de diseño y también -casi siempre- en tiempo de ejecución. En este segundo caso se accede a sus valores por medio de las sentencias del programa, en forma análoga a como se accede a cualquier variable en un lenguaje de programación. Las siguientes propiedades de formulario suelen establecerse en tiempo de diseño para definir la apariencia y el comportamiento del formulario: Propiedad

Descripción

Opción predeterminada

AlwaysOnTop

Controla si un formulario siempre está situado sobre las demás ventanas abiertas.

Falso (.F.)

AutoCenter

Controla si el formulario se centra automáticamente en la ventana principal de Visual FoxPro cuando se inicializa el formulario.

Falso (.F.)

BackColor

Determina el color de la ventana del formulario.

255,255,255

BorderStyle

Controla si el formulario no tiene borde, tiene un borde de una sola línea, de doble ancho o del sistema. Si BorderStyle es 3 (Sistema), el usuario podrá cambiar el tamaño del formulario.

3

Caption

Determina el texto que aparece en la barra de título del formulario.

Form1

Closable

Controla si el usuario puede cerrar el formulario haciendo doble clic en el cuadro de cierre.

Verdadero (.T.)

DataSession

Controla si las tablas del formulario o el conjunto de formularios están abiertas en áreas de trabajo accesibles globalmente o privadas

1

MaxButton

Controla si el formulario tiene o no un botón de maximizar.

Verdadero (.T.)

MinButton

Controla si el formulario tiene o no un botón de minimizar.

Verdadero (.T.)

Movable

Controla si el formulario puede moverse o no a una nueva ubicación de la pantalla.

Verdadero (.T.)

ScaleMode

Controla si la unidad de medida para las propiedades de tamaño y posición de los objetos es fóxeles o píxeles.

Determinado por los valores del cuadro de diálogo Opciones.

Scrollbars

Controla el tipo de barras de desplazamiento que tiene un formulario.

0 – Ninguna

TitleBar

Controla si aparece una barra de título en la parte superior del formulario.

1 – Activo

ShowWindow

Controla si la ventana es una ventana secundaria (en la pantalla), flotante o de nivel superior.

0 - En pantalla

WindowState

Controla si el formulario está minimizado, maximizado o es normal.

0 – Normal

WindowType

Controla si el formulario es de tipo sin modo (opción predeterminada) o modal. Si es modal, el usuario deberá cerrar el formulario antes de tener acceso a ningún otro elemento de la interfaz de usuario de la aplicación.

Para cambiar las propiedades de un formulario desde la ventana de propiedades (En tiempo de Diseño):

Las propiedades de sólo lectura en tiempo de diseño, como la propiedad Class de un objeto, se muestran en cursiva en la lista Propiedades y eventos de la ventana Propiedades. Si la propiedad necesita un valor de carácter, no será necesario que incluya el valor entre comillas. Seleccione el Objeto (el formulario) y en la propiedad caption especifique el texto mostrado en la barra de título del formulario.

Para establecer el valor de la propiedad Caption en tiempo de ejecución haga doble clic en el formulario

Aparecerá This en la ventana del Evento Load del formulario, inserte un punto y escriba caption=”Formulario de prueba”.

Luego ejecute el formulario haciendo clic en el botón Ejecutar

Se mostrará :

O bien, haga clic en el menú Ver y luego en Código o también puede hacerlo en la ficha Métodos de la Ventana de Propiedades del formulario haga doble clic en el Evento Load.

Agregue This.AutoCenter=.t. al evento Load y ejecute el formulario. Establecer Múltiples Propiedades. Puede Propiedades de una sola vez: WITH THISFORM.grdGrid1.grcColumn1 .Width = 5 .Resizable = .F. .ForeColor = RGB(0,0,0) .BackColor = RGB(255,255,255) .SelectOnEntry = .T. ENDWITH

establecer

Múltiples

ASIGNAR UN ICONO A UN FORMULARIO 1. 2. 3. Haga Clic con el botón derecho del Mouse y seleccione lista de objetos y seleccione el form1 luego haga clic en insertar

Abra el formulario. Abra la ventana Propiedades. Establezca la propiedad Icon al archivo .ICO que quiera mostrar

REFERENCIAS A OBJETOS EN LA JERARQUÍA DE OBJETOS Para manipular un objeto, hay que identificarlo en relación a la jerarquía de contenedores. Por ejemplo, para manipular un control de un formulario perteneciente a un conjunto de formularios, deberá hacer referencia al conjunto de formularios, al formulario y, por último, al control. Hacer referencia a un objeto dentro de su jerarquía de contenedores se puede comparar con dar una dirección del objeto a Visual FoxPro. Cuando describe la ubicación de una casa a otra persona fuera de su marco inmediato de referencia, debe indicar el país, la provincia o la región, la ciudad, la calle o bien sólo el número de la calle donde se

encuentra la vivienda, según lo lejos que se encuentre esa otra persona. De lo contrario, podría haber cierta confusión.

se almacenará en el campo, en el puntero de registro. Si un elemento de la lista coincide con el valor del campo de la tabla, se seleccionará el elemento de la lista cuando el puntero de registro se desplace por la tabla.

En el nivel superior de la jerarquía de contenedores (el conjunto de formularios o el formulario) debe hacer referencia a la variable de objeto. La variable de objeto tiene el mismo nombre que el archivo .scx objetovariable.[formulario.]control.propiedad = Configuración

Botón de opción

La tabla siguiente muestra las propiedades o las palabras clave que facilitan el establecimiento de referencias a un objeto en la jerarquía de objetos. Propiedad palabra clave

o

Si ControlSource es un campo de caracteres, en el campo se escribirá (.T.) o (.F.), en función de si se elige el botón o no. Sin embargo, si el puntero de registro se mueve en la tabla, el valor del botón de opción no se actualizará para reflejar el valor de carácter del campo.

Referencia

ActiveControl

El control del formulario activo actualmente que tiene el enfoque

ActiveForm

El formulario activo actualmente

ActivePage

La página activa del formulario activo actualmente

Parent

El contenedor más cercano al objeto

THIS

El objeto o un procedimiento o evento del objeto

THISFORM

El formulario que contiene el objeto

THISFORMSET

El conjunto de formularios que contiene al objeto

Por ejemplo, para cambiar el título de un botón de comando del formulario frmCust de un conjunto de formularios almacenado en Custview.scx, use el siguiente comando en un programa o en la ventana Comandos: CustView.frmCust.cmdButton1.Caption = "Nuevo Título"

Si ControlSource es un campo numérico, 0 ó 1 se escribe en el campo, en función de si se elige el botón.

Si el ControlSource del control OptionGroup (no del mismo botón de opción) es un campo de caracteres, el título del botón de opción se almacena en el campo si se elige el botón de opción. Observe que el origen de control para un botón de opción (a diferencia de un control OptionGroup) no puede ser un campo de caracteres o Visual FoxPro informará de tipo de datos incorrecto cuando se ejecute el formulario. Control numérico

El control numérico refleja y escribe valores numéricos en el campo o la variable subyacente.

Cuadro de texto o cuadro de edición

El valor del campo de la tabla se muestra en el cuadro de texto. Los cambios que realiza el usuario en este valor vuelven a escribirse en la tabla. Al mover el puntero de registro se verá afectada la propiedad Value del cuadro de texto.

Utilice las palabras clave THIS, THISFORM y THISFORMSET para hacer referencia a objetos que están en un formulario o un conjunto de formularios

USAR GRUPOS DE BOTONES DE OPCIÓN

CONTROLES

Los grupos de botones de opción son contenedores que alojan botones de opción. Generalmente, los botones de opción permiten a los usuarios especificar una opción entre varias en un cuadro de diálogo, en lugar de introducir los datos.

Cuando los usuarios interactúan con controles dependientes (dependen de datos), los valores que introducen o eligen se almacenan en el origen de datos, que puede ser un campo de tabla, un campo de cursor (Un cursor es una tabla temporal) o una variable. Un control se vincula a datos al establecer su propiedad ControlSource o, en el caso de las cuadrículas, su propiedad RecordSource. Si no establece la propiedad ControlSource de un control, el valor que introduzca o elija el usuario en el control sólo se almacenará como el valor de una propiedad; no se escribirá en disco ni se almacenará en memoria más allá de la vida del control. Efecto de un valor de ControlSource sobre los controles Control Casilla verificación

Propiedades Principales del botón de opción Propiedad ButtonCount Value ControlSource

Efecto de

Si el ControlSource es un campo de una tabla, los valores lógicos verdadero (.T.) o falso (.F.), o numéricos 0, 1 ó 2 del campo ControlSource harán que la casilla de verificación se active, desactive o atenúe a medida que el puntero de registro se mueva por la tabla.

Columna

Si el ControlSource es un campo de tabla, el usuario modificará directamente el campo cuando modifique valores en la columna. Para vincular una cuadrícula completa a datos, establezca la propiedad RecordSource de la cuadrícula.

Cuadro de lista o cuadro combinado

Si el ControlSource es una variable de memoria, el valor que elija el usuario en la lista se almacenará en la variable de memoria. Si el ControlSource es un campo de una tabla, el valor

Buttons Enabled

Función Establezca la propiedad con el número deseado de botones de opción. indica qué botón se ha elegido en el grupo de botones de opción Si es un campo de caracteres o si la propiedad Value se establece a un valor de tipo Character antes de que se ejecute el formulario, la propiedad Value del grupo es el título del botón de opción seleccionado. especifica el número de índice del botón de opción del grupo. Establezca esta propiedad del grupo de botones de opción como falso (.F.) para desactivar el grupo

USAR CUADROS DE LISTA Y CUADROS DESPLEGABLES (CUADROS COMBINADOS)

DE

LISTA

Las propiedades siguientes de cuadros de lista suelen establecerse en tiempo de diseño. Propiedad

Descripción

ColumnCount

Indica el número de columnas del cuadro de lista.

ControlSource

Indica dónde se almacena el valor que elige un usuario en la lista.

MoverBars

Indica si las barras de movimiento se muestran a la izquierda de los elementos de la lista de modo que el usuario pueda reorganizar fácilmente los elementos de la lista.

Multiselect

Indica si el usuario puede seleccionar o no más de un elemento de la lista al mismo tiempo.

RowSource

Indica de dónde provienen los valores que se muestran en la lista.

RowSourceType

Indica si RowSource es un valor, una tabla, una instrucción SQL, una consulta, una matriz, una lista de archivos o una lista de campos.

9

Emergente. Se incluye por compatibilidad con versiones anteriores.

Para mayor información de la propiedad RowSourceType consulte Usar Controles en el manual del programador de Visual FoxPro 6.0.

CASILLAS DE VERIFICACIÓN

La propiedad Value de una lista puede ser numérica o de caracteres. El valor predeterminado es numérico. Establezca la propiedad Value como una cadena vacía si RowSource es un valor de tipo Character y desea que la propiedad Value refleje la cadena de caracteres del elemento seleccionado en la lista. Puede presionar la barra espaciadora y, a continuación, la tecla retroceso para introducir una cadena vacía para una propiedad en la ventana Propiedades. MÉTODOS DE CUADRO DE LISTA QUE SUELEN UTILIZARSE CON FRECUENCIA: Método

Descripción

AddItem

Agrega un elemento RowSourceType de 0.

a

una

lista

con

un

RemoveItem

Quita un elemento RowSourceType de 0.

de

una

lista

con

un

Requery

Actualiza la lista si han cambiado los valores de RowSource

Elegir un tipo de datos para un cuadro de lista o un cuadro combinado La propiedad RowSourceType determina qué tipo de origen rellena el cuadro de lista o el cuadro combinado, como una matriz o una tabla. Una vez establecida la propiedad RowSourceType, especifique el origen de los elementos de la lista; para ello, establezca la propiedad RowSource. RowSourceType

Origen de los elementos de lista

0

Ninguno. Agrega elementos a la lista mediante programación.

1

Valor

2

Alias

3

Instrucción SQL

4

Consulta (.qpr)

5

Matriz

6

Campos

7

Archivos

8

Estructura

Hay cuatro estados posibles para una casilla de verificación, determinados por la propiedad Value.

La propiedad Value de la casilla de verificación refleja el tipo de datos de la última asignación. Si establece la propiedad como verdadera (.T.) o falsa (.F.), el tipo será Logical hasta que establezca la propiedad en un valor numérico. Almacenar o mostrar campos lógicos Si establece la propiedad ControlSource de la casilla de verificación como un campo lógico de una tabla, la casilla de verificación se mostrará activada cuando el valor del registro actual sea verdadero (.T.), como no activada cuando el registro actual sea falso (.F.) y como

.

atenuada cuando haya un valor nulo (.NULL.) en el registro actual

CUADROS DE TEXTO Este control permite a los usuarios agregar o modificar datos almacenados en un campo no memo de una tabla. Para manipular mediante programación el texto que se muestra en el cuadro de texto haga referencia a la propiedad Value. Si establece la propiedad ControlSource para el cuadro de texto, el valor que aparece en el cuadro de texto se almacenará en la propiedad Value del cuadro de texto y en el campo de la tabla o del cursor que se especifique en la propiedad ControlSource. Propiedad

Descripción

Alignment

Especifica si el contenido del cuadro de texto está alineado a la izquierda, a la derecha, centrado o alineado automáticamente. La alineación automática depende del tipo de datos. Los números, por ejemplo, se alinean a la derecha y los caracteres se alinean a la izquierda.

ControlSource

El campo de tabla o variable cuyo valor se muestra en el cuadro de texto.

InputMask

Especifica la regla de entrada de datos que cada carácter escrito debe seguir.

SelectOnEntry

Especifica si el contenido del cuadro de texto se selecciona automáticamente cuando el cuadro de texto recibe el enfoque.

TabStop

Especifica si el usuario puede llegar al control mediante tabulaciones. Si TabStop está establecido a .F., un usuario puede seleccionar el cuadro de texto si hace clic en él.

Format

Para determinar como se muestran los valores

en el cuadro de texto Propiedad PassWordChart

ReadOnly

Descripción

Para aceptar la entrada del usuario sin mostrar el Valor real. Establezca la propiedad como asterisco (*)

ControlSource

Especifica el campo de la tabla en el que se almacena el valor que elige o escribe el usuario.

Determina si el usuario puede cambiar el texto en el cuadro de texto.

DisplayCount

Especifica el número máximo de elementos mostrados en la lista.

InputMask

Para cuadros combinados desplegables, especifica el tipo de valores que se pueden escribir.

IncrementalSearch

Especifica si el control intenta hacer coincidir un elemento de la lista a medida que el usuario escribe cada letra.

RowSource

Especifica el origen de los elementos del cuadro combinado.

RowSourceType

Especifica el tipo de origen del cuadro combinado. Los tipos de origen de fila de un cuadro combinado son iguales que los de una lista. Para ver una explicación de cada uno de ellos, vea la Ayuda o la sección sobre cuadros de lista y cuadros de lista desplegable.

Style

Especifica si el cuadro combinado es un cuadro combinado desplegable o una lista desplegable.

Los valores para la propiedad InputMask son: Valor

Descripción

X

Puede introducirse cualquier carácter.

9

Pueden introducirse dígitos y signos, como el signo menos ( – ).

#

Pueden introducirse dígitos, espacios en blanco y signos.

$

Muestra el símbolo de moneda actual (especificada con SET CURRENCY) en una posición fija.

$$

Muestra un símbolo de moneda flotante que siempre aparece junto a los dígitos del Spinner o TextBox.

*

Se muestran asteriscos a la izquierda del valor.

.

Un punto especifica la posición de coma decimal.

,

Pueden incluirse comas para separar dígitos a la izquierda de la coma decimal.

Para agregar el nuevo valor de usuario al cuadro combinado desplegable, puede utilizar la línea de código siguiente en el método asociado al evento Valid del cuadro combinado: THIS.AddItem(THIS.Text)

VALIDAR DATOS EN UN CUADRO DE TEXTO Para comprobar el valor del cuadro de texto, incluya código en el método asociado al evento Valid. Si el valor no es válido, se devolverá falso (.F.) o 0. Si Valid devuelve falso (.F.) se muestra el mensaje "La entrada no es válida". Si desea mostrar su propio mensaje, incluya el comando WAIT WINDOW o la función MESSAGEBOX( ) en el código Valid y devuelva 0.

CONTROLES NUMÉRICOS Los controles numéricos pueden emplearse para permitir a los usuarios realizar selecciones mostrando los valores o escribiendo directamente el valor en el cuadro del control numérico. ESTABLECER EL INTERVALO DE VALORES QUE PUEDEN ELEGIR LOS USUARIOS Propiedad

CUADROS DE EDICION

Especifica el valor más alto que puede escribirse en un control Spinner mediante el teclado

KeyboardLowValue

Especifica el valor más bajo que puede escribirse en un control Spinner mediante el teclado

SpinnerHighValue

Especifica el valor más alto que se puede introducir en un control Spinner al hacer clic en las flechas hacia arriba y hacia abajo

SpinnerLowValue

Especifica el valor más bajo que se puede introducir en un control Spinner al hacer clic en las flechas hacia arriba y hacia abajo

Increment

Especifica cuánto aumenta o disminuye el valor del control Spinner cuando se hace clic en la flecha hacia arriba o hacia abajo.

Puede permitir que los usuarios modifiquen texto de campos de caracteres o de campos memo largos en cuadros de edición. Propiedad AllowTabs

Descripción Si el usuario puede insertar tabulaciones en el cuadro de edición en lugar de moverse al control siguiente. Si permite tabulaciones, asegúrese de indicar que los usuarios pueden moverse al control siguiente presionando CTRL+TAB.

HideSelection

Si el texto seleccionado en el cuadro de edición está seleccionado de forma visible cuando el cuadro de edición no tiene el enfoque.

ReadOnly

Si el usuario puede cambiar el texto en el cuadro de edición.

ScrollBars

Si hay barras de desplazamiento verticales.

Descripción

KeyboardHighValue

CUADROS COMBINADOS El control cuadro combinado tiene la funcionalidad de un cuadro de lista y un cuadro de texto. Hay dos estilos para un cuadro combinado: cuadro combinado desplegable y cuadro de lista desplegable.

BOTONES DE COMANDO Y GRUPOS DE BOTONES DE COMANDO

externo (como un clic en un botón de comando) para que se inicie la operación del cronómetro.

Propiedades comunes de los botones de comando Propiedad Cancel

Descripción Especifica que el código asociado al evento Click del botón de comando se ejecuta cuando el usuario presiona ESC.

Default

para convertir el botón de comando en la opción predeterminada.

Caption

Texto que se muestra en el botón.

DisabledPicture

Imagen .bmp que se muestra cuando se desactiva el botón.

DownPicture

Imagen .bmp que se muestra cuando se presiona el botón.

Enabled

Indica si puede elegirse o no el botón.

Picture

Imagen .bmp que se muestra en el botón.

Interval

Número de milisegundos entre los eventos del cronómetro.

Con la mayoría de los objetos, la propiedad Enabled determina si el objeto puede responder o no a un evento causado por el usuario. Con el control Timer, al establecer Enabled a falso (.F.) se suspende el

.

funcionamiento del cronómetro La propiedad Interval no determina "cuánto tiempo", sino más bien "con qué frecuencia" se genera el evento del cronómetro. Puesto que existen posibilidades inherentes de error, cree el intervalo con la mitad de la precisión deseada. Responder al evento Timer Cuando transcurre el intervalo del control Timer, Visual FoxPro genera el evento Timer.

CONTROL IMAGE

La propiedad Value del grupo de botones de comando indica en qué botones se ha hecho clic. Propiedades comunes de los grupos de botones de comando Propiedad

Descripción

El control Image permite agregar imágenes (archivos .bmp) al formulario Propiedad

Descripción

Picture

La imagen (archivo .bmp) que se muestra.

ButtonCount

Número de botones del grupo de comandos.

BorderStyle

Indica si la imagen tiene o no un borde visible.

BackStyle

Especifica si el grupo de botones de comando tiene un fondo transparente u opaco. Un fondo transparente parece tener el mismo color que el que tiene el objeto subyacente, normalmente el formulario o una página.

Stretch

Si Stretch se establece a 0 – Recortar, no se mostrarán las partes de la imagen que superen las dimensiones del control Image. Si Stretch se establece a 1 – Isométrico, el control Image conservará las dimensiones originales de la imagen y mostrará la imagen en la medida que lo permitan las dimensiones del control Image. Si Stretch se establece a 2 – Estirar, la imagen se ajustará para que coincida exactamente con el alto y el ancho del control Image.

OBJETO HYPERLINK El objeto Hyperlink se puede utilizar para iniciar una aplicación que admita hipervínculos, generalmente un explorador de Internet como Microsoft Internet Explorer, y abrir la página especificada en la dirección. El método Hyperlink NavigateTo( ) le permite especificar la dirección de destino a la que se salta. Por ejemplo, para ir al sitio Internet de Microsoft en World Wide Web desde un formulario, agregue en primer lugar el control Hyperlink al formulario. Agregue un botón de comando al formulario y, a continuación, agregue el código siguiente al evento Click del botón de comando: THISFORM.Hyperlink1.NavigateTo(‘www.microsoft.com’) Cuando se ejecute el formulario puede hacer clic en el botón de comando para saltar al sitio Web de Microsoft.

USAR ETIQUETAS Propiedad Caption

El texto que muestra la etiqueta.

AutoSize

Indica si el tamaño de la etiqueta se ajusta a la longitud del título.

BackStyle

Indica si la etiqueta es opaca o transparente.

WordWrap

Indica si el texto que se muestra en la etiqueta puede ajustarse automáticamente a líneas adicionales.

CONTROL CRONÓMETRO Los controles Cronómetro responden al paso del tiempo independientemente de la interacción con el usuario, de modo que pueden programarse para que realicen acciones a intervalos regulares. Un control Timer tiene dos propiedades clave. Propiedad Enabled

Valor Si desea que el cronómetro comience a funcionar en cuanto se cargue el formulario, establézcala a verdadero (.T.). De lo contrario, deje esta propiedad establecida a falso (.F.). Puede elegir un evento

Descripción

USAR FORMAS Una forma es un control que crea una forma que se puede mostrar como diversas variaciones de un rectángulo o un círculo. Las siguientes propiedades del control Shape suelen establecerse en tiempo de diseño. Propiedad

Descripción

Curvature

Un valor entre 0 (ángulos de 90 grados) y 99 (círculo o elipse).

FillStyle

Indica si la forma es transparente o tiene un determinado modelo de relleno del fondo.

SpecialEffect

Indica si la forma es sencilla o tridimensional. Sólo tiene efecto cuando la propiedad Curvature se establece a 0.

Cada uno de los cuales tiene su propio conjunto de propiedades, métodos y eventos, lo que proporciona un gran control sobre los elementos de la cuadrícula. Contenedor

Puede contener

Cuadrícula

Columnas

Columna

Encabezados, controles

PROPIEDADES COMUNES DE LAS CUADRÍCULAS Propiedad

USAR LÍNEAS Una línea es un control que dibuja una línea en un formulario. Propiedad

Descripción

AllowRowSizing

.F. Impide que el usuario cambie la altura de las filas de cuadrícula en tiempo de ejecución

Width

Establece el anco de la columna

Height

Establece el alto de las filas de una cuadrícula

ChildOrder

La clave externa de la tabla secundaria que se combina con la clave principal de la tabla primaria.

ColumnCount

Número de columnas. Si ColumnCount está establecida a - 1, la columna tendrá tantas columnas como campos haya en la propiedad RecordSource de la cuadrícula.

LinkMaster

La tabla primaria para registros secundarios que se muestran en la cuadrícula.

Descripción

BorderWidth

Indica cuántos píxeles de ancho tiene la línea.

LineSlant

Cuando la línea no es horizontal ni vertical, indica el sentido de la inclinación. Los valores válidos para esta propiedad son una barra diagonal ( / ) y una barra inversa ( \ ).

USAR GRÁFICOS INFORMACIÓN

DE

FORMULARIO

PARA

MOSTRAR

Puede mostrar información gráficamente en un formulario con los siguientes métodos de formulario. Método

Descripción

Circle

Dibuja una figura circular o un arco en un formulario.

Cls

Borra gráficos y texto de un formulario.

RecordSource

Los datos que se muestran en la cuadrícula.

Line

Dibuja una línea en un formulario.

RecordSourceType

Pset

Establece un punto de un formulario con un determinado color.

Indica de dónde provienen los datos que se muestran en la cuadrícula: una tabla, un alias, una consulta o una tabla seleccionada por el usuario como respuesta a una petición.

Print

Imprime una cadena de caracteres en un formulario.

AllowAddNew

Especifica si se pueden agregar nuevos registros a una tabla desde una cuadrícula.

MEJORAR LA PRESENTACIÓN DE CONTROLES

PROPIEDADES COMUNES DE LAS COLUMNAS

Los botones de comando, las casillas de verificación y los botones de opción pueden mostrar una imagen además de un título.

Propiedad

Descripción

ControlSource

Los datos que se muestran en la columna. Suele ser un campo de una tabla.

Sparse

Si Sparse se establece como verdadero (.T.), los controles de una cuadrícula sólo se mostrarán como controles cuando se seleccione la celda de la columna. Otras celdas de la columna muestran el valor de datos subyacente en un cuadro de texto. Si establece Sparse como verdadero (.T.), la actualización será más rápida si un usuario se desplaza por una cuadrícula con muchas filas visibles.

CurrentControl

Indica cuál es el control activo de la cuadrícula. El valor predeterminado es Text1, pero si agrega un control a la columna, podrá especificarlo como CurrentControl.

Propiedad

Descripción

DisabledPicture

Imagen que se muestra en el botón cuando éste está desactivado.

DownPicture

Imagen que se muestra en el botón cuando éste está presionado.

Picture

Imagen que se muestra en el botón cuando éste está activado y no presionado.

Si no desea que se muestre un título además de la imagen, establezca la propiedad Caption como una cadena vacía eliminando el título predeterminado en el cuadro "Edición de propiedades" de la ventana Propiedades.

USAR CUADRÍCULAS La cuadrícula es un objeto contenedor. Una cuadrícula uede contener columnas. Las columnas, a su ves, contienen encabezados y controles.

PARA ESTABLECER CUADRÍCULA

EL

ORIGEN

DE

DATOS

PARA UNA

1 Seleccione la cuadrícula y, a continuación, haga clic en la propiedad RecordSourceType en la ventana Propiedades. 2 Establezca la propiedad RecordSourceType como 0 - Tabla, si desea que Visual FoxPro abra la tabla o como 1 - Alias si desea que la cuadrícula se llene con los campos de una tabla que ya está abierta. 3 Haga clic en la propiedad RecordSource de la ventana Propiedades. 4 Escriba el nombre del alias o la tabla que va a servir de origen de datos para la cuadrícula. PARA ESTABLECER COLUMNA

EL ORIGEN

DE

DATOS

PARA UNA

1 Seleccione la columna y, a continuación, haga clic en la propiedad ControlSource de la ventana Propiedades. 2 Escriba el nombre del alias o la tabla y el campo que va a servir como origen para los valores que se muestran en la columna. AGREGAR DE FORMA INTERACTIVA CONTROLES A UNA COLUMNA DE CUADRÍCULA 1 Agregue una cuadrícula a un formulario. 2 En la ventana Propiedades, establezca la propiedad ColumnCount de la cuadrícula como el número de columnas deseadas. 3 En la ventana Propiedades seleccione la columna primaria para el control en el cuadro Objeto. 4 Seleccione el control deseado en la barra de herramientas Controles de formularios y haga clic en la columna primaria. El nuevo control no aparecerá ahora en la columna de cuadrícula dentro del Diseñador de formularios, pero será visible en tiempo de ejecución. 5 En la ventana Propiedades asegúrese que el control se muestra sangrado bajo la columna primaria en el cuadro Objeto. 6 Establezca la propiedad ControlSource de la columna primaria como el campo de tabla deseado. 7 Establezca la propiedad CurrentControl de la columna primaria como el nuevo control. PARA QUITAR CONTROLES DE COLUMNAS DE CUADRÍCULA EN EL GENERADOR DE FORMULARIOS 1 2

3

CONTROL CONTENEDOR OLE Agregue un objeto OLE a un formulario; para ello haga clic en esta herramienta y arrástrela para ajustar su tamaño en la ventana Formulario. Esta herramienta puede representar un objeto servidor como Microsoft Excel o Microsoft Word, o puede representar un control ActiveX si el directorio SYSTEM de Windows contiene controles ActiveX (archivos con una extensión .ocx).

En el cuadro Objeto de la ventana Propiedades, seleccione el control. Active el Diseñador de formularios. Si la ventana Propiedades está visible, el nombre del control aparecerá en el cuadro Objeto. Presione la tecla supr.

USAR MARCOS DE PAGINA

CONTROL ACTIVEX DEPENDIENTE Puede crear un objeto ActiveX dependiente en un formulario; para ello, haga clic en esta herramienta y arrástrela para ajustar su tamaño en la ventana Formulario. Después de crear el objeto, conéctelo a un campo General de la tabla. A continuación, utilice el objeto para mostrar el contenido del campo. NOMBRES DE OBJETOS En principio cada objeto debe tener un nombre, por medio del cual se le hace referencia. El nombre puede ser el que el usuario desee o incluso el que VFP proporciona por defecto para los diversos controles. Estos nombres por defecto hacen referencia al tipo de control y van seguidos de un número que se incrementa a medida que se van introduciendo más controles de ese tipo en el formulario. Los nombres por defecto no son adecuados porque hacen referencia al tipo de control, pero no al uso que de dicho control está haciendo el programador. Es muy importante que los nombres que se le asignan tanto a las variables como a los controles sean descriptivos y nos permitan tener una idea de lo que hacen o de los datos que almacenan. EVENTOS Las acciones del usuario sobre el programa se llaman eventos. Son eventos típicos el clicar sobre un botón, el hacer doble clic sobre el nombre de un fichero para abrirlo, el arrastrar un icono, el pulsar una tecla o combinación de teclas, el elegir una opción de un menú, el escribir en una cuadro de texto, o simplemente mover el ratón. Cada vez que se produce un evento sobre un determinado tipo de control, se ejecuta una determinada función o procedimiento que realiza la acción programada por el usuario para ese evento. Los eventos básicos La tabla siguiente contiene una lista del principal conjunto de eventos de Visual FoxPro que se aplican a la mayoría de los controles.

Los marcos de página permiten ampliar la superficie de los formularios y los controles ActiveX permiten ampliar la funcionalidad de los formularios.

CONJUNTO BÁSICO DE EVENTOS Evento

Cuándo se desencadena el evento

Un marco de página es un objeto contenedor que contiene páginas. A su vez, las páginas contienen controles. Las propiedades pueden establecerse a nivel de marco de página, de página o de control.

Init

Al crear un objeto.

Destroy

Al liberar de la memoria un objeto.

Click

Cuando el usuario hace clic en el objeto con el botón principal del mouse.

DblClick

Cuando el usuario hace doble clic en el objeto con el botón principal del mouse.

PROPIEDADES COMUNES DE LOS MARCOS DE PÁGINAS Las propiedades siguientes de los marcos de páginas suelen establecerse en tiempo de diseño. Propiedad

Descripción

Tabs

Especifica si las fichas son visibles o no para las páginas.

RightClick

Cuando el usuario hace clic en el objeto con el botón secundario del mouse.

TabStyle

Especifica si las fichas tienen o no el mismo tamaño y si juntas ocupan el mismo ancho que el marco de páginas.

GotFocus

Cuando el objeto recibe el enfoque, ya sea como resultado de una acción del usuario o al hacer clic, o porque se cambie el enfoque en el código mediante el método SetFocus.

PageCount

El número de páginas del marco de página. LostFocus

Cuando el objeto pierde el enfoque, ya sea como resultado de una acción del usuario o al hacer clic, o porque se cambie el enfoque en el

código mediante el método SetFocus.

Los métodos contienen código de procedimientos que se ejecuta al llamar al método

KeyPress

Cuando el usuario presiona y suelta una tecla.

Para liberar un formulario utilice el método Release

MouseDown

Cuando el usuario presiona el botón del mouse mientras el puntero del mouse se encuentra sobre el objeto.

ThisForm.release

MouseMove

MouseUp

Cuando el usuario mueve el mouse sobre el objeto. Cuando el usuario libera un botón del mouse mientras el puntero del mouse se encuentra sobre el objeto.

A la hora de escribir código de eventos para los controles se deben tener en cuenta dos reglas básicas: • •

Los contenedores no procesan los eventos asociados a los controles que contienen. Si no hay código de evento asociado a un control, Visual FoxPro comprobará si hay código asociado al evento en algún nivel superior de la jerarquía de clase para dicho control.

EJEMPLO DEL evento keypress Puede incluir el siguiente código en el evento KEYPRESS de un formulario, ejecutarlo y presionar la tecla ESCAPE IF nKeyCode=27 WAIT WINDOW "SE SIMULO PRESIONAR LA TECHA ESC" ENDIF EJEMPLO DEL EVENTO MOUSEMOVE Coloque el siguiente código en el evento MouseMove de un botón de comando de un formulario, ejecute el formulario y mueva el apuntador del ouse sobre el botón de comando: messagebox("se esta ejecutando el evento MouseMove del botón de comando")

Para dibujar un circulo en un formulario ThisForm.Circle (20,20,20,1 ) Una vez creado el objeto se puede llamar a los métodos desde cualquier lugar de la aplicación CONSULTAS Con el Diseñador de consultas puede buscar aquellos registros que satisfacen las condiciones que Ud. especifique. Además, puede ordenar y agrupar los registros como desee, así como crear informes, tablas y gráficos basándose en los resultados obtenidos. TIPOS DE CONSULTAS

• Consultas sencillas de sólo lectura basadas en tablas (archivos .DBF) o en vistas

• Consultas locales de múltiples tablas o con datos remotos CONSULTAS SENCILLAS DE SÓLO LECTURA BASADAS EN TABLAS (ARCHIVOS .DBF) O EN VISTAS COMO INICIAR EL GENERADOR DE CONSULTAS. 1. 2. 3. 4.

5.

Desde el Administrador de Proyectos, en la ficha Datos, seleccione Consultas y haga clic ene. Botón nuevo. Cree la consulta con un Asistente para consultas o con el Diseñador de consultas. Seleccione la tabla o vista que contiene la información que desea obtener. Defina los resultados de la consulta; para ello, elija los campos que desea, el orden en que quiere que aparezcan y los registros que desea. Organice los resultados de la consulta; para ello, ordene y agrupe las filas del resultado. Elija el tipo de salida que desea para la consulta: tabla, informe, examinar, etc. Ejecute y compruebe la consulta.

Puede usar el comando KEYBOARD para generar eventos KEYPRESS o usar el comando ERROR para generar eventos Error. No puede hacer que se produzca ningún otro evento mediante programación, pero sí puede llamar al procedimiento asociado con el evento. Por ejemplo, la instrucción siguiente hace que se ejecute el código del evento Activate de frmTELEFONO, pero no activa el formulario:

7.

frmTELEFONO.Activate

Seleccionar una tabla o una vista para la consulta

6.

CREAR UNA CONSULTA CON EL DISEÑADOR DE CONSULTAS

Si desea activar el formulario, utilice el método Show del formulario. Si desea activar el formulario, utilice el método Show del formulario. Al llamar al método Show se mostrará y activará el formulario, momento en el que también se ejecutará el código del evento Activate: frmTELEFONO.Show MÉTODOS Los métodos son funciones que también son llamadas desde programa, pero a diferencia de los procedimientos no son programadas por el usuario, sino que vienen ya pre-programadas con el lenguaje. Los métodos realizan tareas típicas, previsibles y comunes para todas las aplicaciones. De ahí que vengan con el lenguaje y que se libere al usuario de la tarea de programarlos. Cada tipo de objeto o de control tiene sus propios métodos. Por ejemplo, los controles gráficos tienen un método llamado Line que se encarga de dibujar líneas rectas. De la misma forma existe un método llamado Circle que dibuja circunferencias y arcos de circunferencia.

PARA CREAR UNA CONSULTA CON UN ASISTENTE 1. 2. 3. 4.

En el Administrador de proyectos, seleccione la ficha Datos y elija Consultas. Elija Nuevo. Elija el botón Asistente para consultas. Seleccione el tipo de consulta que desea crear.

5.

Siga las instrucciones que aparecerán en las pantallas del asistente.

DESTINO DE LA CONSULTA Estando en el diseñador de consultas, haga clic en el menú Consulta y luego en la opción Destino de la consulta… La tabla de abajo muestra y describe los tipos de resultados: Opción de destino

Detalles

Examinar

Muestra el resultado de la consulta en una ventana Examinar.

Cursor

Guarda el resultado de la consulta en un cursor.

Tabla

Guarda el resultado de la consulta como un archivo de tabla.

Gráfico

Transforma el resultado de la consulta a un formato disponible para usarlo con Microsoft Graph, una aplicación independiente de incrustación OLE incluida con Visual FoxPro.

Pantalla

Muestra el resultado de la consulta en la ventana de resultado activa.

Informe

Envía el resultado de la consulta a un archivo de informe.

Etiqueta

Envía el resultado de la consulta a un archivo de etiqueta.

Puede copiar la instrucción SELECT y pegarla en la ventana de comandos o utilizarla en el evento clic de un botón de comando POR EJEMPLO: SELECT *; FROM datos2!inmobiliaria; WHERE Inmobiliaria.estado = "MIRANDA" CONSULTAS LOCALES DE MÚLTIPLES TABLAS O CON DATOS REMOTOS Con Visual FoxPro puede consultar múltiples tablas y vistas, así como combinar datos remotos y locales en una vista. Esta posibilidad resulta útil cuando los datos necesarios están almacenados en dos o más tablas, o cuando están repartidos entre tablas locales y tablas de un origen de datos remoto. El término "vista" se usa para el objeto que se crea con el Diseñador de vistas. Cuando tenga que consultar información almacenada en dos o más tablas, bastará con agregar todas las tablas necesarias a su consulta y combinarlas según campos comunes. Después, podrá buscar la información necesaria en los registros de todas las tablas. En sus consultas puede usar cualquier combinación de tablas de base de datos, tablas libres y vistas locales o remotas. Cuando agregue tablas o vistas a su consulta, Visual FoxPro le sugerirá una posible combinación entre las tablas o las vistas según los nombres de campos coincidentes.

OPCIONES DEL COMBINACION

Lista de campos izquierda

DE

DIÁLOGO

CONDICION

DE

Lista de campos derecha Muestra los campos de la tabla que ha agregado. Seleccione un campo de la lista por el que quiere combinar las tablas. Lista de campos izquierda Muestra los campos de todas las tablas que se han agregado previamente al Diseñador de consultas. Seleccione en la lista un campo por el que quiera combinar las tablas. Tipo de combinación Interna Crea una combinación que sólo muestra los registros de la Lisa de campos izquierda que coincidan con los registros de la Lista de campos derecha para los campos seleccionados. Izquierda Crea una combinación que incluye los registros de la Lista de campos izquierda y los registros coincidentes de la Lista de campos derecha para los campos seleccionados. Derecha Crea una combinación que incluye los registros de la Lista de campos derecha y los registros de la Lista de campos izquierda coincidentes para los campos seleccionados. Completa Crea una combinación que incluye todos los registros de los dos cuadros de lista para los campos seleccionados en los cuadros de lista. Descripción Especifica cómo se relacionan entre sí los campos de cada tabla cuando selecciona las distintas opciones de combinación. CREAR UNA COMBINACIÓN ENTRE TABLAS 1. 2. 3.

Agregue dos o más tablas o vistas a una consulta. En la barra de herramientas Diseñador de consultas, elija el botón Agregar combinación. En el cuadro de diálogo Condición de combinación, seleccione los nombres de campo relacionados en las dos tablas. Nota Combine columnas sólo si tienen el mismo tamaño y el mismo tipo de datos.

4. Las combinaciones aparecen automáticamente cuando se agregan las tablas. Sin embargo, si los nombres de campos relacionados no coinciden, tendrá que crear sus propias combinaciones entre tablas. Puede crear combinaciones adicionales si arrastra entre los campos de tablas en el Diseñador de consultas o elige el botón Agregar combinación en la barra de herramientas Diseñador de consultas para mostrar el cuadro de diálogo Condición de combinación.

CUADRO

Seleccione un tipo de combinación:

Para obtener...

Use...

Sólo registros de ambas tablas que cumplan los criterios de combinación, el tipo más común de combinación

Combinación interna

Todos los registros de la tabla en el lado izquierdo de los criterios de combinación

Combinación izquierda

Lista de campos derecha

y sólo registros que cumplan los criterios de combinación de la tabla en el lado derecho de los criterios de combinación

5.

Todos los registros de la tabla en el lado derecho de los criterios de combinación y sólo registros que cumplan los criterios de combinación de la tabla en el lado izquierdo de los criterios de combinación

Combinación derecha

Todos los registros de ambas tablas, cumplan o no los criterios de combinación

Combinación completa

Elija Aceptar.

ELIMINAR UNA COMBINACIÓN



Las vistas son una característica de las bases de datos de Visual FoxPro. Solamente puede utilizarlas cuando esté abierta su base de datos primaria.

Seleccione la línea de combinación en el Diseñador de consultas y elija Quitar condición de combinación en el menú Consulta. –O– En la ficha Combinación, seleccione la condición de combinación y elija Quitar.

MODIFICAR UNA COMBINACIÓN

CREAR UNA VISTA CON UN ASISTENTE 1. 2. 3. 4.

En el Administrador de proyectos, seleccione una base de datos. Seleccione Vistas locales o Vistas remotas y elija Nuevo. Elija el botón Asistente para vistas. Siga las instrucciones que aparecerán en las pantallas del asistente. .

INICIAR EL DISEÑADOR DE VISTAS 6.

En la ficha Combinación, seleccione la combinación que desea modificar. Cambie las condiciones de combinación según sea necesario.

VISTAS

Para crear una vista de una tabla local, utilice el Diseñador de vistas. Las tablas locales pueden incluir tablas nativas de Visual FoxPro, cualquier tabla en formato .dbf y tablas almacenadas en servidores locales.

Una vista es una definición de tabla virtual personalizada que puede ser local, remota o parametrizada. Las vistas hacen referencia a una o más tablas, o a otras vistas. Pueden ser actualizables y pueden hacer referencia a tablas remotas.

Para usar el Diseñador de vistas, primero debe crear o abrir una base de datos. Cuando expanda el signo más que aparece junto al nombre de una base de datos en el Administrador de proyectos, la ficha Datos mostrará los componentes de la base de datos.

7.

La vistas se usan para extraer un conjunto de registros de una tabla, realizar cambios en dichos registros y enviar las actualizaciones a las tablas de origen. Las vistas se pueden crear a partir de tablas locales, de otras vistas, de tablas almacenadas en un servidor o de orígenes de datos remotos, como Microsoft® SQL Server, a través de ODBC. Puede incluso hacer que Visual FoxPro envíe actualizaciones a la tabla de origen cuando actualiza o cambia el conjunto de registros de la vista.

CREAR UN SISTEMA DE MENÚS La mayor parte del trabajo en la creación de un sistema de menús se realiza en el Diseñador de menús, en el que crea los menús, los submenús y las opciones de menú.

Veremos la creación de vistas sencillas, locales y remotas, de una sola tabla. CREAR VISTAS La creación de consultas y la creación de vistas son procesos similares. La principal diferencia radica en que las vistas pueden ser actualizables, mientras que las consultas no lo son. Utilice consultas cuando desee un conjunto de resultados de consulta de sólo lectura. Las consultas son instrucciones SQL-SELECT guardadas como texto en un archivo .qpr; utilice vistas cuando desee extraer un conjunto actualizable de datos de tablas locales o remotas.

Para crear menús, puede personalizar el sistema de menús de Visual FoxPro o bien desarrollar un sistema propio. CREAR UN SISTEMA DE MENÚS CON MENÚ RÁPIDO

Ejemplo: DO SDIMENU.MPR WITH THIS,.T. 1. 2. 3. 4.

En el Administrador de proyectos, seleccione la ficha Otros, seleccione Menús y haga clic en Nuevo. Elija Menú. Aparecerá el Diseñador de menús. En el menú Menú, elija Menú rápido

El Diseñador de menús contendrá ahora información sobre los menús principales de Visual FoxPro.

CREAR UN MENÚ CONTEXTUAL 1. 2.

En el Administrador de proyectos, seleccione la ficha Otros, seleccione Menús y haga clic en Nuevo. Elija Menú contextual. Aparecerá el Diseñador de menús contextuales.

Cuando está en el Diseñador de menús contextuales, el proceso para agregar elementos de menú es el mismo que para la creación de menús. ADJUNTAR MENÚS CONTEXTUALES A CONTROLES Puede adjuntar un menú contextual a un control específico si escribe una pequeña cantidad de código en el evento clic asociado al botón secundario del control. 5. Personalice el sistema agregando o modificando elementos de menú Antes de poder usar el menú en una aplicación debe generarlo.

1. 2. 3.

Seleccione el control al que desea adjuntar el menú contextual. En la ventana Propiedades, elija la ficha Métodos y seleccione RightClick Event. En la ventana de código, escriba DO menú.MPR, en donde menú es el nombre del menú contextual.

GENERAR UN MENÚ



Asegúrese de usar la extensión .mpr al hacer referencia a los menús contextuales.

En el menú Menú, elija Generar

Visual FoxPro le pedirá que guarde el sistema de menús en un archivo con la extensión .MNX. Este archivo es una tabla que almacena toda la información sobre el sistema de menús. Después de haber guardado el sistema de menús, Visual FoxPro le pedirá un archivo de salida con la extensión .MPR. Este archivo contendrá el programa de menú generado

ACTIVAR O DESACTIVAR UN MENÚ O ELEMENTO DE MENÚ 1. 2. 3.

En la columna Indicador, haga clic en el título o elemento de menú correspondiente. Elija el botón de la columna Opciones para mostrar el cuadro de diálogo Opciones de la acción. Haga clic en la casilla de verificación Saltar por.

CREAR MENÚS SDI Aparecerá el Generador de expresiones. Los menús SDI son menús que aparecen en ventanas de interfaz de un único documento (SDI). Para crear un menú SDI debe indicar que el menú se va a usar en un formulario SDI cuando está diseñando el menú. Aparte de esto, el proceso de creación de un menú SDI es el mismo que el de creación de un menú normal. UN MENÚ SDI (UNA APLICACIÓN QUE SÓLO ADMITE UN DOCUMENTO CADA VEZ)

• Mientras el Diseñador de menús está abierto, elija Opciones generales en el menú Ver y seleccione Formulario de nivel superior. INCLUIR UN SISTEMA DE MENÚS EN LA APLICACIÓN

• Agregue el archivo .MNX al proyecto y, a continuación, genere la aplicación desde el proyecto

4.

En el cuadro Saltar por, escriba la expresión que determinará si el menú está activado o desactivado.

ADJUNTAR MENÚS SDI A FORMULARIOS Cuando cree un menú SDI, puede adjuntarlo a un formulario SDI. Además, debe:

• •

Establecer la propiedad ShowWindow del formulario a 2 – Como formulario de nivel superior..

,

Agregar una instrucción DO al evento Init del formulario llame al menú.

Si la expresión da como resultado falso (.F.), el menú o elemento quedará activado. Si la expresión da como resultado verdadero (.T.), el menú o elemento se desactivará y no se podrá seleccionar o elegir. Una vez mostrado el sistema de menús, puede activar y desactivar los menús y sus elementos con el comando SET SKIP OF. MARCAR EL ESTADO DE UN ELEMENTO DE MENÚ

En un menú, una marca de verificación junto a un elemento indica que está activo.

• Escriba \< a la izquierda de la letra que desee que actúe como tecla de acceso.

En tiempo de ejecución puede colocar una marca de verificación junto a un elemento de menú mediante el comando SET MARK OF. ASIGNAR UN COMANDO A UN MENÚ O ELEMENTO DE MENÚ 1. En la columna Indicador, haga clic en el título o elemento de menú correspondiente. 2. En el cuadro Acción, elija Comando. 3. En el cuadro situado a la derecha del cuadro Acción, escriba el comando correspondiente: Por ejemplo para llamar un formulario utilice el comando siguiente: DO FORM nombredelformulario

INFORMES: Tienen dos componentes básicos: un origen de datos y un diseño. El origen de datos suele estar formado por tablas de la base de datos, una vista, una consulta o un cursor. Las vistas y consultas filtran, ordenan y agrupan datos de la base de datos y el diseño del informe define el formato impreso de los informes. Con el Diseñador de informes puede diseñar listas completas, resúmenes o subconjuntos especiales de datos, como por ejemplo una factura. El diseño de un informe tiene cuatro etapas principales: 1. 2. 3. 4.

Determinar el tipo de informe que va a crear. Crear el archivo que contenga el diseño del informe. Modificar y personalizar el archivo de diseño. Efectuar la vista preliminar e impresión del informe.

DETERMINAR EL TIPO DE INFORME QUE VA A CREAR. Los puntos en un elemento de menú indican que el usuario debe proporcionar más información.

Tipo diseño ESPECIFICAR UN MÉTODO ABREVIADO DE TECLADO PARA UN MENÚ O ELEMENTO DE MENÚ 1. 2. 3.

En la columna Indicador, haga clic en el título o elemento de menú correspondiente. Elija el botón de la columna Opciones para mostrar el cuadro de diálogo Opciones de la acción. En el cuadro Etiqueta de tecla, presione una combinación de teclas para crear un método abreviado de teclado.

Si un elemento de menú no tiene un método abreviado de teclado, Visual FoxPro mostrará "(presione la tecla)" en el cuadro Etiqueta de tecla. 4.

En el cuadro Texto de tecla, agregue el texto que desee que aparezca junto al elemento de menú.

De forma predeterminada, Visual FoxPro repite el método abreviado de teclado del cuadro Etiqueta de tecla en el cuadro Texto de tecla. Sin embargo, puede modificar el contenido de Texto de tecla. Por ejemplo, si tanto en Etiqueta de tecla y Texto de tecla aparece CTRL+R, puede cambiar el contenido de Texto de tecla por ^R. CTRL+J es un método abreviado de teclado no válido porque se usa para cerrar ciertos cuadros de diálogo en Visual FoxPro. ESPECIFICAR LA TECLA DE ACCESO DE UN MENÚ O ELEMENTO DE MENÚ

Descripción

Ejemplos

Columna

Un registro por fila con campos dispuestos horizontalmente a lo ancho de la página

Informe de grupos y totales1 Informes financieros Inventario Resumen de ventas

Fila

Una columna de registros con campos dispuestos verticalmente uno bajo el otro

Listas

a

Un registro o una relación uno a varios

Facturas Estado de cuentas

Multicolumna

Más de una columna de registros con campos dispuestos verticalmente hacia abajo en margen izquierdo

Listín telefónico Tarjetas de visita

Etiqueta

Mas de una columna de registros con campos dispuestos verticalmente hacia abajo en el margen izquierdo; impreso en papel especial

Etiquetas postales Etiquetas de nombres

Uno varios1

de

1 Diseños que tienen asociado un Asistente para informes

CREAR EL ARCHIVO QUE CONTENGA EL DISEÑO DEL INFORME. Puede crear el archivo que contenga el diseño del informe con el diseñador de informes. Visual FoxPro ofrece tres formas de comenzar el diseño de un informe:

• Crear informes sencillos de una o varias tablas con un Asistente para informes.

• Crear un informe sencillo desde una tabla con Informe rápido. • Modificar informes existentes o crear sus propios informes con el Diseñador de informes. Con cada uno de estos métodos creará un archivo de diseño de informe que puede modificar con el Diseñador de informes. El Asistente para informes es el método más fácil de iniciar un informe y ofrece automáticamente muchas de las características de personalización del Diseñador de informes. El Informe rápido es la forma más rápida de crear un diseño sencillo. Si crea un informe directamente con el Diseñador de informes, éste le presentará un diseño en blanco. USAR UN ASISTENTE PARA INFORMES 1. 2. 3. 4. 5.

En el Administrador de proyectos, seleccione Informes. Elija Nuevo. Elija Asistente para informes. Elija el tipo de informe que desea crear. Siga las instrucciones de las pantallas del asistente.

MODIFICAR UN INFORME GENERADO

1. 2.

En el Administrador de proyectos, seleccione un informe o una etiqueta. Elija Modificar.

Utilice las bandas del informe para determinar cómo desea que sea cada página, grupo y el comienzo y el fin de su informe. Las bandas del informe se pueden cambiar de tamaño. BANDAS DE INFORME EN EL DISEÑADOR DE INFORME

CREAR UN INFORME RÁPIDO 1. 2. 3. 4. 5.

En el Administrador de proyectos, seleccione Informes. Elija Nuevo. Elija Nuevo informe. En el menú Informe, elija Informe rápido. Seleccione la tabla que desea usar y, a continuación, elija Aceptar.

AGREGAR LAS BANDAS TÍTULO Y RESUMEN CREAR UN INFORME EN BLANCO (DISEÑADOR DE INFORMES) 1. 2. 3.

En el Administrador de proyectos, elija Informes. Elija Nuevo. Elija Nuevo informe.

MODIFICAR EL DISEÑO En las bandas del Diseñador de informes, puede insertar ciertos tipos de controles que contienen las etiquetas, campos, variables y expresiones que desea incluir en el informe impreso. Para mejorar la apariencia visual del informe y hacerlo más legible, puede agregar otros controles como líneas, rectángulos y rectángulos redondeados. Puede incluir también controles dependientes de una imagen u objeto OLE. Archivo de diseño del informe e informe resultante

La banda Título contiene información que se imprime una sola vez al principio del informe y la banda Resumen contiene información que se imprime una sola vez al final del informe. Tanto el título como el resumen pueden estar en su propia página. Campos con expresiones de totalización se convertirán en totales generales cuando se ubiquen en la banda Resumen.

AGREGAR UNA BANDA TÍTULO Y RESUMEN Use esta banda 1. 2. 3. 4.

En el menú Informe, elija Título y resumen. Elija las bandas que desee. Si quiere que la banda aparezca en su propia página, elija Nueva página. Elija Aceptar.

Puede situar cualquiera de los controles de informe en cualquiera de las bandas. También puede agregar funciones definidas por el usuario que se procesan durante la ejecución del informe.

TIPOS DE CONTROLES DE INFORME

Para imprimir

Use este comando

Título

Una vez informe

por

En el menú Informe, elija Título y resumen.

Encabezado de página

Una vez por página

Disponible de forma predeterminada.

Encabezado columna

Una vez columna

En el menú Archivo, elija Configurar página e introduzca un número de columna mayor que uno.

de

por

. Encabezado de grupo

Una vez por grupo

En el menú Informe, elija Agrupar datos.

Campo

Banda Detalle

Una vez registro

Disponible de forma predeterminada.

Texto

Etiqueta

Pie de grupo

Una vez por grupo

En el menú Informe, elija Agrupar datos.

Líneas rectas

Línea Pie de columna Rectángulo

Una vez columna

por

Cuadros y bordes

Elija Configurar página en el menú Archivo e introduzca un número de columna mayor que uno.

Pie de página

Una vez por página

Disponible de forma predeterminada.

Resumen

Una vez informe

En el menú Informe, elija Título y resumen.

Para mostrar Campos de expresiones

Elija este control tabla,

variables

Círculos, elipses, cuadros redondeados y bordes

con

Mapas de bits o campos generales

y

otras

bordes

por

Rectángulo redondeado Imagen/ActiveX dependiente

ESTABLECER EL ORIGEN DE DATOS DEL INFORME

por

Puede definir fácilmente el origen de los datos que rellenarán los controles de su informe en el entorno de datos del informe. También puede agregar tablas o vistas, así como ordenar los datos con un índice de tabla. EL ENTORNO DE DATOS ADMINISTRA LOS ORÍGENES DE LOS DATOS DE SUS INFORMES:

• • •

Abre las tablas o vistas cuando se abre o ejecuta el informe. Rellena el conjunto de datos que su informe necesita basándose en tablas y vistas asociadas. Cierra las tablas cuando se cierra o libera el informe.

ESTABLECER UN ÍNDICE PARA EL ENTORNO DE DATOS

1. 2. 3. 4. 5.

En el menú Ver, elija Entorno de datos. En el menú de método abreviado, elija Propiedades. En la ventana Propiedades, en el cuadro Objeto. elija Cursor1 Elija la ficha Datos y seleccione la propiedad Order. Escriba un nombre de índice. –O– Seleccione un índice en la lista de índices disponibles.

AGREGAR CONTROLES DE CAMPO Desde el entorno de datos arrastre y coloque los campos sobre el diseño.

AGREGAR CAMPOS HERRAMIENTAS

1. 2.

DE

TABLA

DESDE

LA

BARRA

DE

Desde la barra de herramientas Controles de informes, inserte un control Campo. En el cuadro de diálogo Expresión de informe, elija el botón con tres puntos que hay después del cuadro Expresión.

Debe alinear los controles por un lado que todos los controles seleccionados tengan disponible y alejado de los demás. Los controles que están en una fila y se seleccionan para alinearse por su lado derecho, o el izquierdo, se apilarán unos encima de otros. De igual modo, los controles que están en una línea vertical y seleccionados para alinearse con respecto a la parte superior, o inferior, se solaparán.

AGREGAR UN GRUPO

1.

3.

En el menú Informe, elija Agrupar datos.

En el cuadro Campos, haga doble clic en el nombre del campo deseado.

2.

En el primer cuadro Grupo, escriba la expresión de grupo. –O– Elija el botón con tres puntos para crear una expresión en el Generador de expresiones. 3. En el área Propiedades de grupo, seleccione las propiedades que desee. 4. Elija Aceptar. Después de agregar la expresión, puede colocar los controles que desee en las bandas. Normalmente, el control de campo utilizado para los agrupamientos se traslada desde la banda Detalle hasta la banda Encabezado de grupo HERRAMIENTAS INFORME

PARA

PERSONALIZAR

EL

DISEÑO

DEL

Los nombres de la tabla y del campo aparecerán en el cuadro Expresión para campo del informe. Si el cuadro Campos está vacío, agregue una tabla o vista al entorno de datos. No tiene que mantener el alias de nombre de la tabla en la expresión. Puede eliminarlo o puede desactivar las opciones del Generador de expresiones. 4. Elija Aceptar 5. En el cuadro de diálogo Expresión de informe, elija Aceptar.

UTILICE LA BARRA DE HERRAMIENTA DISEÑO PARA ALINEAR LOS CONTROLES

Puede cambiar el entorno de datos, la configuración de la página o los controles de informe. El entorno de datos define el origen de los datos a incluir en el informe, la configuración de la página define la apariencia general de la página y de las bandas del informe y los controles de informe definen los elementos que aparecerán en la página.

CUADRO DE DIÁLOGO CONFIGURAR PÁGINA

3.

En el cuadro de diálogo Formato, seleccione el tipo de dato para el campo: Carácter, Numérico o Fecha. El área Opciones de edición muestra las opciones de formato disponibles para ese tipo de datos. Este tipo de datos se aplica sólo al control de informe. En él se refleja el tipo de datos de la expresión y no cambia el tipo de datos del campo en la tabla. 4. Seleccione las opciones de alineación y formato que desee.

1. 2.

En el menú Archivo, elija Especificar impresora. En el cuadro Margen izquierdo, introduzca un valor para el margen. La imagen de la página cambiará para mostrar el nuevo margen. 3. Para seleccionar un tamaño de papel, elija Configurar página. 4. En el cuadro de diálogo Configurar página, seleccione un tamaño de página en la lista Tamaño. 5. Para seleccionar la orientación del papel, elija una orientación en el área Orientación y, a continuación, elija Aceptar. 6. En el cuadro de diálogo Configurar página, elija Aceptar. DEFINIR EL ENCABEZADO Y EL PIE DE PÁGINA Los controles ubicados en las bandas Encabezado o Pie de página aparecen una vez en cada página del informe. Un informe que tenga muchas páginas debería incluir el nombre del informe, el número de página, la fecha y las etiquetas (si es apropiado) en un encabezado o pie. DEFINIR LA BANDA DETALLE Típicamente, los controles situados en banda Detalle se imprimen una vez para cada registro. DAR FORMATO A LOS CONTROLES DE CAMPO Después de insertar un control de campo, puede cambiar el tipo de datos y el formato de impresión del control. Los tipos de datos pueden ser Carácter, Numérico, o Fecha. Cada uno de estos tipos tiene sus propias opciones de formato, incluyendo la opción de crear sus propias plantillas de formato. El formato determina cómo se muestra el campo cuando se imprime el informe. Normalmente, podría convertir todo el resultado alfabético a mayúsculas, insertar comas o puntos decimales en el resultado numérico, mostrar el resultado numérico en formato de moneda o convertir un formato de fecha a otro. DEFINIR FORMATOS DE CONTROL DE CAMPO Puede elegir entre diversas opciones de formato para cada tipo de datos.

OPCIONES DEL CUADRO DE DIÁLOGO Expresión Muestra la expresión, actualmente seleccionada como un campo de tabla o una variable de memoria, o le permite escribir uno nuevo. Elija el botón de diálogo para mostrar el cuadro de diálogo Generador de expresiones si desea crear una expresión y comprobarla antes de continuar. Formato Cuando una expresión válida se muestra en el cuadro Expresión, puede especificar un formato en este cuadro de texto. Elija el botón del cuadro de diálogo para mostrar el cuadro de diálogo Formato (Campo) si desea especificar el formato para el campo en su informe. Cálculos Muestra el cuadro de diálogo Calcular campo, en el que puede seleccionar una expresión para crear un campo calculado. Imprimir-Condiciones Muestra el cuadro de diálogo Imprimir - Condiciones en el que puede especificar las condiciones que se deben cumplir antes de que se imprima el texto en el informe o la etiqueta. Posición del campo Flotante Especifica que el campo seleccionado se mueva en relación al tamaño de los campos cercanos. Borde superior de la banda Hace que el campo permanezca en la posición que le ha asignado en el Diseñador de informes o el Diseñador de etiquetas, y lo mantiene en esa posición relativa al principio de la banda. Borde inferior de la banda Hace que el campo permanezca en la posición que le ha asignado en el Diseñador de informes o el Diseñador de etiquetas, y mantenga dicha posición relativa al borde inferior de la banda. Ajustar al contenido del texto Hace que el campo se expanda hacia abajo en la página del informe para mostrar todos los datos. Comentario Le permite agregar comentarios al archivo .frx o .lbx. Los comentarios son sólo referencias y no aparecen por ningún sitio en el informe o etiqueta impreso.

PARA DAR FORMATO A UN CONTROL DE CAMPO VISTA PRELIMINAR E IMPRESIÓN DE SU INFORME

1. 2.

Haga doble clic en el control Campo. En el cuadro de diálogo Expresión de informe, elija el botón con tres puntos que hay después del cuadro Formato.

Después de comenzar el diseño de su informe, puede ver una vista preliminar de su trabajo o bien imprimir un informe. Puede ver una vista preliminar en cualquier momento mientras personaliza el diseño. VISTA PRELIMINAR DE LOS RESULTADOS Si hace una vista preliminar de un informe podrá ver cómo queda en la página sin necesidad de imprimirlo antes.

La ventana Vista preliminar tiene su propia barra de herramientas, con botones que pueden llevarle de una página a otra del informe.

Volver al modo diseño Cuidado Si aparece la pregunta "¿Desea guardar los cambios en su archivo?", es que ha seleccionado no sólo cerrar la ventana Vista preliminar, sino también el archivo de diseño. Puede seleccionar el botón Cancelar para regresar a la vista preliminar o el botón Guardar para guardar sus cambios y cerrar el archivo. Si selecciona No, no se guardarán los cambios realizados en el diseño.

IMPRIMIR INFORMES El archivo de diseño de informe creado mediante el Diseñador de informes es un entorno que da formato a los datos en una agradable presentación para imprimir. Procesa los registros en el orden en que aparecen en el origen de datos. Si usa directamente los datos desde una tabla, los datos no se ordenarán para los grupos que puede haber en el diseño. Antes de imprimir un archivo de informe, deberá asegurarse de que el origen de datos se ordenará y que dicho orden es el apropiado. Si la tabla forma parte de una base de datos, cree una vista y agréguela al entorno de datos del informe. La vista ordenará los datos. Si el origen de datos es una tabla libre, puede crear y ejecutar una consulta que use el informe como su destino. PARA IMPRIMIR UN INFORME

1. 2.

En el menú Archivo, elija Imprimir. Elija Aceptar.

Si el entorno de datos no está establecido, el cuadro de diálogo Abrir aparecerá con una lista de tablas entre las cuales puede elegir.

MOVER LOS CONTROLES EN UNA OPERACIÓN DE ARRASTRAR Y COLOCAR Inserte una imagen en un formulario y establezca la propiedad de la imagen DragMode como 1-Arrastre Automático y la propiedad, también de la imagen DragIcon como un archivo de icono que se mostrará como puntero durante la operación de arrastrar y colocar. Establezca el evento DragDrop del formulario con el siguiente código LPARAMETERS oSource, nXCoord, nYCoord

oSource.Move(nXCoord, nYCoord)

Related Documents

Guia De Visual Foxpro
October 2019 23
Separata De Visual Foxpro
November 2019 19
Foxpro
November 2019 17