SUBMODULO III : Elaborar sistemas de información mediante un lenguaje de programación visual


Comandos de visual FoxPro 

Create: Crea una nueva tabla de Visual FoxPro.

Close data base: cierra una base de datos.

List: Muestra continuamente información de tabla o de entorno.

Cancel: Finaliza la ejecución del archivo de programa actual de Visual FoxPro.

Append: Agrega uno o más registros nuevos al final de una tabla.

Close All: cierra la base de datos activa y todas sus tablas.

Clear: Libera de la memoria el elemento o los elementos especificados.

Store: Almacena datos en una variable, en una matriz o en un elemento de matriz.

Use: Abre una tabla y sus archivos de índice asociados, o una vista SQL.

Index: Crea un archivo de índice para mostrar registros de tabla y tener acceso a los mismos en un orden lógico.

Sort: Ordena los registros de la tabla seleccionada actualmente y envía los registros ordenados a una tabla nueva.

Browse: Abre la ventana Examinar y muestra los registros de la tabla actual o seleccionada.

CREATE (Comando)


Crea una nueva tabla de Visual FoxPro.
Especifica el nombre de la tabla que desea crear.
Presenta el cuadro de diálogo Crear, que le pide el nombre para la tabla que se va a crear.


CLOSE (Comandos)


Cierra todas las bases de datos, tablas e índices abiertos en la sesión de datos actual y en todas las sesiones de datos inactivas y selecciona el área de trabajo 1. CLOSE ALL también cierra los archivos abiertos con las funciones de archivo de bajo nivel FCREATE ( ) y FOPEN ( ). CLOSE ALL no cierra un archivo abierto con SET PRINT.

CLOSE ALL también cierra lo siguiente: 

Diseñador de formularios
Administrador de proyectos
Diseñador de etiquetas
Diseñador de informes
Diseñador de consultas


CLOSE ALL no cierra lo siguiente: 
La ventana Comandos
La ventana Depuración
Ayuda
La ventana Seguimiento


CLOSE DATABASES [ALL]

Cierra la base de datos actual de la sesión de datos actual, así como sus tablas. Si no hay ninguna base de datos activa, se cierran todas las tablas libres, los índices y los archivos de formato abiertos en todas las áreas de trabajo y se selecciona el área de trabajo 1.

ALL

Especifica que, en la sesión de datos actual y en todas las sesiones de datos inactivas, se cierre lo siguiente:
· Todas las bases de datos abiertas y sus tablas.
· Todas las tablas libres abiertas.
· Todos los índices y archivos de formato de todas las áreas de trabajo.


LIST (Comandos) 

El alcance predeterminado de LIST es ALL (todos los registros).
LIST no le avisa después de llenar con información la ventana principal de Microsoft Visual FoxPro o una ventana definida por el usuario.
LIST no muestra los registros marcados para su eliminación cuando SET DELETED esté establecido en ON.

Modify structure: Muestra el Diseñador de tablas, que permite modificar la estructura de una tabla.

ejemplo: DISPLAY STRUCTURE [IN nWorkArea | cTableAlias]
   [TO PRINTER [PROMPT] | TO FILE FileName] [NOCONSOLE]

Modify command: Abre una ventana de edición de texto y le permite modificar o crear un archivo de programa.

ejemplo: MODIFY COMMAND [FileName | ?] [NOEDIT] [NOMENU] [NOWAIT]
   [RANGE nStartCharacter, nEndCharacter] [[WINDOW WindowName1]
   [IN [WINDOW] WindowName2 | IN SCREEN]] [AS nCodePage] [SAME]
   [SAVE]

Delete: Marca los registros que se van a eliminar.

ejemplo: DELETE [Scope] [FOR lExpression1] [WHILE lExpression2]
   [IN nWorkArea | cTableAlias] [NOOPTIMIZE]

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.

zap: Elimina todos los registros de la tabla actual y deja sólo la estructura de la tabla

ejemplo: ZAP [IN nWorkArea | cTableAlias]

