Вы находитесь на странице: 1из 2

***************************** ** abm_equipo.PRG - Programa de Inclusion de Registros ** Archivo Utilizado : Equipos.DBF ***************************** CLEAR ALL SET DATE BRITISH SET CENTURY on SET DELETED on * Dimencionar Vector DIMENSION T(3)

T(1)="ELECTRICO"

T(2)="ELECTRONICO"

T(3)="INFORMATICO"

*Ventana a utilizar DEFINE WINDOW abm FROM 05,05 TO 25,75;

TITLE "Alta, Baja y Modificación de Equipos"; SYSTEM FLOAT ACTIVATE WINDOWS abm DO WHILE .T. CLEAR ***Definicion de Variables

STORE Space(15) STORE 0 STORE Space(30)

 

TO X_serie TO x_tipo TO x_des

STORE ctod("

/

/

") TO x_fe

STORE 0

TO X_Opci

** Impresión de Fecha en la ventana

@ 02,40 say "Fecha del Sistema "+ dtoc(date())

** Solicitud de Nro. de Serie del Equipo

@ 06,05 SAY "Nro. de Serie : " GET X_serie PICTURE "@!"; VALID !Empty(X_serie); MESSAGE "Nro. de serie del Equipo - escriba FIN -> Salir"; ERROR "No puede ser espacio"

READ

IF LASTKEY() = 27&& si presiona ESC vuelve a iniciar el proceso loop ENDIF

** Verificando si el usuario elige salir IF x_serie = "FIN" exit endif

** Consulta SQL para verificar si existe la serie ** SELECT * FROM equipos WHERE serie = x_serie INTO CURSOR consulta IF _tally>0 && En caso que exista la serie

@ 08,05 SAY "Tipo

: " + TRANSFORM(consulta.tipo,"9")

*** Impresion de la Descripcin Cargada en el Vector

@ 08,25 say T(consulta.tipo)

@ 10,05 SAY "Descripcion : " + consulta.descrip

@ 12,05 SAY "Fecha de adquisicion : " + DTOC(consulta.fecha_adq)

X_opci = MESSAGEBOX("Desea Eliminar el registro",4+32,"Borrado de Registros" ) IF LASTKEY() = 27 LOOP ENDIF

IF X_Opci = 6 && Opción de Eliminar DELETE FROM equipos WHERE equipos.serie = x_serie WAIT WINDOW ('Registro Eliminado con exito') NOWAIT loop ENDIF

X_opci = MESSAGEBOX("Desea Modificar el registro",4+32,"Modificacion de Registros" ) && Opción de Modificar IF X_Opci = 6

STORE consulta.tipo

TO x_tipo

STORE consulta.descrip

TO x_des

STORE consulta.fecha_adq TO x_fe *** Primero muestra todos los datos

@ 08,05 SAY "Tipo

: " + TRANSFORM(consulta.tipo,"9")

*** Impresion de la Descripcin Cargada en el Vector

@ 08,25 say T(consulta.tipo)

@ 10,05 SAY "Descripcion : " + consulta.descrip

@ 12,05 SAY "Fecha de adquisicion : " + DTOC(consulta.fecha_adq)

*** ahora hace los gets permitidos

WAIT WINDOW "1= ELECTRICO, 2= ELECTRONICO, 3= INFORMATICO" NOWAIT

@ 08,05 SAY "Tipo

: " get x_tipo pict "9";

range 1,3 && Solo permite rango 1 a 3 *** Impresion de la Descripcin Cargada en el Vector READ

IF LASTKEY() = 27&& si presiona ESC vuelve a iniciar el proceso loop ENDIF

*** Impresion de la Descripcin Cargada en el Vector

@ 08,25 say T(x_tipo)

@ 10,05 SAY "Descripcion : " get x_des valid !empty(x_des)

@ 12,05 SAY "Fecha de adquisicion : " get x_fe; valid x_fe < date(); error "Debe ser menor a la del sistema"

READ IF LASTKEY() = 27&& si presiona ESC vuelve a iniciar el proceso loop ENDIF UPDATE equipos SET tipo = x_tipo, descrip = x_des, fecha_adq = x_fe WHERE equipos.se

rie = x_serie ELSE LOOP ENDIF

ENDIF

WAIT WINDOW "1= ELECTRICO, 2= ELECTRONICO, 3= INFORMATICO" NOWAIT

X_TIPO = 0

@ 08,05 SAY "Tipo

&& para evitar equivocación y pulsar enter directamente

: " get x_tipo pict "9"; range 1,3 && Solo permite rango 1 a 3

read IF LASTKEY() = 27&& si presiona ESC vuelve a iniciar el proceso loop ENDIF

*** Impresion de la Descripcin Cargada en el Vector

@ 08,25 say T(x_tipo)

@ 10,05 SAY "Descripcion : " get x_des valid !empty(x_des)

@ 12,05 SAY "Fecha de adquisicion : " get x_fe; valid x_fe < date(); error "Debe ser menor a la del sistema"

READ IF LASTKEY() = 27&& si presiona ESC vuelve a iniciar el proceso loop ENDIF

X_opci = MESSAGEBOX("Desea Grabar el registro",4+32,"Inclusion de Registros" ) IF LASTKEY() = 27 OR X_Opci # 6 LOOP ENDIF

IF X_Opci = 6 && Opción de Grabar INSERT INTO equipos (serie, tipo, descrip, fecha_adq) VALUES (x_serie, x_tipo, X_des, x_fe) ENDIF ENDDO DEACTIVATE WINDOWS abm CLOSE DATABASES CLEAR ALL RETURN