71
Curso de Microsoft Visual FoxPro For Windows Indice del Curso: Capitulo I Capitulo II Capitulo III Capitulo IV Capitulo V

Curso De Microsoft Visual Fox Pro For Windows

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Curso De Microsoft Visual Fox Pro  For Windows

Curso de Microsoft Visual FoxPro For Windows

Indice del Curso:

Capitulo I

Capitulo II

Capitulo III

Capitulo IV

Capitulo V

Page 2: Curso De Microsoft Visual Fox Pro  For Windows

o CAPITULO I 

1.-Entorno de Visual Fox Pro 9.0

En Visual Fox pro se puede crear rápidamente formas, menú  e informes con los patrones visuales y herramientas de diseño. Adopta la apariencia de los últimos productos Microsoft: barras de estado, botones con pista, menú contextual, etc.

Visual Fox Pro 9.0 cada acción que tu realizas es un evento:  El movimiento del mouse, hacer clic sobre un botón, escribir un texto en un cuadro de texto, Etc. Es decir que cuando programes ese evento solo eso sucederá.

Es un lenguaje de programación que opera bajo la plataforma de Windows, es decir, el programa  identificara  las acciones  que lleva a cabo el usuario durante su ejecución.

 

 

 

 

 

Herramientas de  Visual Fox Pro

 

1

Page 3: Curso De Microsoft Visual Fox Pro  For Windows

 

 

 

Barra de Menú

Por medio de esta barra podemos acceso  todas las opciones de Visual Fox Pro, nos ofrece abrir o crear una base de  dato,  crear un reporte, etc.

Barra de Herramientas.

Por medio de esta barra de herramientas tenemos acceso a las opciones de Visual Fox Pro sin necesidad de ir a la barra de menú y tener un acceso rápido.

La Venta de Comando

2

Page 4: Curso De Microsoft Visual Fox Pro  For Windows

La ventana de comando nos sirve para escribir ciertos comandos que explicaremos después.

La ventana de Controles.

La ventana de controles permite al usuario seleccionar opciones, introducir  datos y escoger acciones. En un formulario, estos objetos pueden incluir casillas de verificación, botones de comando y cuadro de texto.

 

Botón         Descripción

 

Seleccionar objetos. Cambia el tamaño y mueve controles. Una vez creado un control, el botón "Seleccionar objetos" se volverá a seleccionar automáticamente, a menos que esté presionado el botón "Bloqueo del botón".

 

Ver clases. Permite seleccionar y mostrar una biblioteca de clases registrada. Después de seleccionar una clase, la barra de herramientas sólo muestra botones para las clases de la biblioteca seleccionada.

 

3

Page 5: Curso De Microsoft Visual Fox Pro  For Windows

Etiqueta. Crea un control Label, que se usa para texto que no quiere que el usuario cambie, como el título que aparece encima de las casillas de verificación o debajo de un gráfico.

 

Cuadro de texto. Crea un control TextBox, que se usa para almacenar una única línea de texto que el usuario puede introducir o cambiar.

 

Cuadro de edición. Crea un control EditBox, que se usa para almacenar varias líneas de texto que el usuario puede introducir o cambiar.

Botón de comando. Crea un control CommandButton, que se usa para ejecutar un comando.

 

Grupo de comandos. Crea un control CommandGroup, que se usa para agrupar comandos relacionados.

 

Grupo de opciones. Crea un control OptionGroup, que se usa para mostrar múltiples opciones entre las que el usuario sólo puede seleccionar una.

 

Casilla de verificación. Crea un control CheckBox, que ofrece al usuario la posibilidad de elegir entre una condición verdadera o falsa, o muestra varias opciones entre las que el usuario puede seleccionar más de una.

 

Cuadro combinado. Crea un control ComboBox, que se usa para crear un cuadro combinado desplegable o una lista

4

Page 6: Curso De Microsoft Visual Fox Pro  For Windows

desplegable de forma que el usuario pueda seleccionar un elemento de una lista o introducir manualmente un valor.

 

Cuadro de lista. Crea un control ListBox, que se usa para mostrar una lista de elementos entre los que puede elegir el usuario. Es posible recorrer la lista si tiene más elementos de los que se pueden mostrar de una vez.

 

Control numérico. Crea un control Spinner, que se usa para aceptar datos numéricos introducidos por el usuario que quedan dentro de un intervalo.

 

Cuadrícula. Crea un control Grid, que se usa para mostrar datos en una cuadrícula tipo hoja de cálculo.

 

Imagen. Muestra una imagen gráfica en su formulario.

 

 

Cronómetro. Intercepta eventos Timer a intervalos establecidos. Este control es invisible en tiempo de ejecución.

 

Marco de página. Muestra varias páginas de controles.

5

Page 7: Curso De Microsoft Visual Fox Pro  For Windows

 

 

Control contenedor OLE. Le permite agregar objetos OLE a su aplicación.

 

Control OLE dependiente. Al igual que los controles contenedores OLE, le permite agregar objetos OLE a su aplicación. Sin embargo, a diferencia de los controles contenedores OLE, los controles OLE dependientes están vinculados a un campo de tipo General.

 

Línea. Se usa para dibujar diversos estilos de línea en su formulario en tiempo de diseño.

 

Forma. Se usa para dibujar diversas formas en su formulario en tiempo de diseño. Puede dibujar un rectángulo, un rectángulo redondeado, un cuadrado, un cuadrado redondeado, un óvalo o un círculo.

 

Separador. Agrega espacio entre los controles de la barra de herramientas.

 

Bloqueo del generador. Abre un generador para el nuevo control que agrega al formulario.

 

Bloqueo del botón. Le permite agregar varios controles del mismo tipo sin tener que hacer clic en el botón del control en la barra de herramientas más de una vez.

6

Page 8: Curso De Microsoft Visual Fox Pro  For Windows

 

 

 

Propiedades

Son los atributos que se aplican sobre los controles.

Ejemplo:

Color, tipo de letra, nombre, texto, etc.

ALGUNAS PROPIEDADES COMUNES:

Name (Nombre): Especifica el nombre que se le asigne al control, u solo a través de él se puede acceder a las propiedades y métodos de los controles.

Back Color (Color de Fondo): Asigna el color de fondo sobre el que aparece el texto o se dibujan los gráficos.

7

Page 9: Curso De Microsoft Visual Fox Pro  For Windows

Fore Color (Color de Primer Plano): Asigna un color al primer plano (color de la tinta o del texto).

Font (Fuente o Tipo de Letra): Asigna el tipo de letra, los atributos y el tamaño de la fuente que se usa para un control de texto (el texto en un control TextBox, el título de una etiqueta o de un botón de comando, etc.).

Caption (Título): Asigna el texto que aparece en muchos controles y que el usuario no puede introducir, por ejemplo el texto de un control Label, el título de un botón de comando, o de una cadena de caracteres que se muestran en un cuadro de activación o en un botón de opción.

Text (Texto): Asigna el texto que se muestra en los controles y acepta que lo introduzca el usuario, por ejemplo, el control TextBox.

Width (Ancho) y Height (Alto): Estas propiedades determinan las dimensiones de los controles.

Left (Izquierda) Top (Arriba): Estas propiedades asignan las coordenadas de la esquina superior izquierda del control y se expresan en las unidades del contenedor (normalmente de un formulario).

Enabled (Activado): Su valor es True por omisión, y significa que el control se puede usar. Si se pone False se desactiva el control, aparece en gris y no se puede usar.

Visible: Esta propiedad se pone como False para que el control sea invisible.

 

Pasos para cambiar  valores a propiedades  en tiempo de diseño:

1.- Presionar  clic sobre el botón deseado.

2.-Abrir la ventana de propiedades.

8

Page 10: Curso De Microsoft Visual Fox Pro  For Windows

3.-Buscar la propiedad  de manera alfabética o otras categoría.

Evento

Es una acción que el usuario  efectúa sobre un objeto o control y este a su vez realizara  una  tarea determinada, el programador  deberá  analizar los evento que se pueden llevar a cabo sobre un control determinado.

Un evento genera una tarea  si no existe una tarea, por aquel evento, no pasara nada.

Ejemplo

Clic 

DbllicK

Keypress

Activate

Mousemove

Entre otros

 

Controles de Formulario

Cuadro de texto.- También denominado control de campo de edición, muestra la información introducida  en tiempo de diseño por el usuario o asignada al control  en código en tiempo de

ejecución.

 

Propiedades

9

Page 11: Curso De Microsoft Visual Fox Pro  For Windows

Alignment.-  Devuelve  o establece la alineación de un control checkbox u optionbutton, o el texto de control.

BorderStyle.- devuelve o establece  el estilo del borde del objeto.

Name.-Devuelve el nombre usado en el código para identificar un objeto.

PasswordChar.- Devuelve o establece un valor que determina si se muestra en un control los caracteres  escritos  por un usuario o los caracteres marcadores.

Text.- Devuelve o estable el texto contenido en el control.

Las propiedades  más comunes

Backcolor.- Devuelve o establece  el color de fondo usado para mostrar texto gráficos en un objeto.

FontName.- Devuelve un objeto de Font.

Forecolor.- Devuelve o establece  el color de primer plano usado para mostrar texto y gráficos en un objeto.

Eventos

MouseMove.- Al mover el ratón por encima del control.

MouseDown.- Al pulsar cualquier botón del ratón.

Change.- Al cambiar  el contenido del control.

Click.- Al hacer click  con el botón izquierdo del ratón  sobre el control.

DblClick.- Al hacer  doble click  con el botón izquierdo.

GotFocus.-  Este evento se activa cuando el control recibe el enfoque, es decir, cuando se activa el control en tiempo de ejecución  para introducir datos en el o  realizar alguna operación.

10

Page 12: Curso De Microsoft Visual Fox Pro  For Windows

LostFocus.- Este control es lo contrario del evento anterior, se activa  cuando el control pierde el enfoque, es decir, se pasa a otro control  para seguir introduciendo datos.

 

ETIQUETA

Es un control de graficos  utilizado para mostrar texto que el usuario  no podrá cambiar directamente.

Propiedades

Alignment.-  Devuelve  o establece la alineación de un control checkbox u optionbutton, o el texto de control.

BorderStyle.- devuelve o establece  el estilo del borde del objeto.

Caption.- Devuelve o estable el texto mostrado en la barra de titulo de un objeto o bajo el icono de un objeto.

Recuerda:

Para este control no se suele utilizar eventos ya que su contenido  cambia poco a  lo largo de la ejecución  de la aplicación.

 

Botón de Comando

Denomina botón de comando, permite comenzar, interrumpir o terminar un proceso cuando esta activado.

                          

CASILLA DE VERIFICACION.

11

Page 13: Curso De Microsoft Visual Fox Pro  For Windows

Muestra un visto  cuando esta activado y desaparece cuando el control Checkbox se desactiva.

Utilice  este control  para ofrecer  al usuario una opción  de tipo Verdadero o Falso o Si o No.

También lo puede utilizar  en grupos para mostrar múltiples opciones.

Boton de opciones.

Muestra una opción  que se puede  activar o desactivar, generalmente  viene en grupos.

Propiedades  de los controles.

STR() convierte de número a carácter y VAL() convierte de

carácter a numérico.

THISFORM (Referencia de objeto)

Proporciona una referencia al formulario actual en el código de evento o en la definición de clase del formulario.

 

 

Aplicación Nº 1

12

Page 14: Curso De Microsoft Visual Fox Pro  For Windows

Codifique un programa que ingrese dos valores, y sacarle el IVA

y el resultado  total.

 

 

 

 

Procedimiento Calcular

13

Page 15: Curso De Microsoft Visual Fox Pro  For Windows

Procedimiento limpiar

Procedimiento Salir

 

14

Page 16: Curso De Microsoft Visual Fox Pro  For Windows

CAPITULO II

 

ESTRUCTURA DE CONTROL

