7531269 Separata de Visual FoxPro

40
VISUAL FOXPRO 1 VISUAL FOXPRO Es una aplicación orientada a Windows que nos permite crear programas, procesos, sistemas a través de una serie de herramientas que el Windows nos ofrece. Visual FoxPro en un lenguaje orientado a objetos a través de los cuales podemos implementar algún o algunos formularios con controles y códigos de programa. TERMINOS EN VISUAL FOXPRO: CONTROL O OBJETO: Es un objeto que viene predeterminado con Visual Basic y que puede ser creado a través de una herramienta que esta en la barra de herramientas de controles. Ejemplo: Label, Text, Option, Check, Etc. La Caja de herramientas contiene las herramientas que utiliza para dibujar controles en sus formularios. Para abrir la Caja de herramientas, elija Caja de herramientas en el menú Ver. Esta barra de herramientas contiene los botones siguientes: 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. Etiqueta. Crea un control Label, que se usa para texto que no quiere que el usuario cambie, como el título que C.E.O. SAN LUIS René J. Hercilla Valdivia

Transcript of 7531269 Separata de Visual FoxPro

Page 1: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 1

VISUAL FOXPRO

Es una aplicación orientada a Windows que nos permite crear programas, procesos, sistemas a través de una serie de herramientas que el Windows nos ofrece.Visual FoxPro en un lenguaje orientado a objetos a través de los cuales podemos implementar algún o algunos formularios con controles y códigos de programa.

TERMINOS EN VISUAL FOXPRO:

CONTROL O OBJETO: Es un objeto que viene predeterminado con Visual Basic y que puede ser creado a través de una herramienta que esta en la barra de herramientas de controles.Ejemplo:Label, Text, Option, Check, Etc.

La Caja de herramientas contiene las herramientas que utiliza para dibujar controles en sus formularios. Para abrir la Caja de herramientas, elija Caja de herramientas en el menú Ver.Esta barra de herramientas contiene los botones siguientes:

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.

Etiqueta. Crea un control Label, que se usa para texto que no quiere que el usuario cambie, como el título que

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 2: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 2

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 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.

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 3: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 3

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.

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.

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 4: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 4

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.

PROPIEDAD: Es una característica o atributo que toma el objeto o control puede ser el color, tamaño, estado, los valores predeterminados, el texto del mensaje, etc.Ejemplo:Caption, Name, BackColor, Font, ForeColor, 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.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).

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 5: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 5

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.

METODO: Es un proceso que se ejecuta (predeterminado) según el control que se tiene en uso. Los objetos también tienen métodos, que son las acciones que pueden realizar. Los métodos se pueden considerar como las acciones que realizan los objetos.Ejemplo:Clear, Setfocus, Refresh, Etc.

ALGUNOS MÉTODOS COMUNES:Clear (Borrar): Borra el contenido de un control ComboBox o ListBox.AddItem (Añadir Entrada), Agrega un nuevo elemento a un control ComboBox o ListBox, permitiendo especificar opcionalmente el índice del elemento. Se aplica a ComboBox, ListBox RemoveItem (Borrar Entrada): Quita un elemento de un control ComboBox o ListBox. Se aplica aComboBox, ListBox.Release Libera de la memoria un FormSet o un Form. Se aplica a Form, FormSet, _SCREEN. El método Release es muy útil cuando se crea un Form o FormSet con el comando DO FORM y no haya variables que hagan referencia al Form o FormSet.Puede usar la colección Forms del objeto Screen para encontrar el Form o FormSet y llamar a su método Release.Refresh (Actualizar): Fuerza que un formulario o control sea redibujado. Generalmente, el dibujado de un formulario o control se controla automáticamente cuando no ocurren eventos. Sin embargo, hay muchas situaciones en las que se quiere actualizar inmediatamente un formulario o un control.Se puede usar el método Refresh con un control Data para abrir o reabrir la base de datos (si han cambiado los valores de las propiedades DatabaseName, ReadOnly, Exclusive o Connect) y reconstruir el dynaset de la propiedad Recordset del control.

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 6: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 6

SetFocus (Enfoque): Mueve el enfoque al control o formulario especificado. El objeto debe ser un objeto Form, un objeto MDIForm o control que pueda recibir el enfoque. Después de invocar el método SetFocus, cualquier entrada del usuario se dirige al formulario o control especificado.

