Files
2026-09-22 20:38:51 -04:00

179 lines
5.1 KiB
Plaintext

{
------------------------------------------------------------------------------
PROGRAMA : CGPRMT011
OBJETIVO : Mantenimiento de Conciliaciones Bancarias
PROGRAMADOR : Ing. Juan F. Soto
FECHA REALIZACION : Diciembre 28, 1993.
------------------------------------------------------------------------------
}
GLOBALS
"cgprgb000.4gl"
DEFINE concilia RECORD
cuenta_no CHAR(8),
descripcion LIKE cgtb00001.descripcion,
cheque_no INTEGER,
fecha DATE,
portador LIKE cgtb00005.portador,
monto LIKE cgtb00005.monto,
status_t CHAR(1),
us_crea CHAR(9),
fech_crea LIKE cgtb00005.fech_crea,
us_mod CHAR(9),
fech_mod LIKE cgtb00005.fech_crea
END RECORD
DEFINE cuenta_no1 CHAR (8)
DEFINE descrip_st CHAR (15)
MAIN
DEFER INTERRUPT
CALL ARG_VAL(1) RETURNING usuarios
CALL ARG_VAL(2) RETURNING clave
CALL ARG_VAL(4) RETURNING impresor
CONNECT to "decomarmol" USER usuarios USING clave
SELECT a.* INTO p_compania.* FROM companias a
CALL cgprmt011()
END MAIN
FUNCTION cgprmt011()
OPTIONS
FORM LINE 9,
ERROR LINE 24,
COMMENT LINE 23
#CALL pantalla()
OPEN FORM cgfmmt011 FROM "cgfmmt011"
DISPLAY FORM cgfmmt011
DISPLAY "cgprmt011" AT 4,3
DISPLAY "Conciliacion Bancaria" AT 6,30
CLEAR FORM
MENU "OPCION"
COMMAND "Conciliar" "<Esc> Conciliacion <Ctrl-C> Cancela Operacion"
LET int_flag = false
CALL cgpcad11()
COMMAND "Salir"
EXIT MENU
END MENU
END FUNCTION
FUNCTION cgpcad11()
# Captura de informacion
INITIALIZE concilia.* TO NULL
INPUT BY NAME concilia.* WITHOUT DEFAULTS ATTRIBUTE (blue )
BEFORE FIELD cuenta_no
LET concilia.cuenta_no = cuenta_no1
DISPLAY BY NAME concilia.cuenta_no
AFTER FIELD cuenta_no
IF concilia.cuenta_no is not null THEN
SELECT UNIQUE a.descripcion INTO concilia.descripcion
FROM cgtb00001 a, cgtb00012 b
WHERE a.cuenta_no =b.cuenta_no AND a.cuenta_no = concilia.cuenta_no AND
a.status_t is null
# Chequeo si el registro existe, si existe desplega las informaciones
IF status = notfound THEN
LET numero_msg = 12
CALL msg(numero_msg)
DISPLAY BY NAME concilia.*
INITIALIZE concilia.* TO NULL
NEXT FIELD cuenta_no
END IF
DISPLAY BY NAME concilia.descripcion
END IF
LET cuenta_no1 = concilia.cuenta_no
AFTER FIELD cheque_no
IF concilia.cheque_no is null THEN
LET numero_msg = 16
CALL msg(numero_msg)
NEXT FIELD cheque_no
END IF
SELECT a.fecha,a.portador,a.monto,a.status_t,a.us_crea,a.fech_crea,
a.us_mod,a.fech_mod
INTO concilia.fecha,concilia.portador,concilia.monto,concilia.status_t,
concilia.us_crea,concilia.fech_crea,concilia.us_mod,concilia.fech_mod
FROM cgtb00005 a
WHERE a.cuenta_no = concilia.cuenta_no and a.cheque_no = concilia.cheque_no
IF status = notfound THEN
LET numero_msg = 177
CALL msg(numero_msg)
NEXT FIELD cheque_no
END IF
#-----------------------------------------
# Iniciliza el Status con C
#-----------------------------------------
#LET concilia.status_t ="C"
LET descrip_st = null
CASE
WHEN concilia.status_t = "E"
LET descrip_st = "ELIMINADO"
LET numero_msg = 1001
CALL msg(numero_msg)
NEXT FIELD cheque_no
EXIT CASE
WHEN concilia.status_t = "C"
LET descrip_st = "CONCILIADO"
LET numero_msg = 1000
CALL msg(numero_msg)
NEXT FIELD cheque_no
EXIT CASE
END CASE
Let concilia.status_t = "C"
DISPLAY BY NAME concilia.fecha,concilia.portador,concilia.monto,
concilia.status_t,descrip_st,concilia.fech_crea,
concilia.us_crea,concilia.us_mod,concilia.fech_mod
# IF concilia.status_t IS NOT NULL OR concilia.status_t != " " THEN
# RETURN
# END IF
AFTER FIELD status_t
IF concilia.status_t IS NOT NULL THEN
IF concilia.status_t != "C" THEN
LET numero_msg = 34
CALL msg(numero_msg)
NEXT FIELD status_t
END IF
LET descrip_st = "CONCILIADO"
DISPLAY BY NAME descrip_st
END IF
AFTER INPUT
IF int_flag THEN
LET numero_msg = 2
CALL msg(numero_msg)
LET int_flag = false
RETURN
END IF
UPDATE cgtb00005 set (status_t,us_mod,fech_mod) =
(concilia.status_t,SUSER_SNAME(),GETDATE())
WHERE cheque_no = concilia.cheque_no and cuenta_no = concilia.cuenta_no
CALL integridad()
IF bandera = 1 THEN
LET bandera = 0
RETURN
END IF
LET numero_msg = 1
CALL msg(numero_msg)
INITIALIZE concilia.* TO NULL
CLEAR FORM
NEXT FIELD cuenta_no
EXIT INPUT
END INPUT
END FUNCTION