Ejecuta condicionalmente un grupo de instrucciones, dependiendo

el valor de una expresión

Se clasifican:

SENTENCIAS DE CONTROL DE FLUJO:

 

If…Then…EndIf:

La estructura If comprueba una condición especifica y, si es verdadera, ejecuta las sentencias que le siguen. La estructura If  puede tener o una sola línea, o varias líneas. Para ejecutar una sentencia condicional se usa la sintaxis de una sola línea:

 

If condición Then sentencia

Se evalúa la condición y, si es verdadera, ejecuta la sentencia que viene a continuación. Si la condición no es verdadera, continua con la sentencia siguiente de la estructura.

 

La sintaxis de varias líneas:

If condición Then

15

Page 17: Curso De Microsoft Visual Fox Pro  For Windows

sentencias

EndIf

 

If…Then…Else…EndIf:

Una variación de la sentencia If …Then es la sentencia If…Then…Else … EndIf, que ejecuta un bloque de sentencias si la condición es verdadera, y otro bloque si es falsa. La sintaxis de la sentencia If … Then … Else    EndIf es:

If condición Then

         Bloque de sentencias 1

Else

Bloque se sentencias 2

EndIf

Visual FoxPro evalúa la condición y, si es verdadera, ejecuta el primer bloque de sentencias y luego salta a las sentencias que hay después de EndIf. Si la condición es falsa, Visual FoxPro ignora el primer bloque de sentencias y ejecuta las que hay a continuación de la palabra clave Else.

Otra variación de la sentencia If … Then … Else usa varias condiciones con la palabra clave ElseIf:

If condición 1 Then

         Bloque de sentencias 1

16

Page 18: Curso De Microsoft Visual Fox Pro  For Windows

Else If condición 2 Then

Bloque se sentencias 2

Else If condición 3 Then

Bloque se sentencias 3

Else

Bloque se sentencias 4

End If

 

Podemos poner cualquier número de cláusulas desde arriba y, si una de ellas es verdadera, se ejecuta el bloque de sentencias correspondiente. La cláusula Else se ejecutará si ninguna de las expresiones anteriores es verdadera.

Ejemplo:

If puntuación < 50 Then

Resultado = “No admitido”

Else If puntuación < 75 Then

Resultado = “Pasable”

Else If puntuación > 90 Then

Resultado = “Muy bueno”

Else

Resultado = “Excelente”

EndIf

 

ESTRUCTURAS IF … THEN MÚLTIPLES:

17

Page 19: Curso De Microsoft Visual Fox Pro  For Windows

Observamos que una vez que se ha encontrado una condición verdadera, Visual FoxPro ejecuta las sentencias asociadas, salta el resto de las cláusulas y continua con la ejecución del programa con las sentencias que hay después de EndIf. Por esta razón podemos usar la siguiente estructura, más complicada, de varias sentencias If simples:

If puntuación < 50 Then

         Resultado= “No admitido”

EndIf

If puntuación < 75 And puntuación >= 50 Then

         Resultado= “Pasable”

EndIf

If puntuación < 90 And puntuación >= 75 Then

         Resultado= “Muy bueno”

EndIf

If puntuación > 90 Then

         Resultado= “Excelente”

EndIf

 

DO CASE:

La estructura Do Case compara la misma expresión con diferentes valores. La ventaja de esta sentencia sobre If … Then múltiples hace que el código sea más fácil de leer y mantener.

La estructura Do Case comprueba una sola expresión, que se evalúa una sola vez al principio de la estructura. El resultado de esta comprobación se compara con varios valores y, si coincide

18

Page 20: Curso De Microsoft Visual Fox Pro  For Windows

con uno de ellos, se ejecuta el bloque de sentencias correspondiente. Sintaxis:

Do Case

         Case <Condición 1>

                   Bloque de sentencias 1

         Case <Condición 2>

                   Bloque de sentencias 2

                   .

                   .

                   .

EndCase

 

Ejemplo:

Opc=this.value

Do Case

         Case opc=1

                   NombreDía= “Lunes”

         Mensaje= “Feliz semana”

         Case opc=6

         NombreDía= “Sábado”

         Mensaje= “Feliz fin de semana”

         Case opc=7

         NombreDía= “Domingo”

19

Page 21: Curso De Microsoft Visual Fox Pro  For Windows

         Mensaje= “ ¿Has tenido un buen fin de semana”

EndCase

La variable opc que se evalúa al principio de la sentencia, es el número de día de la semana. Después se compara el valor de la expresión con los valores que tiene cada palabra clave Case. Si coincide, se ejecuta el bloque de sentencias que viene a continuación, y después salta el programa a la sentencia siguiente al EndCase.

 

 

SENTENCIAS DE CONTROL DE BUCLE:

 

DO WHILE… ENDDO:

Ejecuta un bloque de sentencias mientras la condición sea verdadera. Visual FoxPro evalúa la expresión y, si la expresión es falsa, el programa continúa con las sentencias que van después del bucle.

Para ejecutar un bloque sentencias mientras la condición sea verdadera, se usa la siguiente sintaxis:

Do While condición

         Bloque de sentencias

Enddo

 

El bucle Do se repite todas las veces que sea necesario siempre que la condición sea verdadera (o distinta de cero si la condición evalúa un número).

20

Page 22: Curso De Microsoft Visual Fox Pro  For Windows

 

FOR … ENDFOR/NEXT: El bucle For … Next es una de las estructuras de bucle más antiguas dentro de los lenguajes de programación. A diferencia del bucle Do, el bucle For … Next requiere que se conozca el número de veces que se van a ejecutar las sentencias del bucle. Este bucle es una variable (llamada el contador del bucle) que incrementa o disminuye su valor durante cada repetición del bucle. Su sintaxis es:

For contador = principio To final [Step incremento]

         Sentencias

Next/EndFor [contador]

 

(las palabras entre corchetes son opcionales). Los argumentos contador, principio, final e incremento son todos numéricos. El bucle se ejecuta hasta que el contador llegue (o exceda) el valor final.

 

