236 lines
8.1 KiB
Plaintext
236 lines
8.1 KiB
Plaintext
|
|
{-------------------------------------------------------------------------
|
|
PROGRAMA : MASTER
|
|
OBJETIVO : MENU GENERAL DE LA COMPANIA
|
|
PROGRAMADOR : JUAN F. SOTO
|
|
FECHA : AGOSTO 1997
|
|
ASESOR : JOSE ALFREDO PAULINO
|
|
------------------------------------------------------------------------
|
|
}
|
|
DATABASE marmotech
|
|
GLOBALS
|
|
DEFINE p_usuario CHAR(9)
|
|
DEFINE p_user CHAR(9)
|
|
DEFINE luz CHAR(4)
|
|
END GLOBALS
|
|
MAIN
|
|
DEFER INTERRUPT
|
|
#CALL logo()
|
|
CLEAR SCREEN
|
|
SELECT unique a.usuario INTO p_usuario FROM seg0001 a
|
|
WHERE a.usuario = user
|
|
LET p_usuario = upshift(p_usuario)
|
|
CALL pantalla()
|
|
CALL mask()
|
|
|
|
MENU "OPCIONES"
|
|
COMMAND "1"
|
|
SELECT unique a.usuario INTO p_user FROM seg0001 a
|
|
WHERE a.usuario = user
|
|
CALL seg000(p_user,"1","master") RETURNING luz
|
|
IF luz = "roja" THEN
|
|
ERROR "NO TIENE PERMISO PARA UTILIZAR OPCION"
|
|
END IF
|
|
DISPLAY "Ejecutando Opcion 1" AT 10,53 ATTRIBUTE (BLINK)
|
|
IF luz = "azul" THEN
|
|
RUN "fglrun %FGLPROG%\\almn00000"
|
|
DISPLAY " " AT 10,53
|
|
END IF
|
|
COMMAND "2"
|
|
SELECT unique a.usuario INTO p_user FROM seg0001 a
|
|
WHERE a.usuario = user
|
|
CALL seg000(p_user,"2","master") RETURNING luz
|
|
IF luz = "roja" THEN
|
|
ERROR "NO TIENE PERMISO PARA UTILIZAR OPCION"
|
|
END IF
|
|
IF luz = "azul" THEN
|
|
DISPLAY "Ejecutando Opcion 2" AT 10,53 ATTRIBUTE (BLINK)
|
|
RUN "fglrun %FGLPROG%\\comn00000"
|
|
DISPLAY " " AT 10,53
|
|
END IF
|
|
COMMAND "3"
|
|
SELECT unique a.usuario INTO p_user FROM seg0001 a
|
|
WHERE a.usuario = user
|
|
CALL seg000(p_user,"3","master") RETURNING luz
|
|
IF luz = "roja" THEN
|
|
ERROR "NO TIENE PERMISO PARA UTILIZAR OPCION"
|
|
END IF
|
|
IF luz = "azul" THEN
|
|
DISPLAY "Ejecutando Opcion 3" AT 10,53 ATTRIBUTE (BLINK)
|
|
RUN "fglrun %FGLPROG%\\cgmn00000"
|
|
DISPLAY " " AT 10,53
|
|
END IF
|
|
COMMAND "4"
|
|
SELECT unique a.usuario INTO p_user FROM seg0001 a
|
|
WHERE a.usuario = user
|
|
CALL seg000(p_user,"4","master") RETURNING luz
|
|
IF luz = "roja" THEN
|
|
ERROR "NO TIENE PERMISO PARA UTILIZAR OPCION"
|
|
END IF
|
|
IF luz = "azul" THEN
|
|
DISPLAY "Ejecutando Opcion 4" AT 10,53 ATTRIBUTE (BLINK)
|
|
RUN "fglrun %FGLPROG%\\vemn00000"
|
|
DISPLAY " " AT 10,53
|
|
END IF
|
|
COMMAND "5"
|
|
SELECT unique a.usuario INTO p_user FROM seg0001 a
|
|
WHERE a.usuario = user
|
|
CALL seg000(p_user,"5","master") RETURNING luz
|
|
IF luz = "roja" THEN
|
|
ERROR "NO TIENE PERMISO PARA UTILIZAR OPCION"
|
|
END IF
|
|
IF luz = "azul" THEN
|
|
DISPLAY "Ejecutando Opcion 5" AT 10,53 ATTRIBUTE (BLINK)
|
|
RUN "fglrun %FGLPROG%\\nomn00000"
|
|
DISPLAY " " AT 10,53
|
|
END IF
|
|
|
|
COMMAND "6"
|
|
SELECT unique a.usuario INTO p_user FROM seg0001 a
|
|
WHERE a.usuario = user
|
|
CALL seg000(p_user,"6","master") RETURNING luz
|
|
IF luz = "roja" THEN
|
|
ERROR "NO TIENE PERMISO PARA UTILIZAR OPCION"
|
|
END IF
|
|
IF luz = "azul" THEN
|
|
DISPLAY "Ejecutando Opcion 6" AT 10,53 ATTRIBUTE (BLINK)
|
|
RUN "fglrun %FGLPROG%\\semn00000"
|
|
DISPLAY " " AT 10,53
|
|
END IF
|
|
COMMAND "7"
|
|
SELECT unique a.usuario INTO p_user FROM seg0001 a
|
|
WHERE a.usuario = user
|
|
CALL seg000(p_user,"7","master") RETURNING luz
|
|
IF luz = "roja" THEN
|
|
ERROR "NO TIENE PERMISO PARA UTILIZAR OPCION"
|
|
END IF
|
|
IF luz = "azul" THEN
|
|
DISPLAY "Ejecutando Opcion 7" AT 10,53 ATTRIBUTE (BLINK)
|
|
RUN "fglrun %FGLPROG%\\prmn00000"
|
|
DISPLAY " " AT 10,53
|
|
END IF
|
|
COMMAND "8"
|
|
DELETE FROM cctb00001 WHERE num_doc is null
|
|
# UPDATE intb00023 SET num_doc = 2941 where cod_mov = 47
|
|
# DISPLAY "ACTUALIZANDO MOVIMIENTO 47" AT 10,53 ATTRIBUTE (BLINK)
|
|
DISPLAY "BORRAR TODOS LOS REGISTROS EN BLANCO" AT 10,53 ATTRIBUTE (BLINK)
|
|
|
|
COMMAND "Salir"
|
|
EXIT MENU
|
|
END MENU
|
|
END MAIN
|
|
|
|
FUNCTION mask()
|
|
|
|
DISPLAY "M A R M O T E C H, S. A. " AT 4,26
|
|
ATTRIBUTE (REVERSE,blue)
|
|
DISPLAY "1- INVENTARIOS ALMN00000" AT 10,4 ATTRIBUTE (blue)
|
|
DISPLAY "2- COMPRAS COMN00000" AT 11,4 ATTRIBUTE (blue)
|
|
DISPLAY "3- CONTABILIDAD CGMN00000" AT 12,4 ATTRIBUTE (blue)
|
|
DISPLAY "4- VENTAS VEMN00000" AT 13,4 ATTRIBUTE (blue)
|
|
DISPLAY "5- NOMINAS NOMN00000" AT 14,4 ATTRIBUTE (blue)
|
|
DISPLAY "6- INFORMATICA SYS00000" AT 15,4 ATTRIBUTE(blue)
|
|
DISPLAY "7- PRODUCCION PRMN0000" AT 16,4 ATTRIBUTE(blue)
|
|
DISPLAY "8- ACTUALIZACIONES " AT 17,4 ATTRIBUTE(blue)
|
|
|
|
DISPLAY "S- Salir del Sistema" at 23,25 ATTRIBUTE (RED)
|
|
END FUNCTION
|
|
|
|
FUNCTION PANTALLA()
|
|
DEFINE fecha char(10)
|
|
DEFINE T char(8)
|
|
|
|
LET fecha = today using "dd/mm/yyyy"
|
|
LET T = time
|
|
CALL fgl_drawbox(3,60,3,10)
|
|
CALL fgl_drawbox(18,79,6,1)
|
|
CALL fgl_drawbox(15,45,8,2)
|
|
CALL fgl_drawbox(3,30,7,5)
|
|
|
|
DISPLAY " S I S T E M A S:" AT 8,6
|
|
DISPLAY " MASTER " AT 8,6 ATTRIBUTE (RED)
|
|
|
|
CALL fgl_drawbox(9,28,8,50)
|
|
CALL fgl_drawbox(3,15,7,52)
|
|
CALL fgl_drawbox(4,28,19,50)
|
|
|
|
DISPLAY " ORIENTACION " AT 8,53 attribute (red)
|
|
DISPLAY "Bienvenido Usuario: " AT 12,53
|
|
|
|
DISPLAY p_usuario AT 13,53 ATTRIBUTE (blue)
|
|
LET p_usuario = downshift(p_usuario)
|
|
|
|
CALL fgl_drawbox(3,15,18,52)
|
|
|
|
DISPLAY " DIA Y HORA " AT 19,53
|
|
DISPLAY T AT 21,64
|
|
DISPLAY FECHA AT 21,54
|
|
END FUNCTION
|
|
|
|
FUNCTION pant1()
|
|
CALL fgl_drawbox (4,50,3,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
|
|
|
|
OPTIONS
|
|
ERROR LINE 24
|
|
|
|
LET luz = "azul"
|
|
LET p_opcion = opt
|
|
|
|
LET usuarios = NULL
|
|
SELECT UNIQUE a.usuario FROM seg0001 a
|
|
WHERE a.usuario = user and a.opcion = 99
|
|
|
|
IF STATUS != NOTFOUND THEN
|
|
let luz = "azul"
|
|
ELSE
|
|
|
|
#IF p_opcion != 99 THEN
|
|
|
|
SELECT UNIQUE a.usuario FROM seg0001 a
|
|
WHERE a.usuario = user 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
|
|
|
|
FUNCTION logo()
|
|
DEFINE j,i SMALLINT,
|
|
p CHAR(1)
|
|
OPTIONS
|
|
PROMPT LINE 20
|
|
call fgl_drawbox(7,47,10,20)
|
|
call fgl_drawbox(10,51,8,18)
|
|
|
|
DISPLAY "BOLETIN INFORMATIVO 1/95" AT 9,29 ATTRIBUTE (REVERSE)
|
|
DISPLAY "NO MAS PAPELES PARA MEMOS IMPRESOS..." AT 11,21
|
|
DISPLAY "COMO? USANDO EL CORREO ELECTRONICO DE RAYOVAC" AT 12,21
|
|
DISPLAY "TE RETO A USARLO..." AT 14,21
|
|
DISPLAY "PRESIONE <ENTER> PARA CONTINUAR" AT 15,21
|
|
PROMPT " " FOR p
|
|
LET int_flag = false
|
|
END FUNCTION
|