PROCEDIMENTOS, SUCESOS O EVENTOS: Es el proceso que se va a ejecutar cuando se tome una acción con algún objeto o control.

EVENTO: Una acción reconocida por un objeto, como hacer clic con el Mouse o presionar una tecla, para la que se puede escribir código para responder. Los eventos pueden producirse como resultado de una acción del usuario o por programa, o pueden ser disparados por el sistema.Ejemplo:Click encima de un botón de comando.

ALGUNOS SUCESOS COMUNES:Los sucesos determinan la relación de los controles a las condiciones externas. Los controles reconocen los sucesos, pero es la aplicación la que la maneja. Un botón de comando es capaz de reconocer que alguien lo ha pulsado, pero no es capaz de reaccionar al suceso si no se le proporciona un código que lo indique. En otras palabras, somos nosotros los que debemos decir a Visual Basic lo que debe hacer cuando el usuario hace clic sobre un determinado botón de comando. Una vez que le especificamos la rutina para el suceso control Click, la subrutina se ejecuta cada vez que se hace clic sobre este control.Click (Clic), DblClick (Doble Clic): El suceso Click tiene lugar cuando el usuario hace clic con el botón izquierdo del ratón; el DblClick tiene lugar cuando el usuario hace doble clic en el botón izquierdo del ratón.MouseDown (Ratón Abajo) MouseUp (Ratón Arriba): El suceso MouseDown tiene lugar cuando se presiona el botón del ratón, y el MouseUp cuando se suelta.

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 7: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 7

MouseMove (Movimientos del Ratón): Este suceso tiene lugar continuamente mientras se mueve el ratón sobre un control.KeyDown (Tecla Abajo), KeyUp (Tecla Arriba): El suceso KeyDown tiene lugar cuando se pulsa una tecla, y el KeyUp cuando se suelta.KeyPress (Pulsación de Tecla): El suceso KeyPress se usa habitualmente para escribir gestores de teclado para cuadros de texto, porque este suceso tiene lugar antes de que se muestre en el cuadro de texto el carácter pulsado.

DEFINICIONES IMPORTANTES:PROGRAMA: Es un conjunto de comandos, instrucciones, símbolos y códigos que nos permiten comunicarnos con la computadora y poder procesar la información.Se clasifican en lenguajes de bajo nivel y alto nivel.Los lenguajes de bajo nivel, son más director y para los cuales es necesario conocer la estructura interne de la computadora. Ejemplo el lenguaje de programación ASSEMBLER.Los lenguajes de alto nivel, más comerciales, más fáciles de operar y para los cuales no es necesario la estructura interna alguna. Ejemplo el lenguaje de programación FOXPRO.

TIPOS DE PROGRAMA:a) Programa Fuente: Es un conjunto de instrucciones escritas

en un lenguaje de programación, con la ayuda de un editor de textos.

b) Programa Objeto: Es el conjunto de instrucciones escritas en un lenguaje máquina y que no pueden ser ejecutados por la computadora, es traducido desde el programa fuente al lenguaje máquina, es un programa no hecho por el usuario sino por el compilador del lenguaje. Este programa se genera del resultado de COMPILAR el programa fuente.Compilar: Es la acción mediante la cual el sistema verifica errores de sintaxis dentro de un programa fuente y si no los tiene genera el programa objeto, al cual le asigna automáticamente la extensión (OBJ).

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 8: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 8

c) Programa Ejecutable: Es el conjunto de instrucciones listas para ser ejecutadas por la computadora, sin la intervención del software que genero dicha codificación. Este programa se genera de LINKEAR el programa.Linkear: Es la acción mediante la cual el sistema enlaza las librerías de un lenguaje de programación con el programa objeto, generando un programa ejecutable desde el sistema operativo, al cual le asigna automáticamente la extensión (EXE).

VARIABLES:Como en cualquier otro lenguaje de programación, las variables se usan para almacenar valores durante la ejecución de un programa. Las variables son huecos en memoria en los que se puede dejar valores para recogerlos cuando se necesiten.En la mayoría de los lenguajes de programación, se deben definir las variables. En otras palabras, se debe decir por adelantado al compilador las variables que se van a usar. La razón por la que se hace así es para ayudar al compilador. Si el compilador conoce las variables y sus tipos, puede producir un código más optimizado.