Cuando ejecuta un bucle For … Next, Visual FoxPro hace lo siguiente:

1.    Pone contador con el valor de principio.2.    Comprueba si contador es mayor que final. Si lo es, sale del

bucle. Si incremento es negativo, Visual FoxPro comprueba si contador es menor que final, en cuyo caso sale de bucle.

3.    Ejecuta el bloque de sentencias.4.    Incrementa contador con el valor de incremento. Si no se ha

especificado incremento, el contador se incrementa en 1.5.    Repite las sentencias.

 

La parte más importante a tener en cuenta cuando se trabaja con bucle For Next/EndFor es que el contador del bucle se establece

21

Page 23: Curso De Microsoft Visual Fox Pro  For Windows

al principio del bucle. Si cambiamos el valor de la variable final mediante una sentencia dentro del bucle, no se detecta el cambio y se ejecuta como si no se hubiera producido.

 

WITH ... ENDWITH: Especifica múltiples propiedades para un objeto.

Sintaxis

WITH NombreObjeto

    [Instrucciones]

ENDWITH

NombreObjeto: Especifica el nombre del objeto. NombreObjeto puede ser el nombre del objeto o una referencia a éste. Ejemplo With Thisform

 

 

Instrucciones: Instrucciones puede constar de cualquier número de comandos de Visual FoxPro empleados para especificar propiedades para NombreObjeto. Sitúe un punto delante de Instrucción para indicar que es una propiedad de NombreObjeto.

Propiedad o palabra clave  

Referencia

ActiveControl     El control del formulario activo actualmente que tiene el enfoque

ActiveForm         El formulario activo actualmente

22

Page 24: Curso De Microsoft Visual Fox Pro  For Windows

ActivePage         La página activa del formulario activo actualmente

Parent        El contenedor más inmediato del 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 el objeto

 

THISFORM: Proporciona una referencia a un Form antes de crearlo.

Sintaxis:

THISFORM.NombrePropiedad | NombreObjeto

 

Argumentos:

NombrePropiedad: Especifica una propiedad para el Form.

NombreObjeto: Especifica un objeto del Form.

 

Comentarios: THISFORM proporciona, dentro de un método, una referencia al Form en el que está situado un objeto o a la propiedad de un Form. THISFORM permite hacer referencia a un objeto o una propiedad del formulario sin utilizar múltiples propiedades Parent.

 

THIS: Proporciona una referencia a un objeto antes de crearlo.

Sintaxis:

23

Page 25: Curso De Microsoft Visual Fox Pro  For Windows

THIS.NombrePropiedad | NombreObjeto

 

Argumentos:

NombrePropiedad: Especifica una propiedad para la clase.

NombreObjeto: Especifica un objeto de la clase.

 

Comentarios: THIS permite hacer referencia a una propiedad o un objeto de una definición de clase. Los métodos de un bloque de definición de clase pueden utilizar THIS para especificar una propiedad o un objeto que existirá cuando se cree la clase.

Puesto que múltiples instancias de objetos comparten el mismo código de método, THIS siempre hace referencia a la instancia en la que está ejecutándose el código. Si hay múltiples instancias de un objeto, y se llama a uno de los métodos del objeto, THIS hace referencia al objeto correcto.

 

THISFORMSET: Proporciona una referencia a un FormSet antes de crearlo.

Sintaxis:

THISFORMSET.NombrePropiedad | NombreObjeto

 

Argumentos:

NombrePropiedad: Especifica una propiedad para el FormSet.

NombreObjeto: Especifica un objeto del FormSet.

 

24

Page 26: Curso De Microsoft Visual Fox Pro  For Windows

Comentarios: THISFORMSET proporciona, dentro de un método, una referencia al FormSet en el que está situado un objeto o a la propiedad de un FormSet. THISFORMSET permite hacer referencia a un objeto o una propiedad del FormSet sin utilizar múltiples propiedades Parent.

 

RELEASE: Permite que los usuarios cierren el formulario activo haciendo doble clic en el cuadro de control o eligiendo Cerrar en el menú Control del formulario. También puede permitir que un usuario cierre y libere un formulario incluyendo el comando siguiente en el código de evento Click de un control, como un botón de comando con el título "Salir":

RELEASE THISFORM

 

CREATE: Nos permite crear formularios, tablas, base de datos, menús, informes, etc. Ejemplo: Create Form “C:\Mis documentos\René\ejemplo1.scx”.

DO FORM: Ejecuta un Form o FormSet compilado que se ha creado con el Generador de formularios.

MODIFY FORM: Abre el Generador de formularios para que pueda modificar o crear uno.

USE: Abre o cierra una Tabla. Ejemplo: Use Articulo.Dbf (Abre la tabla Articulo.dbf). Use Cierra una tabla en uso.

GO TOP: Ubica el puntero de registro en el primer registro.

GO BOTTOM: Ubica el puntero de registro en el último registro.

SKIP: Avanza o retrocede el puntero de registro. Skip +1 (Avanza). Skip –1 (Retrocede).

APPEND: Adiciona o añade más registro a una tabla abierta.

25

Page 27: Curso De Microsoft Visual Fox Pro  For Windows

LIST: Realiza un listado de todos los registros de una tabla abierta.

BROWSE: Abre la ventana examinar para modificar el contenido de todos los registro de una tabla abierta.

REPORT FORM: Muestra o imprime un informe bajo el control de un archivo de definición de informe creado con MODIFY REPORT o CREATE REPORT.

 

 

Mensaje  del Sistema.

MenssageBox().- despliega un mensaje en un cuadro de dialogo y

espera  que el usuario selecciona un botón.

Sintaxis:

Variable= MessageBox (mensaje,tipo,titulo)

Mensaje: es una expresión de cadena que se despliega como el

mensaje en un cuadro de dialogo.

Tipo: Expresión numérica  que es la suma de valores que

especifican la cantidad  y el tipo de botones para desplegar.

 

DO WHILE – ENDDO

Repite un bloque de instrucciones cuando una condición es true o

hasta que una condición se convierta en true

26

Page 28: Curso De Microsoft Visual Fox Pro  For Windows

 

Sintaxis

 

Do while condición

Sentencia

Loop

Enddo

 

Aplicación Nº 2

Este ejercicio consiste en elaborar un formulario que simule el funcionamiento de un reloj despertador digital. La aplicación debe permitir al usuario ingresar la hora a la que desea ser avisado. El diseño de la interfaz debe ser similar a la figura siguiente:

Para el desarrollo de esta aplicación proceder a ubicar los siguientes controles en el formulario:

2 etiquetas

2 cajas de texto

27

Page 29: Curso De Microsoft Visual Fox Pro  For Windows

1 cronómetro

2 botones de comandos

En seguida establezca las propiedades según se indica a continuación:

Form1

  Name FrmReloj

  Caption Reloj despertador digital

  MaxButton .F.-Falso

  MinButton .F.-Falso

Label1

  Name LblHora

  Caption Hora

Label2

  Name LblDespertador

  Caption Despertador

Text1

  Name TxtHora

  FontBold .T.-Verdadero

  FontSize 24

Text2

  Name TxtDespertador

  FontBold .T.-Verdadero

  FontSize 24

Timer1

  Name Timer1

  Enabled .T.-Verdadero

28

Page 30: Curso De Microsoft Visual Fox Pro  For Windows

  Interval 500

Command1

  Name CmdOnOff

  Caption \<Desactivar

  Default .T.-Verdadero

Command2

  Name CmdTerminar

  Cancel .T.-Verdadero

  Caption \<Terminar

Una vez establecidas las propiedades, proceda a ingresar el código que se muestra:

Objeto: FrmReloj Procedimiento: Load

Public lOnOff

Objeto: FrmReloj Procedimiento: Init

lOnOff = .F.

Thisform.TxtDespertador.Value = "00:00:00"

Thisform.Refresh

Objeto: Timer1 Procedimiento: Timer

If Thisform.TxtHora.Value != Time() Then

Thisform.TxtHora.Value = Time()

EndIf

If (Thisform.TxtDespertador.Value < Time()) And lOnOff Then

* Sonido acústico

?Chr(7)

EndIf

29

Page 31: Curso De Microsoft Visual Fox Pro  For Windows

Thisform.Refresh

Objeto: CmdOnOff Procedimiento: Click

If lOnOff Then

lOnOff = .F.

Thisform.CmdOnOff.Caption = "\<Activar"

Else

lOnOff = .T.

Thisform.CmdOnOff.Caption = "\<Desactivar"

EndIf

Thisform.Refresh

Objeto: CmdTerminar Procedimiento: Click

Release Thisform

30

Page 32: Curso De Microsoft Visual Fox Pro  For Windows

CAPITULO III

 

QUE ES UNA BASE DE DATOS

 Una Base de Datos es un conjunto de datos organizado de forma tal, que se presenta al usuario como si fuera una o un conjunto de matrices bidimensionales (tablas).

      Cada fila de una matriz es un registro, el cual contiene información sobre una unidad de la base de datos y le asigna un número para poder manejarlo.

      Cada columna contiene los diversos campos de ese registro. Por ejemplo : en una tabla de publicaciones, cada fila contendrá información sobre una publicación determinado, y la fila estará dividida en campos (columnas), como el código de publicación, nombre de la publicación, fecha, tiraje, responsable, etc...

Para abrir una base de datos haz click en archivo, nuevo selecciona base de datos (Database), y aparecerá la ventana de Generador de base de datos. En este tu construirás las tablas visualmente, creas etiquetas de índice, establece relaciones entre tablas y proporciona otros componentes que ayudan en el proceso de diseño de una aplicación. En el Generador de bases de datos haz clic en cualquier lugar de la ventana, se desplegará un menú contextual que contiene las opciones siguientes:

-Expandir (Expand)

- Contraer todos (Collapse all)

- Nueva tabla (New table)

- Nueva vista remota (* New remote view )

- Nueva vista local (*New local view)

31

Page 33: Curso De Microsoft Visual Fox Pro  For Windows

- Agregar tabla (Add table)

- Procedimientos almacenados (Stored procedures)

- Integridad referencial (integrity referential)

- Ayuda

Tablas

 

 

Tipos de datos

 Visual Fox Pro puede manejar diversos tipos de campos (tal como muestra la figura) . Entre los más importantes están:

Carácter : Campo de caracteres : Almacena cadenas o conjuntos de caracteres. Un campo de caracteres permite almacenar tanto letras, como números o caracteres especiales.

Monetario: Campo de Valores Monetarios: Almacena cantidades en valor monetario, Ejemplo: $55, S/.675,438.

Numérico: Campo numéricos : Almacenan cantidades y se puede hacer cálculos con ellos. Estos campos sólo admiten número y el punto decimal (la coma decimal si tiene formato español). Máxima extensión, 20 caracteres.

Flotante : Campo de números reales : Almacenan números en el rango del conjunto de números reales.

Fecha : Campo fecha : Permite almacenar fechas. La información la guarda en la forma AAAAMMDD, con 8 caracteres. El formato por defecto para introducir fechas en Visual Fox Pro es MM/DD/AA (Mes/Día/Año).

32

Page 34: Curso De Microsoft Visual Fox Pro  For Windows

Lógico : Campo lógico : Almacenan un tipo especial de información, sólo permiten almacenar verdadero o falso y acepta sólo los caracteres : T (verdadero) o F (falso).

Memo : Campo Memo : Permite almacenar textos largos, como una descripción o un breve resumen.

Estructura de un .BDF

Los  datos  en  FoxPro   se  almacenan  en   forma  de   tablas,  estas tablas son las bases de datos pues la extensión de estas bases de datos   es   .DBF   aunque   también   hay   otras   que   se   verá   más adelante. Los DBF comienzan con una breve descripción   de los datos que están en la tabla.

 

 

RELACIONES ENTRE TABLAS:

Las relaciones mas comunes entre tablas se definen: 

De uno a uno: Ejemplo de una llave primaria a otra llave primaria 