pack: Borra definitivamente todos los registros marcados para eliminar de la tabla actual y reduce el tamaño de un archivo memo asociado a la tabla.

ejemplo:PACK [MEMO] [DBF] [Tablename ] [IN nWorkarea | cTableAlias]

locate: Busca secuencialmente en la tabla el primer registro que coincida con la expresión lógica especificada.

ejemplo:LOCATE [FOR lExpression1] [Scope] [WHILE] [NOOPTIMIZE]
   [IN nWorkArea | cTableAlias]

go top:Sitúa el puntero de registro en el primer registro de la tabla. 


go bottom: Sitúa el puntero de registro en el último registro de la tabla. 

1.- En este primer ejercicio vamos a escribir un programa que lea tres números y determine el numero mayor el numero central y el numero menor. Debemos asumir que los tres números son siempre distintos. 


Close ALL
Clear
?"PROGRAMADOR: Alan Daniel Guerrero Juarez"
?""
Input "INTRODUCA EL VALOR DE A" TO nA
Input "INTRODUSCA EL VALOR DE B" TO nB
Input "INTRODUSCA EL VALOR DE C" TO nC
IF nA > nB Then
nMay = nA
nMen = nB
Else
nMay = nB
nMen = nA
Endif
IF nC > nMay Then
nCen = nMay
nMay = nC
Else
IF nC > nMen   Then
nCen = nC
Else
nCen = nMen
nMen = nC
endif
Endif
? "MAYOR =" + STR(nMay)
? "CENTRAL =" + STR(nCen)
? "MENOR =" + STR(nMen)

Un restaurante ofrece un descuento del 10%para consumos mayores $30.00 y $50.00; un descuento del 20% para consumos mayores de $50.00; para todos los demás no se aplica ningún tipo de descuento. El ejercicio consiste en elaborar un programa  que permite determinar el importe a pagar por consumidor .


close all
clear
?"PROGRAMADOR: Alan Daniel Guerrero Juarez"
?""
do while .T.
input "consumo:" to nconsumo
if type ("nconsumo") = "N"
exit
endif
enddo
do case
case nconsumo >=30 and nconsumo <=50
nimporte = nconsumo * 0.9
case nconsumo >50
nimporte = nconsumo * 0.8
otherwise
nimporte = nconsumo
endcase
? "importe a pagar :" + str(nimporte)

3.- El ejercicio consiste en escribir un programa que lea "n" enteros y calcule la suma total, la media aritmética, el máximo y el mínimo de los datos. 


Close all 
Clear 
?"PROGRAMADOR: Alan Daniel Guerrero Juarez"
?""
input "ingrese cantidad de numeros" to nN 
declare avector (nN) 
for nI = 1 to nN 
input "numero [" + str(nI) +"]?" to avector (nI)
next 
nmax = avector [1]
nmin = avector [1]
nsuma =0 
for nI = 1 to nN 
nsuma = nsuma + avector [nI]
if avector [nI] > nmax then 
nmax = avector(nI)
endif
if avector [nI] > nmin then 
nmin = avector(nI)
endif  
next 
nmedia = nsuma /nN 
?"suma = " + str(nsuma) 
?"media = " + str(nmedia,10,2)
?"maximo = " + str(nmax) 
?"minimo = " + str(nmin)

4.- A continuación vamos a escribir una función que reciba como argumento de entrada una cadena de caracteres y la devuelva en forma inversa, Por ejemplo si ingresa la cadena CORAZÓN deberá retornar NOZAROC.   



close all 
clear 
?"PROGRAMADOR: Alan Daniel Guerrero Juarez"
?""
accept "ingrese una cadena?" to ccadena 
? "cadena invertida =" + cadinv(ccadena)
function cadinv 
parameters ccadena 
nN = len (alltrim(ccadena)) 
declare ctemporal (nN)
for nI = 1 to nN 
ctemporal (nI) = substr(ccadena,nI,1)
next 
cinvertida =""
for nJ= nN TO 1 STEP -1
cinvertida = cinvertida + ctemporal(nJ)
next J 
return cinvertida 


No hay comentarios:

Publicar un comentario