TIPOS DE VARIABLES:VARIABLES NUMÉRICAS: Almacenan números. Los números se pueden almacenar con muchos formatos, dependiendo del tamaño de los números y de su precisión.VARIABLES DE TIPO STRING: Es aquel tipo de variable a los cuales podemos destinar caracteres alfabéticos, signos y números es decir que nos acepta cualquier tipo de carácter.VARIABLES DE TIPO BOOLEAN: Almacena valores True/False (Verdadero/Falso). Las variables Boolean son realmente enteros que tiene el valor –1 (para True) y 0 (para False). Las variables Boolean se usan para la comprobación de condiciones. Las variables Boolean se definen de esta manera:VARIABLES DE TIPO DATE: Almacena fechas. Las variables tipo Date presentan las fechas de acuerdo al formato de fecha corto reconocido por el sistema. Se define de esta manera:

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 9: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 9

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 sentenciaSe 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

sentenciasEndIf

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 1Else

Bloque se sentencias 2EndIf

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

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 10: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 10

Else If condición 2 ThenBloque se sentencias 2

Else If condición 3 ThenBloque se sentencias 3

ElseBloque 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: 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”EndIfIf puntuación < 75 And puntuación >= 50 Then

Resultado= “Pasable”EndIfIf puntuación < 90 And puntuación >= 75 Then

Resultado= “Muy bueno”

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 11: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 11

EndIfIf 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 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.valueDo Case Case opc=1 NombreDía= “Lunes”

Mensaje= “Feliz semana” Case opc=6

NombreDía= “Sábado”Mensaje= “Feliz fin de semana”

Case opc=7NombreDía= “Domingo”Mensaje= “ ¿Has tenido un buen fin de semana”

EndCAse

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 12: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 12

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 sentenciasEnddo

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).

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]

SentenciasNext/EndFor [contador]

(las palabras entre corchetes son opcionales). Los argumentos contador, principio, final e incremento son todos numéricos. El

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 13: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 13

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 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]

ENDWITHNombreObjeto: Especifica el nombre del objeto. NombreObjeto puede ser el nombre del objeto o una referencia a éste. Ejemplo With ThisformInstrucciones: 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.

MANIPULACIÓN DE OBJETOS: Para manipular un objeto, deberá identificarlo en relación con la jerarquía contenedora. En el nivel superior de la jerarquía contenedora (el conjunto de

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 14: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 14

formularios o el formulario) necesita hacer referencia a la variable de objeto. De manera predeterminada, la variable de objeto tiene el mismo nombres que el archivo .SCX.Las propiedades se manipulan haciendo referencia a la variable de objeto, el control y la propiedad, separados por puntos (.):

variableobjeto.[form.]control.propiedad = Configuració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 o palabra claveReferenciaActiveControl El control del formulario activo actualmente que tiene el enfoqueActiveFormEl formulario activo actualmenteActivePage La página activa del formulario activo actualmenteParent El contenedor más inmediato del objetoTHIS El objeto, o un procedimiento o evento del objetoTHISFORM El formulario que contiene el objetoTHISFORMSETEl 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.

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 15: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 15

Sintaxis: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.

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":

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 16: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 16

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.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.

PARTE PRACTICA

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 17: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 17

Objeto Propiedad Valor Text1 Value (Valor) 0.00Text2 Value 0.00Label4 Alignment (Alineamiento) 1 – Derecha

BorderStyle (Estilo de borde) 1 – Sencillo fijoCaption (Título) 0.00

Command1 Click Thisform.label4.caption="S/."+alltrim(str(thisform.text1.value*thisform.text2.value,10,2))Command2 Click Thisform.release

Objeto Propiedad Valor Spinner1 KeyboardHighValue 72

KeryboardLowValue 6SpinnerHighValue 72SpinerLowValue 6Value

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 18: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 18

Check1 Click If thisform.text1.fontbold=.t. Then

thisform.text1.fontbold=.f.Else

thisform.text1.fontbold=.t.

EndifCheck1 = FontBold (Negrita)Check2 = FontItalic (Cursiva)Check3 = FontUnderline (Subrayado)Check4 = FontStrikethru (Tachado)

Optiongroup1 Click If thisform.optiongroup1.value=1

thisform.text1.forecolor=rgb(0,0,0)Else

If thisform.optiongroup1.value=2thisform.text1.forecolor=rgb(255,0,0)

ElseIf thisform.optiongroup1.value=3

thisform.text1.forecolor=rgb(0,255,0)Else

thisform.text1.forecolor=rgb(0,0,255)Endif

EndifEndif

Command1 Click thisform.text1.value=""thisform.text1.setfocusthisform.check1.value=0thisform.check2.value=0thisform.check3.value=0thisform.check4.value=0thisform.optiongroup1.value=1thisform.text1.fontsize=8thisform.text1.fontbold=.f.thisform.text1.fontitalic=.f.thisform.text1.fontstrikethru=.f.

thisform.text1.fontstrikethru=.f.thisform.text1.forecolor=rgb(0,0,0)

Command2 Click thisform.release

Spinner1 InteractiveChange thisform.text1.fontsize=thisform.spinner1.value

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 19: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 19

Objeto Propiedad Valor Label1 Name LabtipoLabel2 Name LabproductoCombo1 Name Cmbtipo

RowSource Abarrotes,Medicinas,etc.RowSourceType 1 – Valor

Text1 Name TexproductoList1 Name Lis1productoList2 Name Lis2productoCommand1 Name ComagregarCommand2 Name Comad dunoCommand3 Name ComaddvariosCommand4 Name ComeliminaCommand5 Name CommodificaCommand6 Name ComlimpiaCommand7 Name Comsalir

Comagregar Click with thisform

if .comagregar.caption="Agregar"

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 20: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 20

.lis1producto.additem(.texproducto.value)else.lis1producto.additem(.texproducto.value)

.comagregar.caption="Agregar"

endif.texproducto.value="".texproducto.setfocus

endwith

Comadduno Click with thisform

.lis2producto.additem(.lis1producto.value).lis1producto.remeoveitem(.list1producto.listindex)

endwith

Comaddvarios Click with thisform

for x=1 to .lis1producto.listcount

.lis2producto.additem(.lis1producto.list(x))next

.lis1producto.clear

.texproducto.setfocusendwith

Comelimina Click with thisform

.lis1producto.removeitem(.lis1producto.listindex).texproducto.setfocus

endwith

Commodifica Click with thisform

.texproducto.value=.lis1producto.value.lis1producto.removeitem(.lis1producto.listindex).

comagregar.caption="Actualizar"

.texproducto.setfocusendwith

Comlimpia Click with thisform

.lis1producto.clear

.texproducto.setfocusendwithComsalir Click thisform.release

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 21: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 21

Objeto Propiedad Valor List1 Visible .T. – Verdadero

Command1 Click with thisform

a=.text1.valueb=.spinner1.valuec=.spinner2.valued=.spinner3.valuee=.combo1.valueif

.optiongroup1.option1.value=1

f="Administración"else if

.optiongroup1.option2.value=1

f="Contabilidad" else

f="Ventas" endifendif

if .check1.value=1 g=.check1.caption

elseg=""

endifif .check2.value=1

h=.check2.captionelse

h=""endifif .check3.value=1

i=.check3.captionelse

i=""endif.list1.additem(alltrim(a+alltrim( str(b))+alltrim(str(c))+alltri

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 22: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 22

m(str(d))+" "+e+" "+f+" "+g+" "+h+" "+i)).text1.value="".text1.setfocus.optiongroup1.value=1.check1.value=0.check2.value=0.check3.value=0.spinner1.value=1.spinner2.value=1.spinner3.value=1950

endwith

Command2 Click thisform.list1.clearthisform.text1.setfocus

Command3 Click with thisform

if .command3.caption="Mostrar"

.list1.visible=.t.

.command3.caption="Ocultar"

else.list1.visible=.f..

command3.caption="Mostar"endif

endwith

Command4 Click thisform.release

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 23: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 23

Objeto Propiedad Valor Pageframe1 PageCount 4Timer1 Interval 1

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 24: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 24

Page1:Spinner1,2,3, KeyboardHighValue 255 4,5 y 6 KeyboardLowValue 0

SpinnerHighValue 255SpinnerLowValue 0

Page2:Spinner1,2 KeyboardHighValue 250

KeyboardLowValue 0SpinnerHighValue 250SpinnerLowValue 0

Page3:Spinner1,2 KeyboardHighValue 300

KeyboardLowValue 0SpinnerHighValue 300SpinnerLowValue 0

Page4:Spinner1 KeyboardHighValue 100

KeyboardLowValue 1SpinnerHighValue 99SpinnerLowValue 1

Page1:Spinner1 InteractiveChange with thisform

rojo=.pageframe1.page1.spinner1.value.shape1.backcolor=rgb(rojo,verde,azul)

endwith

Spinner2 InteractiveChange with thisform

