PROGRAMACIÓN VISUAL
EJERCICIOS
MARCO VINICIO
MALDONADO QUINALUISA
Semipresencial
HORARIO: SÁBADO
Nombre: consu_epm.prg
CODIFICACION:
PROCEDURE ingreso_cedula
CLEAR
@08,15 SAY "Consulta de Empleados" font "Arial",20 color w/b++
@14,10 say "Ingrese Cédula" get ced_aux picture "9999999999"
READ
RETURN
PROCEDURE verifica_cedula
DIMENSION a(10)
STORE 0 TO si,sp,st,di,dv,i,aux
STORE SPACE(1) TO auxi
FOR i=1 TO 10
a(i)=0
ENDFOR
FOR i=1 TO 10
auxi=SUBSTR(ced_aux,i,1)
a(i)=VAL(auxi)
ENDFOR
FOR i=1 TO 9 STEP 2
aux=a(i)*2
IF aux>9
aux=aux-9
ENDIF
si=si+aux
ENDFOR
sp=0
FOR i=2 TO 8 STEP 2
sp=sp+a(i)
ENDFOR
st=si+sp
di=((INT(st/10))+1)*10
dv=di-st
IF dv=10
dv=0
ENDIF
IF a(10)=dv
veri=0
ELSE
veri=1
ENDIF
RETURN
PROCEDURE busca
SELECT emplea
GO top
band=0
SCAN FOR ced_emp = ced_aux
*** Presenta Datos
band=1
@16,10 say "Empleado : " +nom_emp
@18,10 say "Direccion : " +dir_emp
@20,10 say "Telefono : " +tel_emp
@22,10 say "E-mail : " +ema_emp
ENDSCAN
RETURN
PROCEDURE continua
STORE SPACE(10) TO ced_aux
STORE 0 TO band,veri,siga
siga=MESSAGEBOX("Continua...",4+32,"UNAQ")
RETURN
PANTALLA:
Nombre: modi_emp.prg
CODIFICACION:
siga2=0
DO WHILE siga2<>6
DO presenta_ingresa_datos
DO graba_datos
ENDDO
ELSE
=MESSAGEBOX("CEDULA NO EXISTE",0+64,"UNAQ")
ENDIF
ENDIF
DO continua
ENDDO
CLOSE TABLES
RETURN
PROCEDURE ingreso_clave
CLEAR
@10,14 say "Actualización de Datos" font "Arial",20 color w/b++
@16,08 say "Ingreso Cedula: " get ced_aux picture "9999999999"
READ
SELECT emplea
GO TOP
SCAN FOR ced_emp=ced_aux
flag=0
ENDSCAN
RETURN
PROCEDURE busca_informacion
SELECT emplea
GO top
band=0
DO WHILE !EOF() AND band=0
IF ced_emp=ced_aux
band=1
nom_aux=nom_emp
dir_aux=dir_emp
tel_aux=tel_emp
ema_aux=ema_emp
ENDIF
SKIP
ENDDO
RETURN
PROCEDURE presenta_ingresa_datos
@18,8 say "Empleado: " get nom_aux picture "@!"
@20,8 say "Direccion: " get dir_aux picture "@!"
@22,8 say "Telefono: " get tel_aux picture "999999999"
@24,8 say "Email: " get ema_aux
READ
RETURN
PROCEDURE continua
STORE 0 TO siga,band,siga2,flag
STORE SPACE(10) TO ced_aux
STORE SPACE(40) TO nom_aux,dir_aux
STORE SPACE(9) TO tel_aux
STORE SPACE(30) TO ema_aux
siga=MESSAGEBOX("Desea continuar...",4+32,"UNAQ")
RETURN
PANTALLA:
Nombre:
CODIFICACION:
ENDIF
DO continua
ENDDO
CLOSE TABLES
RETURN
PROCEDURE ingreso_clave
CLEAR
@10,20 say "Eliminacion de Registros" font "Arial",20 color w/b++
@16,10 say "Ingrese Cedula: " get ced_aux picture "9999999999"
READ
flag=0
SELECT emplea
GO TOP
SCAN FOR ced_emp=ced_aux
flag=0
ENDSCAN
RETURN
PROCEDURE busca_clave
SELECT emplea
band=0
SCAN FOR ced_emp=ced_aux
band=1
@26,12 say "Empleado : " +nom_emp
@28,12 say "Direccion : " +dir_emp
@30,12 say "Telefono : " +tel_emp
@32,12 say "E-mail : " +ema_emp
ENDSCAN
RETURN
PROCEDURE elimina_registro
elim=0
elim=MESSAGEBOX("Desea Eliminar...",4+32,"UNAQ")
IF elim=6
DELETE FOR ced_emp = ced_aux
=MESSAGEBOX("Registro fue Eliminado",0+48,"UNAQ")
ELSE
=MESSAGEBOX("Eliminacion Cancelada",0+48,"UNAQ")
ENDIF
RETURN
PROCEDURE continua
STORE 0 TO band,siga,flag
STORE SPACE(10) TO ced_aux
siga=MESSAGEBOX("Continuar",4+32,"UNAQ")
RETURN
PANTALLA:
Nombre: recu_emp.prg
CODIFICACION:
PROCEDURE ingreso_clave
CLEAR
@10,20 say "Recuperacion de Registros" font "Arial",20 color w/b++
@16,10 say "Ingrese Cedula: " get ced_aux picture "9999999999"
READ
flag=1
SELECT emplea
GO TOP
SCAN FOR ced_emp=ced_aux
flag=0
ENDSCAN
RETURN
PROCEDURE busca_clave
SELECT emplea
band=0
SCAN FOR ced_emp=ced_aux
band=1
@26,12 say "Empleado : " +nom_emp
PROCEDURE recupera_registro
recu=0
recu=MESSAGEBOX("Desea recuperar...",4+32,"UNAQ")
IF recu=6
recall FOR ced_emp = ced_aux
=MESSAGEBOX("Registro fue Recuperado",0+48,"UNAQ")
ELSE
=MESSAGEBOX("Recuperacion Cancelada",0+48,"UNAQ")
ENDIF
RETURN
PROCEDURE continua
STORE 0 TO band,siga,flag
STORE SPACE(10) TO ced_aux
siga=MESSAGEBOX("Continuar",4+32,"UNAQ")
RETURN
PANTALLA:
Nombre: menu_emp.prg
CODIFICACION:
PANTALLA: