2. INTRODUCCIÓN AL
VISUAL FOX PRO
Saludos, bienvenido(a) a este nuevo e
interesante tema de programación basado
en Visual FoxPro, una herramienta
novedosa y muy potente. En este nivel
seguramente estarás interesado en
involucrarte de una manera mucho más
intensa en el mundo de la programación y
en el desarrollo de aplicaciones o
soluciones que permitan manejar
eficientemente la información, cualquiera
sea el entorno donde puedas involucrarte.
El mundo tecnológico avanza a una alta
velocidad, por lo tanto es muy importante
estar lo más actualizado posible, en este
aspecto estarás trabajando sobre un
lenguaje de programación muy actual y de
moda, se considera uno de los lenguajes
denominado de alto nivel, ya que ofrece
grandes facilidades para el desarrollo de
aplicaciones a través de asistentes que
generan códigos o instrucciones que de
otra manera serían de mayor complejidad
para su generación.
3. PROGRAMACIÓNVISUAL FOX PRO
IDEAS, LÓGICA, CREATIVIDAD Y
ENTUSIASMO
El desarrollo de un programa requiere
además de paciencia, mucha
creatividad, escuchar con atención
las ideas de los futuros
usuarios, organizar y enfrentar con
optimismo y entusiasmo las
diferentes tareas que te encontrarás
a lo largo del desarrollo.
4. DEFINICIONES PREVIAS
Ventajas de Visual FoxPro:
Visual FoxPro es una aplicación que permite gestionar y
manipular información organizada en una base de datos.
Puede elaborar consultas, informes, pantallas, menús y
proyectos sobre una o varias tablas.
Desarrolla aplicaciones en un ambiente orientado a
objetos con características cliente/servidor.
Que es un Lenguaje Visual:
Es una potente herramienta orientada a objetos para la
creación y administración de bases de datos y para el
desarrollo de aplicaciones profesionales. Ofrece todo lo
necesario para organizar la información en tablas, realizar
consultas, crear bases de datos relacionales, programar
aplicaciones, informes, y tros.
Programación Orientada a Objetos
La programación orientada a objetos es un entorno de
desarrollo de sistemas. Ayuda el diseñador a reducir
, reutilizar y reciclar código y objetos. Por eso la
programación orientada a objetos puede llevar a un
desarrollo más rápido y eficaz y a prototipos más precisos.
Clases :
Se denomina clase a la estructura de definición de un
objeto. La cual tiene propiedades , métodos y eventos.
Objetos :
Un Objeto es simplemente una clase basada en si
misma o una colección de clases que realizan una función
específica. Todos los objetos son creados a partir de una
clase. Los Objetos tienen los siguientes elementos :
Propiedades :
Son los Atributos que forman parte de un Objeto .
Ejemplo : Color , Tamaño , Nombre , etc.
Eventos :
Es cualquier suceso que implique un llamado a un objeto.
Métodos :
Son Procedimientos o programas vinculados a los
objetos y solicitados por los eventos asociados a los
Objetos.
Características de la Programación orientada a objetos:
- La programación orientada a objetos es un
entorno de desarrollo de sistemas.
- Puede llevar a un desarrollo más rápido y eficaz y
a prototipos más precisos.
- Desarrollo más rápido y menor probabilidad de
que se produzcan errores.
- Facilidad de modificar objetos.
- Objetos reutilizables: Una vez que se ha desarrollado y
depurado una clase, ésta puede añadirse a otras
aplicaciones sin necesidad de modificarla más.
- Se pueden combinar objetos para crear objetos
nuevos y dinámicos.
5. PROGRAMACIÓN
Entre los pasos básicos de la programación
cabe citar los siguientes:
• Definir el problema.
• Desglosar el problema en elementos
discretos o manejables.
• Construir los elementos.
• Comprobar y perfeccionar los
elementos.
• Ensamblar los elementos.
• Comprobar el programa en su
conjunto.
A continuación se enumeran algunos aspectos que
deberás tener presentes al empezar a
programar:
• Define claramente el problema antes de
intentar resolverlo. Si no lo haces, acabarás
por realizar numerosos cambios, desecharás
códigos, tendrás que empezar de nuevo o bien
terminarás con un resultado que no es
realmente lo que deseabas.
• Desglosa el problema en pasos manejables,
en lugar de intentar resolver todo el problema
de una sola vez.
• Prueba y depura secciones de código a
medida que desarrollas el programa.
Comprueba que el código hace lo que quieres
que haga. La depuración es el proceso de
encontrar y solucionar problemas que impiden
que el código se ejecute correctamente.
• Perfecciona los datos y el almacenamiento de
datos para facilitar la manipulación de estos
datos a través del código del programa. Esto
suele implicar estructurar las tablas de forma
adecuada.
6. TIPOS DE DATOS Y CAMPOS
Todos los datos de Visual
FoxPro tienen un tipo, como
una descripción de los valores
permitidos, y el intervalo y
tamaño de los valores. Cuando
hayas especificado el tipo de
datos que estás usando, Visual
FoxPro puede almacenar y
manipular los datos de forma
eficaz.
Las variables y las matrices
contienen un subconjunto de
los tipos de datos disponibles
de Visual FoxPro. Los tipos de
datos adicionales sólo están
disponibles para campos de la
tabla.
Para agregar un campo de un tipo
específico a una tabla mediante
programación, coloca el tipo de campo
con una letra.
Puedes especificar el tipo de datos
que se almacena en cada campo de
una tabla cuando creas la tabla. El tipo
de datos de una variable o un
elemento de matriz está determinado
por el valor almacenado en la variable
o elemento de matriz. La tabla
siguiente muestra los tipos de datos
de Visual FoxPro.
7. Tipo de datos Descripción Tamaño Intervalo
Character Cualquier texto 1 byte por carácter hasta
254
Cualquier carácter
Currency Cantidades monetarias 8 bytes -922337203685477,5807 a 922337203685477,5807
Date Datos cronológicos formados por mes, año y día 8 bytes Al usar formatos de fecha estrictos, {^0001-01-01}, 1
de enero, 1 d.C. a {^9999-12-31}, 31 de diciembre,
9999 d.C.
DateTime Datos cronológicos formados por mes, año, día y hora 8 bytes Al usar formatos de fecha estrictos, {^0001-01-01}, 1
de enero, 1 d.C. a {^9999-12-31}, 31 de diciembre,
9999 d.C., más 00:00:00 a.m. a 11:59:59 p.m.
Logical Valor booleano verdadero o falso 1 byte Verdadero (.T.) o Falso (.F.)
Numeric Enteros o fracciones 8 bytes en la memoria;1 a
20 bytes en una tabla -.9999999999E+19 a 999999999E+20
Variant Una variable de tipo Variant puedes contener cualquier tipo de datos de
Visual FoxPro y el valor Null. Una vez que se almacena un valor en una
variable del tipo Variant, ésta asume el tipo de los datos que contiene.
Las variables tipo Variant se designan con el prefijo e en la sintaxis del
lenguaje.
Definido por el
programador. Definido por el programador.
TIPOS DE DATOS Y CAMPOS
8. DATOS Y CAMPOS
Los datos y los campos son tan esenciales
en las aplicaciones, como en una biblioteca
es esencial la clasificación de los libros, por
autor, título, editorial y fecha.
DATOS Y CAMPOS
Además, Visual FoxPro proporciona tipos de datos que se aplican únicamente a campos de tablas.
Tipo de campo Descripción Tamaño Intervalo
Double Número de signo flotante de
precisión doble
8 bytes +/-4,94065645841247E-324 a
+/-8,9884656743115E307
Float Igual que Numeric 8 bytes en memoria;1 a 20 bytes
en una tabla
- .9999999999E+19 a
.9999999999E+20
General Referencia a un objeto OLE 4 bytes en una tabla Limitado por la memoria
disponible
Integer Valores enteros 4 bytes -2147483647 a 2147483647
Memo Referencia a un bloque de datos 4 bytes en una tabla Limitado por la memoria
disponible
Character
(Binario)
Datos de tipo Character que
quiere mantener sin modificación
en páginas de códigos
1 byte por carácter hasta 254 Cualquier carácter
Memo
(Binario)
Datos de campo Memo que
quiere mantener sin modificación
en páginas de códigos
4 bytes en una tabla Limitado por la memoria
disponible
Tipos de campos de Visual FoxPro
9. OPERADORES PARA EL TIPO NUMÉRICO
La siguiente tabla muestra los operadores para el tipo Numeric en orden de preferencia.
Operador Acción Ejemplo de Código
( ) Agrupación de valores (4-3) * (12/nVar2)
**, ^ Exponenciación, potencia ? 3 ** 2
? 3 ^ 2
*, / Multiplicación y división ? 2 * 7
? 14 / 7
% Módulo (resto) ? 15 % 4
+, - Suma y resta ? 4 + 15
Operadores para caracteres
La siguiente tabla muestra los operadores de expresión de caracteres en orden de preferencia.
Operador Acción Ejemplo de Código
+ Concatenación. Combina dos
cadenas, una cadena y un campo, o
una cadena y una variable.
? „Buenos „ + „días‟
- Concatenación. Quita los espacios
finales del elemento anterior al
operador y luego combina dos
elementos.
? customer.first - customer.last
$ Comparación. Busca una expresión
de caracteres dentro de otra.
? „padre‟ $ „padres‟
? „Principal‟ $ customer.address
10. Operadores para el tipo Logical
Estos operadores devuelven un valor lógico. La siguiente tabla muestra los operadores para el tipo
Logical en orden de preferencia.
Operador Acción Ejemplo de Código
( ) Grupos de expresiones cVar AND (cVar2 AND cVAR3)
NOT, ! Lógico negativo IF NOT cVarA = cVarB
IF ! nVar1 = nVar2
AND AND lógico lVar0 AND lVar9
OR OR lógico inclusivo lVarX OR lVarY
Operadores relacionales
Los operadores relacionales funcionan con todos los tipos de datos y devuelven un valor Lógico.
La siguiente tabla muestra los operadores relacionales.
Operador Acción Ejemplo de Código
< Menor que ? 23 < 54
> Mayor que ? 1 > 2
= Igual que ? cVar1 = cVar
<>, #, != Distinto de ? .T. <> .F.
<= Menor o igual que ? {^1998/02/16} <= {^1998/02/16}
>= Mayor o igual que ? 32 >= nEdad
== Comparación de cadenas de caracteres ? status == “Abrir”
11. APLICACIONES
Una aplicación de Visual FoxPro
normalmente está estructurada por
una base de datos, un programa
principal que configura todo el
sistema, una interfaz de usuario
compuesta por formularios, barras de
herramientas y menús, las consultas
y los informes o reportes que genera
el sistema.
Diseño de la aplicación
Es necesario antes de comenzar a
involucrarse con FoxPro, realizar un
diseño apropiado de la aplicación.
Para el éxito de este diseño es vital
incorporar a los usuarios, recabando
completamente la información
requerida. Es preferible pensar desde
el inicio que tu aplicación será usada
por múltiples usuarios y que deberá
soportar una importante cantidad de
datos.
Revisa con frecuencia las actividades
comunes que la aplicación debe facilitar
a los usuarios, ya que debes pensar en
el rendimiento de tu aplicación al
manejar gran cantidad de datos. Una
aplicación se diseña con la idea de
facilitar las tareas o actividades de los
usuarios en el manejo de la información.
El proceso de crear aplicaciones es
repetitivo, probablemente definirás
prototipos y refinarás algunos
componentes varias veces hasta obtener
el producto final; las expectativas de los
usuarios también pueden cambiar o
pueden generarse a lo largo de la
creación requerimientos novedosos que
harán interminable tu aplicación si no
defines correctamente el alcance de la
misma. Además ya adquiriste un gran
compromiso con el proceso de
depuración, pruebas y rediseño.
12. ADMINISTRADOR DE PROYECTOS
Un proyecto es un conjunto de formularios, menús, informes, vistas, base de datos que forman
parte del sistema que estás desarrollando, este conjunto de objetos se guardan como un archivo
con extensión “pjx”
La siguiente figura muestra la ventana principal o entorno de desarrollo de Visual FoxPro:
13. Administrador de Proyectos
La ventana de comandos sirve para manipular comandos de forma interactiva, para efectuar tareas de
revisión o mantenimiento, representa una gran ventaja ya que permite hacer más fluida las tareas de
revisión o mantenimiento. Si no se encuentra visible se puede activar con las teclas “Control + F2”.
Como la ventana Comandos es una ventana de edición, puedes modificar comandos con las
herramientas disponibles en Visual FoxPro. Puedes modificar, insertar, eliminar, cortar, copiar o pegar
texto en la ventana Comandos.
La ventaja de escribir código en la ventana Comandos radica en el hecho de que las instrucciones se
ejecutan de inmediato. No es necesario guardar un archivo y ejecutarlo como un programa.
Además, las opciones que eliges en los menús y los cuadros de diálogo aparecen en la ventana
Comandos como comandos. Puedes copiar y pegar estos comandos en un programa de Visual FoxPro
y a continuación ejecutar el programa repetidamente, lo cual facilita la ejecución de miles de comandos,
una y otra vez
14. La siguiente figura muestra el administrador de proyectos:
El Administrador de proyectos permite compilar la aplicación completa. En la fase de
programación de la aplicación, el Administrador de proyectos facilita el diseño, la
modificación y la ejecución de los componentes individuales de su aplicación.
Con el Administrador de proyectos, podrás:
• Modificar y ejecutar partes de tu aplicación (formularios, menús, programas) con tan sólo
algunos clics.
• Arrastrar clases, tablas y campos desde el Administrador de proyectos hasta el Diseñador
de formularios o el Diseñador de clases.
• Arrastrar clases entre bibliotecas de clases.
• Ver y modificar fácilmente sus tablas y bases de datos.
• Agregar descripciones para los componentes de la aplicación.
• Arrastrar y colocar elementos entre proyectos.
Administrador de Proyectos
15. BASE DE DATOS
Conjunto o contenedores de tablas que guardan gran cantidad
de información de una manera ordenada. Su acceso y
consulta se realiza de una forma rápida y práctica.
Crear una base de datos con el Asistente para bases de datos
1. En el Administrador de proyectos, selecciona la opción Datos y, a continuación, selecciona
Bases de datos.
2. Selecciona Nuevo.
3. Selecciona el botón Asistente para bases de datos.
4. Sigue las instrucciones que aparecen en la pantalla del asistente.
También puedes tener acceso al asistente para bases de datos desde el menú si eliges Nuevo en el
menú Archivo, selecciona Base de datos y, a continuación, selecciona la opción Asistente para bases
de datos.
El asistente proporciona plantillas para tablas y vistas, índices, claves principales y relaciones que
puedes elegir o modificar.
16. Crear una nueva base de datos
1. En el Administrador de proyectos, selecciona Bases de datos.
2. Selecciona Nuevo.
Luego deberás colocar un nombre a la base de datos cuando aparezca
la siguiente ventana.
17. PROGRAMACIÓN
EN VISUAL FOXPRO
Crear programas
Un programa de Visual FoxPro es un archivo de texto
que contiene una serie de comandos. Los comandos
se pueden utilizar en un programa o en la ventana de
comandos. Puedes crear un programa en Visual
FoxPro de la siguiente manera:
• En el Administrador de proyectos, selecciona Programas
en la opción Código.
• Selecciona Nuevo.
O también
• En el menú Archivo, selecciona Nuevo.
• En el cuadro de diálogo Nuevo, selecciona Programa.
• Selecciona Nuevo archivo.
Otra forma podría ser
• En la ventana Comandos, Escribe: MODIFY COMMAND.
Visual FoxPro abrirá una nueva ventana denominada
Programa1. Podrás entonces escribir tu programa en
esta ventana.
Una vez creado un programa, asegúrate de guardarlo de la
siguiente manera:
• En el menú Archivo, selecciona Guardar.
Si intentas cerrar un programa sin antes guardarlo,
aparecerá un cuadro de diálogo que te preguntará si
deseas guardar o descartar los cambios realizados en
el mismo.
Si guardas un programa creado a partir del
Administrador de proyectos, el programa se agregará al
proyecto.
Si intentas guardar un programa al que todavía no has
asignado un nombre, se abrirá el cuadro de diálogo
Guardar como, en el que podrás especificar el
nombre del programa.
Después de guardar el programa, podrás ejecutarlo o
modificarlo. En primer lugar, abre el programa de la
siguiente manera:
Si el programa forma parte de un proyecto, selecciónalo
en el Administrador de proyectos y señala
Modificar.
O bien
En el menú Archivo, selecciona Abrir. Aparecerá un
cuadro de diálogo que muestra una lista de los
archivos disponibles. En la lista Archivos de
tipo, selecciona Programa. En la lista de
archivos, indica el programa que deseas modificar
y selecciona Abrir.
También lo puedes hacer
En la ventana Comandos, Escribe el nombre del
programa que deseas modificar:
MODIFY COMMAND miprograma
O bien
En la ventana Comandos, Escribe:
MODIFY COMMAND ?
Cuando aparezca la lista de archivos, selecciona el
programa que deseas modificar y a continuación
selecciona Abrir.
18. PROGRAMACIÓN
Después de abrir el programa, podrás realizar cambios
en el mismo. Cuando hayas terminado de introducir los
cambios, asegúrate de guardar el programa.
Luego de crear un programa, podrás ejecutarlo.
Si el programa forma parte de un proyecto, Selecciónalo
en el Administrador de proyectos y señala Ejecutar.
O bien, en el menú Programa, selecciona Ejecutar.
Cuando aparezca la lista de programas, selecciona el
programa que desea ejecutar y a continuación
selecciona Ejecutar.
También en la ventana Comandos, Escribe DO y el
nombre del programa que desea ejecutar.
Conceptos básicos de programación
Cuando programamos, se almacenan y manipulan datos
mediante una serie de instrucciones. Los datos y los
contenedores en los que se almacenan los datos
constituyen la materia prima de la programación. Las
herramientas utilizadas para manipular esta materia
prima son comandos, funciones y operadores.
Los datos con los que trabajas probablemente incluyen
períodos de tiempo, dinero y elementos contables, así
como fechas, nombres, descripciones. Cada dato
corresponde a un determinado tipo, es decir, pertenece
a una categoría de datos que se manipula de manera
similar. Visual FoxPro aporta numerosos contenedores
de almacenamiento con el fin de ampliar su capacidad
para manipular fácilmente los datos.
Los tipos de datos determinan la manera en que se
almacenan los datos y la forma en que se pueden utilizar
tales datos. Por ejemplo puedes multiplicar dos
números, pero no puedes multiplicar caracteres.
Puedes imprimir caracteres en mayúsculas, pero no
puedes imprimir números en mayúsculas.
Los contenedores de datos te permiten realizar las
mismas operaciones con varios datos. Por ejemplo,
sumar las horas que ha trabajado un empleado,
multiplicarlas por el salario por hora y restar los
impuestos para determinar el sueldo que ha percibido
el empleado. Deberás realizar estas operaciones
para cada empleado y para cada período de pago. Si
almacenas esta información en contenedores y
realizas las operaciones sobre éstos, bastará con
sustituir los datos antiguos por los nuevos datos y
volver a ejecutar el mismo programa. Los
contenedores que maneja Visual FoxPro son los
registros, matrices y variables.
Los operadores se utilizan para vincular los datos,
clasificados en numéricos, lógicos, de carácter y
relacionales.
Comandos de Visual FoxPro
Un comando hace que se realice una determinada
acción. Cada comando dispone de una sintaxis
específica que indica lo que debes incluir con el fin
que se ejecute correctamente el comando. Hay
también cláusulas opcionales asociadas a los
comandos que permiten especificar de forma más
detallada la acción que se deseas realizar.
Por ejemplo, el comando USE permite abrir y cerrar
tablas:
19. Sintaxis de USE Descripción
USE
(sin indicar un nombre de tabla)
Cierra la tabla que aparece en el área de trabajo actual.
USE Clientes Abre la tabla Clientes en el área de trabajo actual y cierra cualquier
tabla que ya esté abierta en el área de trabajo.
USE Clientes IN 0 Abre la tabla Clientes en la siguiente área de trabajo disponible.
USE Clientes IN 0 ;
ALIAS miCliente
Abre la tabla Clientes en la siguiente área de trabajo disponible y
asigna al área de trabajo el alias miCliente.
Comando Descripción
DELETE Selecciona registros especificados de una tabla para su eliminación.
REPLACE Sustituye el valor almacenado en el campo del registro por un nuevo valor.
GO Coloca el apuntador de registro en una posición específica de la tabla, ejemplo:
GO 20
GO TOP Ir al primer registro de la tabla.
GO BOTTOM Ir al último registro de la tabla.
SET DEFAULT TO Ruta Cambiar de directorio de trabajo, ejemplo:
SET DEFAULT TO C: SistemasClientes
CLEAR Limpiar la pantalla
DIR Mostrar los archivos del directorio, ejemplo:
DIR C: SistemasClientes
SET DATE TO Cambiar el formato de fecha.
QUIT Salir de Visual FoxPro
CANCEL Cancelar la ejecución de un programa
OPEN DATABASE Abrir base de datos, ejemplo OPEN DATABASE Ventas
CLOSE DATABASE Cerrar base de datos
CLOSE TABLES Cerrar todas las tablas
APPEND BLANK Agregar un registro en blanco
DELETE Eliminar registros, ejemplo:
DELETE ALL, borrar todos.
RECALL Recuperar registros marcados como borrados, ejemplo:
RECALL ALL, recuperar todos.
PACK Eliminar registros marcados como borrados.
ZAP Eliminar todos los registros sin poder recuperarlos.
SKIP Brincar o saltar registros.
SELECT Cambiar de área de trabajo, ejemplo:
SELECT Clientes
SELECT
USE
Abrir una o varias tablas, ejemplo:
SELECT A
USE Clientes
SELECT B
USE Ventas
SET ORDER TO Establecer el índice de trabajo.
A continuación se muestran algunos comandos utilizados
20. INSTRUCCIONES DE CONTROL
Bucles
Un bucle te permite ejecutar una o más
líneas de código tantas veces como sea
necesario. En Visual FoxPro hay tres
comandos que permiten realizar bucles:
SCAN ... ENDSCAN
FOR ... ENDFOR
DO WHILE ... ENDDO
SCAN
Utiliza SCAN cuando realizas una serie de
acciones para cada uno de los registros de
una tabla. El bucle SCAN permite escribir
el código una vez y ejecutarlo para cada
registro a medida que el puntero de
registro se desplaza por la tabla.
Ejemplo:
SCAN FOR UPPER(Ciudad) = „CARACAS‟
? Contacto, Compañía, Ciudad
ENDSCAN FOR
Utiliza FOR cuando sepas cuántas veces
debes ejecutar la sección de código.
Ejemplo:
FOR Contador = 1 TO 10
Instrucciones a procesar
NEXT Contador
ENDFOR
DO WHILE
Utiliza DO WHILE cuando desees ejecutar una
sección de código mientras cumpla una
determinada condición. Tal vez no sepas
cuántas veces debe ejecutarse el
código, pero sí sabes cuándo debe
detenerse la ejecución. Por
ejemplo, supongamos que dispones de
una tabla en la que figuran los nombres y
las iniciales de una serie de personas y
deseas utilizar las iniciales para consultar
los nombres de las personas. Surgiría un
problema la primera vez que intentes
agregar una persona cuyas iniciales fuesen
las mismas que las de otras
21. INSTRUCCIONES DE CONTROL
personas contenida en la tabla.
Para resolver este problema,
podrías agregar un número a las
iniciales. Por ejemplo, el código
de identificación de Miguel
Suárez podría ser MS. La
siguiente persona cuyas iniciales
fuesen las mismas, Margarita
Sánchez, sería MS1. Si a
continuación agregas María
Sanz a la tabla, su código de
identificación sería MS2. Un
bucle DO WHILE Te permite
localizar el número correcto que
debes adjuntar a las iniciales.
En el ejemplo siguiente se
calcula el número total de
productos en existencias cuyo
precio supera los 2000 Bolívares
en el bucle DO
WHILE hasta llegar al final del
archivo (EOF). Se sale del bucle
DO WHILE y se muestra el total.
DO WHILE .T. && Comienza el
bucle.
IF EOF( )
EXIT
ENDIF
IF precio_unidad < 2000
SKIP
LOOP
ENDIF
StockTot = StockTot +
en_existencias
SKIP
ENDDO && Termina el bucle.
22. ACTIVIDADES:
1. Crea una instrucción
de control de la
ventana de comandos,
donde sume un valor
hasta 5 veces.
23. DECISIONES / CONDICIONALES
Tenemos dos instrucciones
verdaderamente importantes al
momento de ejecutar una condición, la
instrucción IF y la instrucción DO CASE.
DECISIONES / CONDICIONALES
Recordando la célebre canción de
Rubén Blades, “Decisiones”, las
instrucciones condicionales sirven para
tomar “Decisiones” sobre una o varias
preguntas, y determinarán una acción
en el programa.
24. PROGRAMACIÓN
IF
Ejecuta condicionalmente un
conjunto de comandos
dependiendo del resultado de
una expresión lógica.
Ejemplo:
IF Edad < 18 THEN
WAIT WINDOW “Alumno menor de
edad”
ELSE
WAIT WINDOW “Alumno mayor de
edad”
ENDIF
DO CASE
Pregunta por varios posibles
valores para una variable o
campo, sustituye el uso continuo
de IF THEN.
Ejemplo:
DO CASE
CASE Edad<12
WAIT WINDOW “Alumno menor de
edad”
CASE Edad>12 .and. Edad<18
WAIT WINDOW “Alumno
adolescente”
CASE Edad>18
WAIT WINDOW “Alumno adulto”
ENDCASE
25. ACTIVIDADES
1. Crea una instrucción
condicional en la ventana
de comandos, donde
compare dos valores e
indique el valor mayor.
2. A modo de lecturas
complementarias; lee
temas relacionados con
lógica de programación y
el uso de condiciones y
controles.
26. COMPILAR
ES SIMILAR A REUNIR O AGRUPAR TODAS LAS IDEAS DE UN GRUPO SOBRE UN TEMA Y
ESTABLECER UN CRITERIO ÚNICO DE TRABAJO PARA EL DESARROLLO DEL MISMO.
Una aplicación típica de base de
datos consta de estructuras de
datos, una interfaz de usuario,
opciones de consulta y funciones
de generación de informes. Una
aplicación ensamblada de Visual
FoxPro suele presentar al usuario
un menú y uno o más formularios
para introducir o mostrar datos.
Para ofrecer determinada
funcionalidad, mantener la
integridad y la seguridad de los
datos se le agrega código a
determinados eventos. Las
consultas y los informes permiten
que los usuarios extraigan
información de la base de datos.
Todos los componentes que has realizado de
alguna u otra manera están vinculados, por lo
tanto tendrás que establecer un punto inicial
para la aplicación con un archivo principal. El
archivo principal sirve como punto de partida
para la ejecución de tu aplicación y puede
constar de un programa o formulario. Cuando
los usuarios ejecuten la aplicación, Visual
FoxPro inicia el archivo principal de la
aplicación que, a su vez, ejecuta todos los
demás componentes a medida que se vayan
necesitando. Todas las aplicaciones deben
tener un archivo principal. La mejor elección
suele ser crear un programa principal en la
aplicación. Sin embargo, puedes combinar las
funciones del programa principal y la interfaz
inicial de usuario si usas un formulario como
programa principal.
Si utilizas un Asistente para crear la aplicación,
puedes permitir que el asistente cree un
programa de archivo principal de forma
automática. No es necesario que especifiques
un archivo principal a menos que desees
cambiarlo una vez finalizadas las acciones del
asistente.
27. COMPILAR
Para establecer un archivo principal dentro de
una aplicación, en el administrador de
proyectos haz lo siguiente:
1. Selecciona Todos.
2. Selecciona Código.
3. Selecciona Programas.
4. Presiona el botón Nuevo.
5. Guarda el archivo con el nombre Principal.
6. Presiona el botón derecho del ratón sobre el
archivo y activa la opción “Establecer
Principal”.
Cuando hayas creado un archivo principal,
utilízalo para configurar el entorno de tu
aplicación. Puede que el entorno de
desarrollo predeterminado de Visual
FoxPro no sea el entorno más adecuado
para la aplicación. El entorno
predeterminado establece determinados
valores para los comandos SET y las
variables de sistema en el momento de
abrir Visual FoxPro.
Siempre es conveniente guardar los
valores iniciales del entorno y configurar un
entorno específico para la aplicación en un
programa propio.
28. COMPILAR
Puedes capturar los comandos del entorno actual y
llevarlos a la ventana de comandos realizando lo
siguiente:
• En el menú selecciona Herramientas
• Selecciona Opciones
• Presiona la tecla Mayúscula (Shift) y presiona Aceptar
• Luego podrás copiar y pegar la información a otro
programa.
Podrás ver los comandos SET de
configuración, algunos se activan o no colocándole
al lado ON / OFF, ejemplo:
SET TALK ON
SET NOTIFY ON
SET CLOCK OFF
SET COMPATIBLE OFF
SET PALETTE ON
SET BELL ON
SET BELL TO „‟, 1
SET SAFETY ON
SET ESCAPE ON
SET LOGERRORS ON
SET KEYCOMP TO WINDOWS
SET CARRY OFF
SET CONFIRM OFF
Es útil guardar los valores predeterminados en
variables públicas, en una clase personalizada
o como propiedades de un objeto Application
para que puedas restaurar estos valores al
salir de la aplicación
En un entorno específico de la aplicación o dentro
del archivo Principal, podrías incluir código
para:
• Inicializar variables.
• Establecer una ruta predeterminada. Por ejemplo
si los archivos que se van a utilizar se
encuentran en el directorio
C:programastransmisióndatos, escribiremos
el comando SET de la siguiente forma: SET
DEFAULT TO C:programastransmisióndatos.
• Abrir las bases de datos, las tablas libres y los
índices necesarios. Si la aplicación requiere
acceso a datos remotos, también se puede
solicitar al usuario la información de inicio de
sesión necesaria en la rutina de inicialización.
29. COMPILAR
• Hacer referencia a archivos
externos de biblioteca y
procedimientos.
• La interfaz inicial de usuario
puede ser un menú, un
formulario o cualquier otro
componente de usuario.
Normalmente una aplicación
mostrará una pantalla de inicio
de sesión o un cuadro de diálogo
de inicio antes de mostrar el
menú o formulario inicial.
• Para iniciar la interfaz de usuario
en el programa principal puedes
usar un comando DO para
ejecutar un menú o un comando
DO FORM para ejecutar un
formulario.
• Cuando el entorno esté
configurado y se muestre la
interfaz de usuario inicial, podrás
establecer un bucle de eventos
para esperar la interacción del
usuario.
• Para controlar el bucle de
eventos.
• Ejecuta un comando READ
EVENTS, que hace que Visual
FoxPro comience a procesar los
eventos de usuario, como los
clics del ratón y las pulsaciones
de teclas.
30. COMPILAR
Es importante situar correctamente el
comando READ EVENTS en el archivo
principal, porque todo el proceso de
este archivo se suspende desde el
momento en que se ejecuta el comando
READ EVENTS hasta que se ejecuta un
comando CLEAR EVENTS. Por
ejemplo, podrías ejecutar un comando
READ EVENTS como el último
comando de un procedimiento de
inicialización, que se ejecutaría después
de inicializar el entorno y mostrar la
interfaz de usuario. Si no incluyes el
comando READ EVENTS, la aplicación
volverá al sistema operativo después de
la ejecución.
Una vez iniciado el bucle de eventos, la
aplicación está bajo el control del último
elemento mostrado de la interfaz de
usuario.
También debes proporcionar una forma
de terminar el bucle de eventos
ejecutando un comando CLEAR
EVENTS.
31. COMPILAR
Normalmente el comando CLEAR EVENTS se ejecuta desde un menú o botón de un
formulario.
El comando CLEAR EVENTS suspende el proceso del evento en Visual FoxPro y
devuelve el control al programa que ejecutó el comando READ EVENTS e inició el
bucle de eventos.
Por ejemplo, tu programa principal podría ser similar al siguiente:
Código Comentarios
DO CENTORNO.PRG Llama al programa para configurar el entorno (almacena los
valores en variables públicas)
DO MENUPRINCIPAL.MPR Muestra la interfaz inicial de usuario
READ EVENTS Establece el bucle de eventos. Un programa diferente al
MENUPRINCIPAL.mpr debe ejecutar el comando CLEAR
EVENTS
DO RECUPERAENTORNO.PRG Llama al programa que restaura el entorno antes de salir. En
este programa debes incluir todas las variables iniciales de
entorno que copiaste previamente
32. GENERAR ARCHIVO EJECUTABLE DE LA APLICACIÓN
• En el Administrador de proyectos, elige Generar.
• Elige la opción para Generar ejecutable para generar un archivo .exe.
• Marca la casilla Volver a compilar todos los archivos.
• Haz clic en el botón Aceptar.
33. GENERAR ARCHIVO EJECUTABLE DE LA APLICACIÓN
En la opción Guardar como, Deberás escribir el nombre del archivo
ejecutable y presionar el botón Guardar
Ahora FoxPro empezará a mostrar el proceso de compilación de la aplicación.
Cuando encuentre errores responderá con mensajes de error. Haz clic en el botón
Ignorar de este cuadro y FoxPro continuará con el proceso de compilación. Si
existieron errores durante el proceso de compilación, FoxPro generará un archivo con
el mismo nombre de la aplicación y la extensión .ERR.
Una vez terminado el proceso, puedes verificar en el disco duro que el programa
ejecutable con el nombre que definiste, existe con la extensión .EXE. Este archivo
puede ser ejecutado en la memoria de tu computador.
34. CREAR DISCOS DE DISTRIBUCIÓN
Una vez definido el archivo ejecutable, el siguiente paso es crear los discos de instalación o distribución. Los pasos
para hacerlo son los siguientes:
Crea una carpeta en el directorio raíz del disco duro y denomínala con el mismo nombre de tu aplicación pero con
extensión .EXE. Por ejemplo, para la aplicación guía Proy1, la nueva carpeta se llamará Proy1.EXE. Esta carpeta se
utilizará para mantener una copia de la aplicación sin el código fuente.
Si se generan los discos de instalación con todo el código fuente en la misma carpeta de generación, se incluirían
automáticamente todos los archivos en los discos de instalación. Recuerda que debemos proteger el código fuente y
no permitir que otras personas manipulen el código fuente de nuestra aplicación. Si otra persona toma nuestro
código fuente, puede generar una nueva versión de nuestro proyecto y distribuirlo a su vez con otro nombre de
producto.
• Copia el programa ejecutable a la nueva carpeta (Proy1.EXE)
• Ahora copia la carpeta de iconos si los hay. Para que FoxPro guarde en los discos de instalación las imágenes
utilizadas en la aplicación.
• Crea una nueva carpeta en el directorio raíz del disco duro y denomínala con el mismo nombre de la aplicación pero
con extensión .DSK. Esta carpeta será utilizada durante el proceso de creación de los discos de instalación para
guardar los archivos resultantes.
Ahora ya estás listo para ejecutar el proceso de creación de los discos de instalación.
Haz clic en el menú Herramientas, y selecciona Instalación del submenú.