verde=.pageframe1.page1.spinner2.value.shape1.backcolor=rgb(rojo,verde,azul)

endwith

Spinner3 InteractiveChange with thisform

azul=.pageframe1.page1.spinner3.value.shape1.backcolor=rgb(rojo,verde,azul)

endwith

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 25: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 25

Spinner4 InteractiveChange with thisform

rojo=.pageframe1.page1.spinner4.value.shape1.bordercolor=rgb(rojo,verde,azul)

endwith

Spinner5 InteractiveChange with thisform

verde=.pageframe1.page1.spinner5.value.shape1.bordercolor=rgb(rojo,verde,azul)

endwith

Spinner6 InteractiveChange with thisform

azul=.pageframe1.page1.spinner6.value.shape1.bordercolor=rgb(rojo,verde,azul)

endwith

Page2:Spinner1 InteractiveChange with thisform

alto=.pageframe1.page2.spinner1.value.shape1.height=alto

endwith

Spinner2 InteractiveChange with thisform

ancho=.pageframe1.page2.spinner2.value.shape1.width=ancho

endwith

Page3:Spinner1 InteractiveChange with thisform

izquierda=.pageframe1.page3.spinner1.value.shape1.left=izquierda

endwith

Spinner2 InteractiveChange with thisform

arriba=.pageframe1.page3.spinner2.value.shape1.top=arriba

endwith

Page4:Spinner1 InteractiveChange with thisform

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 26: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 26

formas=.pageframe1.page4.spinner1.value.shape1.curvature=formas

endwith

Command1 Click with thisform

if .pageframe1.visible=.t..pageframe1.visible=.f..shape1.visible=.f..command2.visible=.f.

.command1.caption="Muestra características"

else.pageframe1.visible=.t..shape1.visible=.t..command2.visible=.t.

.command1.caption="Esconde características"

endifendwith

Command2 Click with thisform

.shape2.backcolor=.shape1.backcolor.shape2.bordercolor=.shape1.bordercolor.

shape2.height=.shape1.height

.shape2.width=.shape1.width

.shape2.left=.shape1.left

.shape2.top=.shape1.top

.shape2.curvature=.shape1.curvature

endwith

Timer1 Timer with thisform

if sw=0x=x+1.shape2.left=xif x=250

sw=1endif

elsex=x-1.shape2.left=xif x=5

sw=0endif

endifendwith

Form1 Init public sw,x,rojo,verde,azul,alto,ancho,izquierda,arriba,formasx=5sw=0rojo=0verde=0azul=0alto=0ancho=0izquierda=0

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 27: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 27

arriba=0 formas=0

Ejemplo N°6: Crear la Tabla Libre Articulo.DBFNombre Tipo Ancho Decimale

sCodart Carácter 3Desart Carácter 30Stkart Numérico 4 0Preart Numérico 7 2Obsart Memo 4Imgart General 4Ingresar 5 registros.

Objeto Propiedad Valor Commandgroup1 BottonCount 4Text1 ControlSource empleado.codartText2 ControlSource empleado.desartText3 ControlSource empleado.stkartText4 ControlSource empleado.preartEdit1 ControlSource empleado.obsartOleboundcontrol1 ControlSource empleado.imgart

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 28: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 28

Commandgroup1 Click nopc=this.valuedo case

case nopc=1go top

case nopc=2if not bof()

skip -1if bof()

go topendif

endifcase nopc=3

if not eof()skip if bof()

go bottomendif

endifcase nopc=4

go bottomendcasethisform.refresh

Command1 Click Thisform.release

Objeto Propiedad Valor Form1 ShowTips .T.Text1 BackStyle 0 – Transparente

Format EReadOnly .T.Value =Date()

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 29: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 29

Text2 Value { / / }Text3,4,5 BackStyle 0 – Transparente

ReadOnly .T.Value 0

Command1 Caption (Nada)Picture C:\VFP\…\…\Closed.BMP

Command2 Caption (Nada)Picture C:\VFP\…\…\Help.BMP

Form2 AlwaysOnTop .T.BorderStyle 1 – Borde en una líneaCaption (Nada)ControlBox .F.Desktop .T.HalfHeigthCaption .F.MaxButton .F.MinButton .F.Movable .T.WindowsType 1 – Modal

Label2 Alignment 2 – CentroBackStyle 0 – TransparenteCaption Lleve el Mouse sobre

algún objetoWordWrap .T.