De uno a muchos: Ejemplo de una llave primaria a una Regular o Foránea. 

Las relaciones entre tablas se crean arrastrando la llave de la tabla a la llave de otra tabla. 

 

 

 

Aplicación Nº 3

 

33

Page 35: Curso De Microsoft Visual Fox Pro  For Windows

En este ejercicio vamos a crear un formulario para calcular la edad de una persona a partir de su fecha de nacimiento.

 

Para el desarrollo de esta aplicación, proceda a ubicar los siguientes controles en el formulario:

2 etiquetas

2 cajas de texto

3 botones de comando

Luego, proceda a establecer las propiedades según se indica a continuación:

Form1

  Name FrmEdad

  Caption  

  MaxButton .F.-Falso

  MinButton .F.-Falso

Label1

  Name LblFecNac

  Caption Fecha de nacimiento:

Label2

  Name LblEdad

  Caption Su edad es:

Text1

34

Page 36: Curso De Microsoft Visual Fox Pro  For Windows

  Name TxtFecNac

  Enabled .T.-Verdadero

Text2

  Name TxtEdad

  Enabled .F.-Falso

Command1

  Name CmdAceptar

  Caption \<Aceptar

Command2

  Name CmdLimpiar

  Caption \<Limpiar

Command3

  Name CmdSalir

  Caption \<Salir

Luego de establecidas las propiedades de los controles, proceda a ingresar el siguiente código:

Objeto: FrmEdad Procedimiento: Load

Set Date French

Set Century On

Objeto: FrmEdad Procedimiento: Init

cNomDia = Cdow(Date())

cDia = Str(Day(Date()), 2)

cMes = Cmonth(Date())

cAnno = Str(Year(Date()), 4)

35

Page 37: Curso De Microsoft Visual Fox Pro  For Windows

cFecha = cNomDia + " " + cDia + " de " + cMes + " del " + cAnno

Thisform.Caption = cFecha

Thisform.TxtFecNac.Setfocus

Thisform.Refresh

Objeto: CmdAceptar Procedimiento: Click

dFecNac = Ctod(Thisform.TxtFecNac.Value)

nEdad = Int ((Date() - dFecNac) / 365)

Thisform.TxtEdad.Value = Str(nEdad) + " años"

Thisform.Refresh

Objeto: CmdLimpiar Procedimiento: Click

Thisform.TxtFecNac.Value = ""

Thisform.TxtEdad.Value = ""

Thisform.TxtFecNac.Setfocus

Thisform.Refresh

Objeto: CmdSalir Procedimiento: Click

Release Thisform

 

Aplicación Nº 3.1

Este ejercicio consiste en elaborar una aplicación que acepte fechas como tres números (dd, mm, aaaa) y las visualice del modo usual. A manera de ejemplo considere lo siguiente:

36

Page 38: Curso De Microsoft Visual Fox Pro  For Windows

 

Cuando el usuario haga click en el botón Salir o en el botón Cerrar de la barra de título del formulario, se debe confirmar si desea terminar la aplicación, tal como se observa en la figura siguiente:

 

En caso de que el usuario elija la opción Si, la aplicación debe terminar. Caso contrario, es decir si el usuario elige la opción No, se debe proseguir con la aplicación.

Para el desarrollo de esta aplicación, proceda a ubicar los siguientes controles en el formulario:

4 etiquetas

3 controles numéricos

1 caja de texto

3 botones de comando

En seguida proceda a establecer las propiedades según se indica:

Form1

  Name FrmFecha

37

Page 39: Curso De Microsoft Visual Fox Pro  For Windows

  Caption Fecha en letras

  MaxButton .F.-Falso

  MinButton .F.-Falso

Label1

  Name LblDia

  AutoSize .T.-Verdadero

  Caption Día:

Label2

  Name LblMes

  AutoSize .T.-Verdadero

  Caption Mes:

Label3

  Name LblAnno

  AutoSize .T.-Verdadero

  Caption Año:

Label4

  Name LblEnLetras

  AutoSize .T.-Verdadero

  Caption En letras:

Spinner1

  Name SpnDia

  SpinnerHighValue 31

  SpinnerLowValue 1

Spinner2

  Name SpnMes

38

Page 40: Curso De Microsoft Visual Fox Pro  For Windows

  SpinnerHighValue 12

  SpinnerLowValue 1

Spinner3

  Name SpnAnno

  SpinnerHighValue 9999

  SpinnerLowValue 0

Text1

  Name TxtEnLetras

  Alignment 2-Centro

Command1

  Name CmdAceptar

  Caption \<Aceptar

  Default .T.-Verdadero

Command2

  Name CmdLimpiar

  Caption \<Limpiar

Command3

  Name CmdSalir

  Cancel .T.-Verdadero

  Caption \<Salir

Una vez establecidas las propiedades proceda a ingresar el código que se indica a continuación:

Objeto: FrmFecha Procedimiento: Load

Set Date French

Set Century On

39

Page 41: Curso De Microsoft Visual Fox Pro  For Windows

Objeto: FrmFecha Procedimiento: QueryUnload

#DEFINE vfpYesNo 4

#DEFINE vfpYes 6

#DEFINE vfpQuestion 32

If MessageBox("¿Desea terminar la aplicación?", ;

vfpQuestion + vfpYesNo, "Pregunta") = vfpYes Then

Release Thisform

Else

NoDefault

EndIf

Objeto: CmdAceptar Procedimiento: Click

cBarra = "/"

cFecha = Thisform.SpnDia.Text + cBarra + Thisform.SpnMes.Text ;

+ cBarra + Thisform.SpnAnno.Text

dFecha = Ctod(cFecha)

cNomDia = Cdow(dFecha)

cDia = Str(Day(dFecha), 2)

cMes = Cmonth(dFecha)

cAnno = Str(Year(dFecha), 4)

cFecha = cNomDia + " " + cDia + " de " + cMes + " de " + cAnno

Thisform.TxtEnLetras.Value = cFecha

Thisform.Refresh

Objeto: CmdLimpiar Procedimiento: Click

Thisform.SpnDia.Value = 0

Thisform.SpnMes.Value = 0

40

Page 42: Curso De Microsoft Visual Fox Pro  For Windows

Thisform.SpnAnno.Value = 0

Thisform.TxtEnLetras.Value = ""

Thisform.SpnDia.Setfocus

Thisform.Refresh

Objeto: CmdSalir Procedimiento: Click

Thisform.QueryUnload

 

 

41

Page 43: Curso De Microsoft Visual Fox Pro  For Windows

CAPITULO IV

 

Tipos de Menús:

Existen dos tipos de menús :  menú y Shortcut.

 

42

Page 44: Curso De Microsoft Visual Fox Pro  For Windows

Creación de Menús:

La creación de menús es un proceso que conlleva diferentes pasos. Primero, debemos definir las opciones del menú y de los submenús. Luego, asignar funcionalidad a las opciones de menú. Finalmente, generar el programa de menús.

Puede usar el generador de menús de Visual Foxpro para que le ayude a construir menús rápidamente. El Generador de menús le permite definir la estructura y funcionalidad de su sistema de menús a través de cuadros de diálogo de fácil uso y de listas desplegables que puede utilizar para crear y modificar su sitema de menús.

 

Definición de las opciones de menú.

Los menús presentan su aspecto con una lista de opciones para iniciar una actividad. La mayoría de los elementos de menú muestran submenús u opciones adicionales cuando el usuario selecciona uno de estos elementos. Antes de generar un menú para una aplicación, tendrá que determinar que selecciones tendrá disponibles el usuario final y qué opciones de menús pertenecen a otras opciones de menús (sub menus).

 

Cómo crear un nuevo menú

1.       Pulse la ficha de otros en el Administrador de proyectos.  

2.       Seleccione menús  en la lista de categorías

 

3.       Pulse el botón nuevo y escoja si es Menu o un Shortcut

 

4. Introduzca las opciones del menu y luego el resultado del menú ( submenu, comando o procedimiento)

43

Page 45: Curso De Microsoft Visual Fox Pro  For Windows

5. A la derecha del resultado se encuentra la opción crear o modificar según el caso. ( crea o modificar los resultados de la opción del menu).

 

Tipos de Resultados :

Submenu : Si el menú contiene un submenu

Comando : Si la opción de ese menú invoca un comando (Ejemplo:  DO FORM

Regiones, para llamar un formulario;

CLEAR EVENT, por lo general va en la opción Salir)

Procedimiento : Si la opción de ese menú invoca varias líneas de comandos ( un procedimiento).

Opciones de Menú:

En las opciones del menú se especifican:

-          Teclas de Acceso directo

-          Mensajes del menú

-          Condición de habilita/No habilitar

Generación del menú :

1.       En el menú escoja la opción Menú.

44

Page 46: Curso De Microsoft Visual Fox Pro  For Windows

2.       Se le pregunta si desea grabar los cambios ( responda que si)

3.       Luego se le pide que proporcione el archivo de salida del menu ( escoja la ruta y el nombre del archivo, por lo general son extension MPR) y luego seleccione generar.

4.       Si existe ya el archivo se le pide si desea re-escribirlo ( seleccione que si)

45

Page 47: Curso De Microsoft Visual Fox Pro  For Windows

Como invocar al menú creado:

Al generar el menú se crea un archivo que por lo general tiene extensión MPR que contiene el código para desplegar el menú. La instrucción sería:

 

            DO ruta y nombre del archivo MPR

Ejemplo :  DO menu.MPR

 

·         Para volver a re establecer el menú por default de Visual Foxpro utilice la instrucción: SET SYSMENU TO DEFAULT

 

Creación del Ejecutable de la Aplicación.

Primero se tiene que crear un programa de inicio, al cual se le tiene que decir que ese es el programa que se ejecutara de primero ( esto se hace haciendo clic derecho en el programa que designemos como principal y escoger la opción main ( principal) del menú de opciones)

Contenido Ejemplo del programa principal:

CLEAR ALL

* Variables Publicas

PUBLIC w_Output, g_año, gid_area, g_nivel, g_cambio, g_login_entry ;

46

Page 48: Curso De Microsoft Visual Fox Pro  For Windows

      ,g_pass_entry, V_MENU_PRE, V_ERROR, g_acceso

* Definicion de Ventana para los Reportes

DEFINE            WINDOW w_Output                                          ;

                        FROM 0,0 TO 25,70                              ;

                        TITLE 'Informes  - BCN'              ;

                        CLOSE FLOAT GROW ZOOM SYSTEM

* Ambiente

SET SYSMENU TO

SET ECHO OFF

SET TALK OFF

SET CENTURY ON

SET CLOCK STATUS

SET DATE brit

SET DELETE ON

SET PATH TO formenu,bmp,prg,data

SET EXCLUSIVE OFF

SET SAFETY OFF

SET REFRESH TO 5

SET REPROCESS TO AUTOMATIC

SET MULTILOCK ON

SET LOCK OFF

SET PROCEDURE TO .\prg\utility

* Fondo de la Pantalla principal

_SCREEN.Picture=".\bmp\fondo.bmp"

_SCREEN.WINDOWSTATE=2

_SCREEN.CLOSABLE=.F.

47

Page 49: Curso De Microsoft Visual Fox Pro  For Windows

_SCREEN.CAPTION="Formulación Presupuestaria"

* Base de Datos

OPEN DATA .\SCOTT\scott SHARED

* Llamada al Menu

DO .\menu\menu.mpr

READ EVENT

CLEAR ALL

SET SYSMENU TO DEFAULT

48

Page 50: Curso De Microsoft Visual Fox Pro  For Windows

CAPITULO V

 

Para ejecutable

 

Crear nuevo proyecto

1.- menú archivo

2. nuevo

3.- Seleccionar proyecto como indica la imagen

 

4.- clic en nuevo archivo

5.- guardar proyecto en la dirección deseada y el nombre deseado

6.- clic en documentos y luego agregar

49

