Files
MBS/PROYECTO/nodir/noprmt014.4gl
T

104 lines
2.7 KiB
Plaintext

{
------------------------------------------------------------------
PROGRAMA : NOPRMT014
OBJETIVO : Elimina Novedades de la Nomina.
PROGRAMADOR : Tadeo A. Ferreras
FECHA REALIZACION : Enero 12, 1994
------------------------------------------------------------------
}
GLOBALS "noprgb000.4gl"
DEFINE num_nomi INTEGER
DEFINE tipo_emp CHAR(1)
DEFINE cod_mov,num_emp SMALLINT
DEFINE reg_elim RECORD
num_nomi INTEGER,
tipo_emp CHAR(1),
cod_mov SMALLINT,
num_emp SMALLINT
END RECORD
FUNCTION noprmt014()
OPTIONS
FORM LINE 8,
PROMPT LINE 23
LET int_flag = FALSE
LET formulario = formulario CLIPPED,"nofmmt014"
OPEN FORM nofmmt014 FROM "nofmmt014"
DISPLAY FORM nofmmt014
CALL pantalla()
DISPLAY "noprmt014" AT 4,3
DISPLAY "Eliminar Novedades de la Nomina" AT 6,24
INPUT BY NAME num_nomi,tipo_emp,cod_mov
AFTER FIELD num_nomi
IF num_nomi IS NULL THEN
LET numero_msg = 16
CALL msg(numero_msg)
NEXT FIELD num_nomi
END IF
AFTER FIELD tipo_emp
IF tipo_emp IS NULL THEN
LET numero_msg = 16
CALL msg(numero_msg)
NEXT FIELD tipo_emp
END IF
AFTER FIELD cod_mov
IF cod_mov IS NULL THEN
LET numero_msg = 16
CALL msg(numero_msg)
NEXT FIELD cod_mov
END IF
END INPUT
IF int_flag THEN
LET numero_msg = 2
CALL msg(numero_msg)
LET int_flag = FALSE
RETURN
END IF
CONSTRUCT criterio ON a.num_emp FROM num_emp
LET selec =
"SELECT a.num_nomi,a.tipo_emp,a.cod_mov,a.num_emp ",
"FROM notb00008 a ",
"WHERE a.num_nomi = ? AND a.tipo_emp = ? AND a.cod_mov = ? AND ",
criterio CLIPPED," ORDER BY 1 "
DISPLAY "Buscando Informacion ... Espere Por Favor" AT 17,14
PREPARE comando FROM selec
DECLARE busca CURSOR FOR comando
OPEN busca USING num_nomi,tipo_emp,cod_mov
PROMPT "Desea Eliminar Registro [S/N]" FOR CHAR opcion
IF opcion = "s" OR opcion = "S" THEN
LET idx = 1
FOREACH busca INTO reg_elim.*
DELETE FROM notb00008 WHERE @num_nomi = reg_elim.num_nomi AND
@tipo_emp = reg_elim.tipo_emp AND
@cod_mov = reg_elim.cod_mov AND
@num_emp = reg_elim.num_emp
DISPLAY "Empleado Eliminado... ",reg_elim.num_emp USING "&&&"
AT 18,14
LET idx = idx + 1
END FOREACH
LET numero_msg = 13
CALL msg(numero_msg)
ELSE
LET numero_msg = 2
CALL msg(numero_msg)
CLOSE busca
RETURN
END IF
END FUNCTION