Imagen1 BackStyle 0 – TransparentePicture C:\VFP\…\…\Find.BMP

Form1 MouseMove LPARAMETERS nButton, nShift, nXCoord, nYCoordthisformset.form2.label2.caption="Lleve el Mouse sobre algún objeto"thisformset.form2.refresh

Text1 MouseMove LPARAMETERS nButton, nShift, nXCoord, nYCoord

thisformset.form2.label2.caption="Esta es la fecha de hoy, puede cambiarla"+;" haciendo click con el botón de comando del lado"thisformset.form2.refresh

Text2 MouseMove LPARAMETERS nButton, nShift, nXCoord, nYCoord

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 30: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 30

thisformset.form2.label2.caption="Puede escribir su fecha de nacimiento por ejemplo"thisformset.form2.refresh

Text3 MouseMove LPARAMETERS nButton, nShift, nXCoord, nYCoordthisformset.form2.label2.caption="Haz nacido un día";+chr(13)+cdow(thisform.text2.value)thisformset.form2.refresh

Text4 MouseMove LPARAMETERS nButton, nShift, nXCoord, nYCoordthisformset.form2.label2.caption="Haz nacido un día";+chr(13)+cdow(thisform.text2.value)thisformset.form2.refresh

Text5 MouseMove LPARAMETERS nButton, nShift, nXCoord, nYCoordthisformset.form2.label2.caption="Haz nacido un día";+chr(13)+cdow(thisform.text2.value)thisformset.form2.refresh

Command3 MouseMove LPARAMETERS nButton, nShift, nXCoord, nYCoordthisformset.form2.label2.caption="Pulsa Enter para hacer el cálculo"

thisformset.form2.refresh

Command4 MouseMove LPARAMETERS nButton, nShift, nXCoord, nYCoordthisformset.form2.label2.caption="Puedes pulsar Esc para salir"thisformset.form2.refresh

Command3 Click with thisform

ndias=(.text1.value-.text2.value)

.text3.value=int(ndias/365)

.text4.value=int(mod(ndias,365)/30)

.text5.value=mod(mod(ndias,365),30)

.refreshendwith

Command4 Click thisformset.release

Command1 Click with thisform

if .text1.readonly=.f..text1.readonly=.t.

this.picture="D:\vfp\samples\graphics\bmps\outline\closed.bmp"else

.text1.readonly=.f.

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 31: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 31

this.picture="D:\vfp\samples\graphics\bmps\outline\open.bmp"

.text2.setfocusendif.refresh

endwith

Command2 Click with thisformset

if .form2.visible=.t..form2.visible=.f.

this.tooltiptext="Ver ayuda"

else.form2.visible=.t.

this.tooltiptext="Ocultar ayuda"

endifendwith

Text2 Valid thisform.command3.click

Ejemplo N° 8: Crear el Proyecto: Empresa 2002.Crear la Base de Datos: Empresa.Crear la Tabla: Empleado.

Nombre Tipo Ancho Decimales

Codiemp Carácter

3

Apelemp Carácter

30

Nombemp Carácter

15

Naciemp Fecha 8Damaemp Lógico 1Civiemp Carácte

r1

Estaemp Carácter

1

Condemp Carácter

1

Ingremp Fecha 8Docuemp Carácte

r8

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 32: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 32

Fonoemp Carácter

7

Diremp Carácter

25

Obsemp Memo 4

Propiedades del campo Civiemp:Mostrar Validación de campos

Formato: Regla: Civiemp$“SCVD”

Mascara de entrada:

! Mensaje: “Solo S,C,V,D”

Título: Valor predeterminado:

“S”

Propiedades del campo Estaemp:Mostrar Validación de campos

Formato: Regla: Estaemp$“AVPR”

Mascara de entrada:

! Mensaje: “Solo A,V,P,R”

Título: Valor predeterminado:

“A”

Propiedades del campo Condemp:Mostrar Validación de campos

Formato: Regla: Condemp$“CES”

Mascara de entrada:

! Mensaje: “Solo C,E,S”

Título: Valor predeterminado:

“C”

Propiedades del campo Ingremp:Mostrar Validación de campos

Formato: Regla:Mascara de Mensaje:

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 33: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 33

entrada:Título: Valor

predeterminado:Date( )

Ingresar 5 registros.

Crear el formulario Empleado:

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 34: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 34