Page 51: Curso De Microsoft Visual Fox Pro  For Windows

7.- buscar los formularios que desee agregar al proyecto

8.- clic en código y luego nuevo

9.- escriba o pegue el siguiente código

 

clear all

set exclusive off

set sysmenu to

set echo off

set talk off

Set Status Bar Off

_screen.windowstate=2

clear

* en la line siguiente  va la ruta y el nombre del formulario principal

do form c:\israel\nombre_formulario.scx

read event

clear all

 

10.- clic en el signo + (MAS) si no se ve el nombre del programa en el proyecto

50

Page 52: Curso De Microsoft Visual Fox Pro  For Windows

11.-  clic derecho en el nombre del programa y estableces principal

12.- clic en general y generar ejecutable

13.- acepta y guardar en la ruta correspondiente

 

 

NOTA:

 Copie los archivos .dll en el lugar donde se encuentre el ejecutable

 

Y LISTO

 

 

Aplicación Nº 4

 

Base de datos Pizzería

Realizar las siguientes tablas para la base de datos Pizzería

 

51

Page 53: Curso De Microsoft Visual Fox Pro  For Windows

 

Para llevar a cabo la Practica Realiza los Siguientes pasos:

 

1. Crea un nuevo Proyecto con el nombre Pizza2. en el administrador de proyectos en la Ficha Datos, Selecciona la opción

Databases, y después la opcion Nuevo, para crear la base de datos con el nombre Pizzería.

3. En el diseñador de Base de datos da un clic en la opción Nueva tabla. y haz lo sig;

 

4. Guarda esta tabla con el nombre de Pizza5. Ahora deberas crear otra tabla nueva con los siguientes campos.

52

Page 54: Curso De Microsoft Visual Fox Pro  For Windows

 

 

6. Guarda esta tabla con el nombre de tamaños.7. Ahora deberas crear una tercera tabla con  los datos siguientes:

 

8. Guarda esta tabla con el nombre de Venta.

9. por ultimo deberás crear otra tabla como sigue:

53

Page 55: Curso De Microsoft Visual Fox Pro  For Windows

 

 

 

10.     Esta tabla la guardas con el nombre factura11.     Crea las relaciones entre las tablas de tal form que te queden de la siguiente

manera:

12.     Ahora debemos introducir los datos a las tablas, comenzaremos por la tabla Pizza y la llenaremos como sigue:

54

Page 56: Curso De Microsoft Visual Fox Pro  For Windows

 

Clave_Pizza Nombrean Anchoaspe Peperoniha Hawaianasa salami

 13.     seguimos con la tabla Tamaño

 

Clave_tamaño Tamañoch Chicame Medianagr Grande

 

14.     Y Continuamos con la tabla Venta

 

Clave_Pizza Clave_Tamaño Precioan ch $ 20.00an me $ 25.00an gr $ 30.00pe ch $ 60.00pe me $ 65.00pe gr $ 80.00ha ch $ 55.00ha me $ 60.00ha gr $ 68.00sa ch $ 63.00sa me $ 87.00sa gr $ 98.00

 15.     ahora crearemos una tabla a partir de una consulta, en la ventana explorador de proyectos en la pestaña datos selecciona consulta y después nuevo

 

16.     Visual Fox te preguntara que tablas quieres agregar para la realización de tu consulta, para eso tu debes agregar las siguientes tablas: Tamaña, Venta y Pizza.

 

 

17.     una vez con las tablas agregadas, en la ventana diseñador de consultas en la ficha campos, debemos escoger cuales son los campos que nosotros queremos que nos muestre la consulta, pues bien vamos a seleccionar los siguientes:

55

Page 57: Curso De Microsoft Visual Fox Pro  For Windows

Pizza.nombre, tamaño.tamaño, Venta.Precio, por ultimo agregaremos una expresión como campo para esto en la misma ventana busca la opción funciones y expresiones y aparecerá la ventana siguiente:

 

 

18.     Cuando esta ventana aparezca lo primero que debemos de hacer es seleccionr de la parte funciones Cadena, la opción “texto”, Luego en la parte de abajo donde dice Desde tabla Selecciona la tabla Pizza, en el cuadro campos apareceran los campos de la tabla pizza de ese cuadro da doble clic al campo clave_pizza, una vez esto hecho en el cuadro expresión deberá de aparecer el siguiente texto: “Pizza.cleve.pizza”, una ves con esto ve otra vez a la lista Cadena y ahora selecciona el símbolo +, el símbolo aparecera dentro de las comillas, salte de las comillas y pon un guion(-), la expresión deberá quedar: “Pizza.cleve.pizza+”-,  ahora con lo que ya vimos has que la expresión final quede de la siguiente forma, recuerda que para sacar los campo de Tamaño primero debes seleccionar la tabla tamaño de Desde tabla.

56

Page 58: Curso De Microsoft Visual Fox Pro  For Windows

 

19.     Una vez que tengas la Expresión da un clic al botón aceptar y después un clic en Agregar.  Te debera quedar como en la pantalla siguiente:

 

20.     Ahora da un clic al boton Destino de consulta   y Selecciona tabla

 

57

Page 59: Curso De Microsoft Visual Fox Pro  For Windows

 

21.     en el recuadro donde dice Nombre de la tabla le ponemos un nombre que en este caso será consulta1.dbf. y un clic al botón Aceptar.

22.     Después de eso Cierro la ventana de Diseñador de consultas, y ebn el explorador de proyectos selecciono la consulta que acabo de crear y la ejecuto.

23.     después de este paso en el explorador de proyectos selecciono tablas en la ficha datos y doy un clic a Agregar, busco la tabla consulta1, que es la que se genero con la consulta y la agrego a mi base de datos.

24.     Una vez ya agregada la relaciono con la tabla Factura, de tal manera que me quede de la siguiente manera:

 

25.     Ahora si todo esta listo para que tu generes tus Formularios y tus informes de tu base de datos, recuerda que puedes hacer tambien consultas por medio de la tabla factura para ver cuales fueron las ventas que has tenido.

 

58