Files
MBS/PROYECTO/cgdir/cgmn00000.4gl
T

162 lines
4.8 KiB
Plaintext

{
================================================================================
PROGRAMA : CGMN00000
OBJETIVO : Menu General del Sistema
de Contabilidad General.
PROGRAMADOR : Juan Fco. Soto (Johnny)
FECHA REALIZACION : Abril 1, 1993.
================================================================================
}
DATABASE marmotech
MAIN
DEFER INTERRUPT
CALL opciones_cgmn00000()
END MAIN
FUNCTION opciones_cgmn00000()
DEFINE opt char(2)
DEFINE p_user CHAR(9)
DEFINE luz CHAR(5)
OPTIONS
PROMPT LINE 8,
ERROR LINE 24
CALL pantalla()
DISPLAY " Menu General " AT 6,22
DISPLAY "cgmn00000" AT 4,3 ATTRIBUTE(blue)
DISPLAY "1- Contabilidad Gral cgmn00001" AT 10,6
DISPLAY "2- Cuentas Por Cobrar ccmn00000" AT 11,6
DISPLAY "3- Cuentas Por Pagar cpmn00000" AT 12,6
DISPLAY "4- Cheques cgmn00002" AT 13,6
DISPLAY "5- Periodos prd00000" AT 14,6
DISPLAY "6- Activo Fijo acmn00000" AT 15,6
DISPLAY "7- Saldos Iniciales CXC " AT 16,6
DISPLAY "8- Contabilidad De Costos ctmn00000" AT 17,6
DISPLAY "9- Liquidacion Mercancia lqmn00000" AT 18,6
DISPLAY "S- Retorna Menu Anterior" AT 19,6 ATTRIBUTE(blue)
LABEL vuelve:
PROMPT "OPCION: " attribute(blue) FOR OPT
LET opt = UPSHIFT(opt) clipped
IF opt != "S" THEN
SELECT unique usuario INTO p_user FROM seg0001
WHERE usuario = user
CALL seg000(p_user,opt,"cgmn00000") RETURNING luz
IF luz = "roja" THEN
ERROR "NO TIENE PERMISO PARA UTILIZAR OPCION"
GOTO vuelve
END IF
END IF
CASE
WHEN OPT = "1"
RUN "fglrun %FGLPROG%\\cgmn00001"
CLEAR SCREEN
CALL opciones_cgmn00000()
WHEN OPT = "2"
RUN "fglrun %FGLPROG%\\ccmn00000"
CLEAR SCREEN
CALL opciones_cgmn00000()
WHEN OPT = "3"
RUN "fglrun %FGLPROG%\\cpmn00000"
CLEAR SCREEN
CALL opciones_cgmn00000()
WHEN OPT = "4"
RUN "fglrun %FGLPROG%\\cgmn00002"
CLEAR SCREEN
CALL opciones_cgmn00000()
WHEN OPT = "5"
RUN "fglrun %FGLPROG%\\prd00000"
CLEAR SCREEN
CALL opciones_cgmn00000()
WHEN OPT = "6"
RUN "fglrun %FGLPROG%\\acmn00000"
CLEAR SCREEN
CALL opciones_cgmn00000()
WHEN OPT = "7"
RUN "isql -fr cctb1"
CLEAR SCREEN
CALL opciones_cgmn00000()
WHEN OPT = "8"
RUN "fglrun %FGLPROG%\\ctmn00000"
CLEAR SCREEN
CALL opciones_cgmn00000()
WHEN OPT = "9"
RUN "fglrun %FGLPROG%\\lqmn00000"
CLEAR SCREEN
CALL opciones_cgmn00000()
WHEN OPT = "S" or OPT = "s"
RETURN
OTHERWISE
CALL opciones_cgmn00000()
END CASE
END FUNCTION
FUNCTION pantalla()
DEFINE fecha CHAR(8),
hora char(5) ,
p_compania RECORD LIKE companias.*,
l SMALLINT
LET fecha = today USING "dd/mm/yy"
LET hora = time
SELECT * INTO p_compania.*
FROM companias
LET l = (80 - LENGTH(p_compania.nombre CLIPPED))/2
DISPLAY p_compania.nombre CLIPPED AT 4,l
ATTRIBUTE (REVERSE,blue)
DISPLAY fecha AT 4,70 ATTRIBUTE (blue)
DISPLAY "Sistema de Contabilidad General" AT 5,24
DISPLAY hora AT 6,73 ATTRIBUTE(blue)
CALL fgl_drawbox(5,79,3,1)
CALL fgl_drawbox(1,79,22,1)
END FUNCTION
{
-----------------------------------------------------------------------------
PROGRAMA : SEG000
OBJETIVO : Controlar el acceso de los usuarios a los sistemas de la
Empresa.
PROGRAMADOR : Ing. Juan Soto
FECHA : Marzo 17, 1994.
-----------------------------------------------------------------------------
}
FUNCTION seg000(usuarios,opt,p_menu)
DEFINE opt CHAR(2)
DEFINE luz CHAR(4)
DEFINE p_menu CHAR(9)
DEFINE usuarios CHAR(9)
DEFINE no_reg,p_opcion,numero SMALLINT
WHENEVER ERROR CONTINUE
OPTIONS
ERROR LINE 24
LET luz = "azul"
LET p_opcion = opt
SELECT count(*) INTO no_reg FROM seg0001
WHERE usuario = user
IF no_reg = 1 THEN
SELECT opcion INTO p_opcion FROM seg0001
WHERE usuario = user
END IF
IF p_opcion != 99 THEN
SELECT UNIQUE a.usuario FROM seg0001 a
WHERE a.usuario = usuarios and
a.opcion = p_opcion and
a.us_menu = p_menu
IF status = notfound THEN
LET status = 0
LET luz = "roja"
END IF
END IF
IF p_opcion = 99 THEN
LET luz = "azul"
END IF
RETURN luz
END FUNCTION