Files
MBS/PROYECTO/ccdir/ccprmt017.4gl
T

115 lines
3.1 KiB
Plaintext

{
------------------------------------------------------------------
PROGRAMA : TEPRMT001
OBJETIVO : Capturar, Modificar registros de la
Tabla de Comisiones.
PROGRAMADOR : Luis Miguel Soto Fuertes
FECHA REALIZACION : Febrero , 2026.
------------------------------------------------------------------
}
GLOBALS "ccprgb000.4gl"
DEFINE ctb9 RECORD
id INT ,
comisiones DECIMAL(12,2),
us_crea CHAR(50),
fech_crea DATE,
us_mod CHAR(50),
fech_mod DATE
END RECORD,adm CHAR(1)
MAIN
DEFER INTERRUPT
CALL arg_val(1) RETURNING usuarios
CALL arg_val(2) RETURNING clave
CALL startlog("ccprmt017.txt")
CONNECT TO "smarmotech" USER usuarios USING clave
CALL ccprmt017()
END MAIN
{FUNCTION ccprmt017()
CLEAR SCREEN
OPTIONS
FORM LINE 9,
ERROR LINE 23,
MESSAGE LINE 24,
COMMENT LINE 21
OPEN FORM ccfmmt017 FROM "cprmt017"
DISPLAY FORM ccfmmt017
MENU "OPCIONES"
ON ACTION adicionar
CLEAR FORM
CALL ccad017()
ON ACTION salir
EXIT MENU
END MENU
END FUNCTION }
FUNCTION ccprmt017()
CLEAR SCREEN
OPTIONS
FORM LINE 9,
ERROR LINE 23,
MESSAGE LINE 24,
COMMENT LINE 21
OPEN FORM ccfmmt017 FROM "ccfmmt017"
DISPLAY FORM ccfmmt017
INITIALIZE ctb9.* TO NULL
INPUT BY NAME ctb9.comisiones
BEFORE INPUT
LET adm ='N'
SELECT a.id,a.comisiones,a.us_crea,a.fech_crea,a.us_mod,a.fech_mod
INTO ctb9.id,ctb9.comisiones,ctb9.us_crea,ctb9.fech_crea,ctb9.us_mod,ctb9.fech_mod
FROM cctb00009 a
DISPLAY BY NAME ctb9.*
IF ctb9.id IS NOT NULL THEN
LET adm='S'
END IF
IF adm='N' THEN
SELECT max(a.id) INTO ctb9.id FROM cctb00009 a
if ctb9.id IS NULL THEN
LET ctb9.id=0
END IF
LET ctb9.id=ctb9.id+1
DISPLAY BY NAME ctb9.*
END IF
# ON ACTION guardar
AFTER INPUT
IF ctb9.comisiones IS NULL THEN
LET numero_msg = 16
CALL msg(numero_msg)
NEXT FIELD comisiones
END IF
BEGIN WORK
DISPLAY "comision", ctb9.comisiones
IF adm='S' THEN
UPDATE cctb00009 SET (comisiones,us_mod,fech_mod)
=(ctb9.comisiones,usuarios,getdate())
ELSE
INSERT INTO cctb00009
(id,comisiones,us_crea,fech_crea)
VALUES(ctb9.id,ctb9.comisiones,usuarios,getdate())
END IF
IF status<0 THEN
ROLLBACK WORK
CALL fgl_winmessage("error","NO SE PUDO INSERTAR LA DATA LA DATA","STOP")
ELSE
COMMIT WORK
CALL fgl_winmessage("ERROR","ACTUALIZACION EXITOSA","")
END IF
ON ACTION CANCEL
LET int_flag = FALSE
CLEAR FORM
RETURN
END INPUT
END FUNCTION