Objeto Propiedad Valor Text1 ControlSource empleado.codiempText2 ControlSource empleado.apelempText3 ControlSource empleado.naciempText4 ControlSource empleado.nombempTxet5 ControlSource empleado.ingrempTxet6 ControlSource empleado.docuempTxet7 ControlSource empleado.direempTxet8 ControlSource empleado.fonoempEdit1 ControlSource empleado.obseempCombo1 BoundColum 2

ColumnCount 2ColumnLines .f.ColumnWidths 80,0ControlSource empleado.civiempRowSource Soltero,S,Casado,C,

Viudo,V,Divorciado,DRowSourceType 1 – ValorValue Soltero

Combo2 BoundColum 2ColumnCount 2ColumnLines .f.ColumnWidths 80,0ControlSource empleado.estaempRowSource Activo,A,Vacaciones,V,

Retirado,R,Permiso,PRowSourceType 1 – ValorValue Activo

Combo3 BoundColum 2ColumnCount 2ColumnLines .f.ColumnWidths 80,0ControlSource empleado.condempRowSource Contratado,C,Estable,E,

Servicio,SRowSourceType 1 – ValorValue Servicio

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 35: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 35

Command1 Click with thisform

go top.command1.enabled=.f..command2.enabled=.f..command3.enabled=.t..command4.enabled=.t..

combo1.value=iif(empleado.civiemp="S","Soltero(a)",iif(empleado.civiemp="C","Casado(a)",iif(empleado.civiemp="V","Viudo(a)","Divorciado(a)")))

.combo2.value=iif(empleado.estaemp="A","Activo",iif(empleado.estaemp="V","Vacaciones",iif(empleado.estaemp="P","Permiso","Retirado")))

.combo3.value=iif(empleado.condemp="C","Contratado",iif(empleado.condemp="E","Estable","Servicio"))

.optiongroup1.value=iif(empleado.damaemp,1,2)

.refreshendwith

Command2 Click with thisform

if bof().

command1.enabled=.f..

command2.enabled=.f.

.command3.enabled=.t.

.command4.enabled=.t.

elseskip -1.

command3.enabled=.t.endif.

combo1.value=iif(empleado.civiemp="S","Soltero(a)",iif(empleado.civiemp="C","Casado(a)",iif(empleado.civiemp="V","Viudo(a)","Divorciado(a)")))

.combo2.value=iif(empleado.estaemp="A","Activo",iif(empleado.estaemp="V","Vacaciones",iif(empleado.estaemp="P","Permiso","Retirado")))

.combo3.value=iif(empleado.condemp="C","Contratado",iif(empleado.condemp="E","Estable","Servicio"))

.optiongroup1.value=iif(empleado.damaemp,1,2)

.refreshendwith

Command3 Click with thisform

if eof().

command1.enabled=.t.

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 36: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 36

.command2.enabled=.t.

.command3.enabled=.f.

.command4.enabled=.f.

elseskip.

command2.enabled=.t.endif.

combo1.value=iif(empleado.civiemp="S","Soltero(a)",iif(empleado.civiemp="C","Casado(a)",iif(empleado.civiemp="V","Viudo(a)","Divorciado(a)")))

.combo2.value=iif(empleado.estaemp="A","Activo",iif(empleado.estaemp="V","Vacaciones",iif(empleado.estaemp="P","Permiso","Retirado")))

.combo3.value=iif(empleado.condemp="C","Contratado",iif(empleado.condemp="E","Estable","Servicio"))

.optiongroup1.value=iif(empleado.damaemp,1,2)

.refreshendwith

Command4 Click with thisform

go bottom

.command1.enabled=.t.

.command2.enabled=.t.

.command3.enabled=.f.

.command4.enabled=.f.

.combo1.value=iif(empleado.civiemp="S","Soltero(a)",iif(empleado.civiemp="C","Casado(a)",iif(empleado.civiemp="V","Viudo(a)","Divorciado(a)")))

.combo2.value=iif(empleado.estaemp="A","Activo",iif(empleado.estaemp="V","Vacaciones",iif(empleado.estaemp="P","Permiso","Retirado")))

.combo3.value=iif(empleado.condemp="C","Contratado",iif(empleado.condemp="E","Estable","Servicio"))

.optiongroup1.value=iif(empleado.damaemp,1,2)

.refreshendwith

Command5 Click local nrespnresp=messagebox("Esta Ud. seguro de eliminar el registro",32+4,"atención")if nresp=6 &&si nresp es no

