Commit inicial: fuentes MBS ERP (Genero 6) + .gitignore + docs/SETUP_PC_MBS.md
This commit is contained in:
@@ -0,0 +1,194 @@
|
||||
{
|
||||
-----------------------------------------------------------------------------
|
||||
PROGRAMA : CGPRMT009
|
||||
OBJETIVO : Mantenimiento Codigos Cronologicos de Beneficiarios de
|
||||
los Cheques de Pago.
|
||||
REALIZADO POR : Ing. Juan F. Soto
|
||||
FECHA : Diciembre 4, 1995.
|
||||
-----------------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "cgprgb000.4gl"
|
||||
|
||||
FUNCTION cgprmt009()
|
||||
|
||||
OPTIONS
|
||||
FORM LINE 8,
|
||||
ERROR LINE 24,
|
||||
COMMENT LINE 22,
|
||||
PROMPT LINE 23
|
||||
CALL pantalla()
|
||||
OPEN FORM cgfmmt009 FROM "cgfmmt009"
|
||||
DISPLAY FORM cgfmmt009
|
||||
DISPLAY "cgprmt009" AT 4,3
|
||||
DISPLAY "Cronologico Beneficiarios" AT 6,25
|
||||
|
||||
MENU "OPCION"
|
||||
COMMAND "Adicionar"
|
||||
"<Esc> Adiciona Registro <Ctrl-C> Cancela Operacion"
|
||||
CALL cgpcad009()
|
||||
COMMAND "Consultar-modificar"
|
||||
"<Esc> Busca Registro <Ctrl-C> Cancela Operacion"
|
||||
CALL cgpcmf009()
|
||||
COMMAND "Salir"
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION cgpcad009()
|
||||
DEFINE longi SMALLINT
|
||||
INITIALIZE cronologico.* TO NULL
|
||||
|
||||
INPUT BY NAME cronologico.* WITHOUT DEFAULTS
|
||||
AFTER FIELD cod_cro
|
||||
IF cronologico.cod_cro is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_cro
|
||||
END IF
|
||||
|
||||
SELECT unique a.*
|
||||
INTO cronologico.*
|
||||
FROM cgtb00031 a
|
||||
WHERE a.cod_cro = cronologico.cod_cro
|
||||
|
||||
IF status != notfound THEN
|
||||
LET numero_msg = 12
|
||||
CALL msg(numero_msg)
|
||||
DISPLAY BY NAME cronologico.*
|
||||
INITIALIZE cronologico.* TO NULL
|
||||
NEXT FIELD cod_cro
|
||||
END IF
|
||||
|
||||
LET longi = LENGTH(cronologico.cod_cro)
|
||||
IF longi < 8 THEN
|
||||
LET numero_msg = 77
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_cro
|
||||
END IF
|
||||
AFTER FIELD beneficiario
|
||||
IF cronologico.beneficiario is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD beneficiario
|
||||
END IF
|
||||
AFTER INPUT
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = false
|
||||
RETURN
|
||||
END IF
|
||||
INSERT INTO cgtb00031 VALUES(cronologico.*)
|
||||
UPDATE cgtb00031 set us_crea = user,
|
||||
fech_crea = current
|
||||
WHERE cod_cro = cronologico.cod_cro
|
||||
LET numero_msg = 1
|
||||
CALL msg(numero_msg)
|
||||
|
||||
END INPUT
|
||||
|
||||
END FUNCTION
|
||||
|
||||
## Funcion para consultar/modificar una entrada de diario
|
||||
FUNCTION cgpcmf009()
|
||||
|
||||
## SE PREPARA EL CRITERIO PARA CONSULTAR/MODIFICAR UN REGISTRO
|
||||
CONSTRUCT BY NAME CRITERIO ON cod_cro,beneficiario
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
CLEAR FORM
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET selec = "SELECT UNIQUE * FROM cgtb00031 WHERE ",criterio clipped,
|
||||
" ORDER BY cod_cro"
|
||||
|
||||
PREPARE busca FROM selec
|
||||
DECLARE datos SCROLL CURSOR FOR busca
|
||||
OPEN datos
|
||||
|
||||
FETCH FIRST datos INTO cronologico.*
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME cronologico.*
|
||||
LABEL vuelve:
|
||||
MENU "OPCION"
|
||||
COMMAND "Siguiente"
|
||||
"Presenta en pantalla el proximo registro encontrado"
|
||||
FETCH NEXT datos INTO cronologico.*
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
DISPLAY BY NAME cronologico.*
|
||||
|
||||
COMMAND "Anterior"
|
||||
"Presenta en pantalla el registro anterior encontrado"
|
||||
FETCH PREVIOUS datos INTO cronologico.*
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME cronologico.*
|
||||
|
||||
COMMAND "Primero"
|
||||
"Presenta en pantalla el primer registro encontrado"
|
||||
FETCH FIRST datos INTO cronologico.*
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
DISPLAY BY NAME cronologico.*
|
||||
|
||||
COMMAND "Ultimo"
|
||||
"Presenta en pantalla el ultimo registro encontrado"
|
||||
FETCH LAST datos INTO cronologico.*
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
DISPLAY BY NAME cronologico.*
|
||||
|
||||
COMMAND "Escoger"
|
||||
"<Esc> Actualiza Registro <Ctrl-C> Cancela Operacion"
|
||||
INPUT BY NAME cronologico.beneficiario WITHOUT DEFAULTS
|
||||
AFTER FIELD beneficiario
|
||||
IF cronologico.beneficiario is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD beneficiario
|
||||
END IF
|
||||
AFTER INPUT
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = false
|
||||
RETURN
|
||||
END IF
|
||||
UPDATE cgtb00031 set beneficiario = cronologico.beneficiario,
|
||||
us_mod = user,
|
||||
fech_mod = current
|
||||
WHERE cod_cro = cronologico.cod_cro
|
||||
|
||||
EXIT INPUT
|
||||
END INPUT
|
||||
## AQUI SE REALIZA LA ANULACION DE UN REGISTRO
|
||||
COMMAND KEY ("N") "aNular"
|
||||
UPDATE cgtb00031 set status_t = "E",
|
||||
us_mod = user,
|
||||
fech_mod = current
|
||||
WHERE cod_cro = cronologico.cod_cro
|
||||
|
||||
COMMAND "Retornar"
|
||||
CLEAR FORM
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
Reference in New Issue
Block a user