{------------------------------------------------------------------------- PROGRAMA : MASTER OBJETIVO : MENU GENERAL DE LA COMPANIA PROGRAMADOR : JUAN F. SOTO FECHA : AGOSTO 1997 ASESOR : JOSE ALFREDO PAULINO ------------------------------------------------------------------------ } DATABASE smarmotech 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 PARA CONTINUAR" AT 15,21 PROMPT " " FOR p LET int_flag = false END FUNCTION