delete next 1packif eof()

skip -1

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 37: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 37

elseskip

endifthisform.refresh()

endif

Command6 Click with thisform

if .command6.caption="Nuevo"

append blank.

combo1.value="Soltero(a)".

combo2.value="Activo".

combo3.value="Contratado".optiongroup1.value=1.text1.setfocus.

command6.caption="Guardar"

elserepla

empleado.civiemp with iif(.combo1.value="Soltero(a)","S",iif(.combo1.value="Ca

sado(a)","C",iif(.combo1.value="Viudo(a)","V","D")))

repla empleado.estaemp with iif(.combo2.value="Activo","A",iif(.combo2.value="Vacaciones","V",iif(.combo2.value="Permiso","P","R")))

repla empleado.condemp with iif(.combo3.value="Contratado","C",iif(.combo3.value="Estable","E","S"))

repla empleado.damaemp with iif(.optiongroup1.value=1,.f.,.t.)

endifendwith

Command7 Click thisform.release

Form1 MouseMove LPARAMETERS nButton, nShift, nXCoord, nYCoordthisform.label14.caption=str(recno())

Creación de Menús:Ejemplo N° 8:

Archivo ListadoMantenimiento

Empleados Ctrl+E

Informe general Ctrl+G

Nuevo Ctrl+N

Obreros Por Apellidos

Abrir Otros Boletas Código

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 38: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 38

Salir Ctrl+S

Fecha de nacimiento Otros

Procesos HerramientasBoleta de Pagos

Configuración

Nominas UsuariosPlanillas Add Modulos

About Ctrl+A

Diseñador de MenúsIndicador Acción Opcion

esNivel de

Menú\<Archivo Subme

núModificar

Barra de Menú

\<Listado Submenú

Crear Barra de Menú

\<Procesos Submenú

Crear Barra de Menú

\<Herramientas

Submenú

Crear Barra de Menú

Diseñador de MenúsIndicador Acción Opciones Nivel de

menú\<Mantenimiento

Submenú

Crear

Archivo

Nuevo Submenú

Crear

Archivo

\<Abrir Submen C Archivo

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 39: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 39

ú rear\- Submen

úCrear

Archivo

\<Salir Comando

Set sysmenu to default

Archivo

Opciones de acción (Del submenú Salir)Etiqueta Tecla Ctrl. + STexto de Tecla Ctrl. + SMensaje “Nos permite salir del menú principal”

Diseñador de MenúsIndicador Acción Opciones Nivel de

Menú\<Salir Coman

do Set sysmenu to default Archivo

\<Empleados

Comando

Do form “C:\Mis Doc\ René\ Empleado.Scx”

Mantenimiento

\<Informe General

Comando

Repeort form “C:\Mis Doc\ René\ Informe1.Frx” preview

Listado

Creación de Informes:

Empresa de Estructuras Metálicas S.A.Av. Industrial 405

Código Apellido Nombre Fecha deNacimien

to

. . . .

Encabezado de PáginaCodiemp

Apelemp Nombemp

Naciemp . . . .

DetalleTeléfono: R.U.C. N°:

Fax N°:

C.E.O. SAN LUIS René J. Hercilla Valdivia

Page 40: 7531269 Separata de Visual FoxPro

VISUAL FOXPRO 40

Pie de Página

Ingresar los siguientes registros:Codiemp

Apelemp Nombemp

Naciemp

201202103205179150

Chacón MelgarTorres PinoMedina CarpioFuetes GaldosParedes TapiaJuárez Yucra

JoséEstrellaMarioCeciliaRicardoLucia

12/10/197511/11/197012/11/200111/09/200114/11/198715/08/1983

Creación de Consultas:Página Campos: Agregar todos.Página Combinación: (Nada)Página Filtro:

Nombre del campo

No

Criterio

Ejemplo M/m

Lógico

Consulta 1

Empleado.damaemp

= .F.

Consulta2

Empleado.codiemp

< 200

Consulta3

Empleado.apelemp

= “Juárez Yucra”

Consulta4

Empleado.naciempEmpleado.naciemp

<>

Ctod(“01/01/78”)Ctod(“12/31/74”)

And

Página Ordenado Por:Consulta1 ordenado por el campo: CodiempConsulta2 ordenado por el campo: NombempPágina Agrupar Por: (Nada)Página Varios: (Nada)

C.E.O. SAN LUIS René J. Hercilla Valdivia