{ ----------------------------------------------------------------------------- PROGRAMA : ALMN00000 OBJETIVO : Menu pralcipal del Sistema de Inventarios PROGRAMADOR : Juan Fco. Soto (Johnny) FECHA REALIZACION : Octubre 21, 1993. ----------------------------------------------------------------------------- } DATABASE exterior MAIN DEFER INTERRUPT CALL opciones_almn00000() END MAIN FUNCTION opciones_almn00000() DEFINE opt CHAR(2) DEFINE p_user CHAR(9) DEFINE luz CHAR(5) OPTIONS PROMPT LINE 8, ERROR LINE 24 CALL pantalla() DISPLAY "almn00000" AT 4,3 ATTRIBUTE(blue) DISPLAY "1- Materia Prima inmn00000" AT 10,6 #DISPLAY "2- Herramientas ihmn00000" AT 11,6 #DISPLAY "2- Suministros ismn00000" AT 11,6 DISPLAY "2- Productos Terminados ipmn00000" AT 11,6 DISPLAY "3- Reporte Entradas alprmt006" AT 12,6 DISPLAY "4- Repuestos irmn00000" AT 13,6 # DISPLAY "5- Volante Ctrl Transportista veprmt14" AT 16,6 DISPLAY "S- Retorna Menu Anterior" AT 18,6 ATTRIBUTE (BOLD) LABEL vuelve: PROMPT "OPCION: " attribute(blue) FOR OPT LET opt = UPSHIFT(opt) clipped SELECT unique user INTO p_user from seg0001 display "usuario ", p_user IF opt != "S" THEN SELECT unique usuario INTO p_user FROM seg0001 WHERE usuario = user CALL seg000(p_user,opt,"almn00000") 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%\\inmn00000" CLEAR SCREEN CALL opciones_almn00000() { WHEN OPT = "2" RUN "fglrun %FGLPROG%\\ihmn00000" CLEAR SCREEN CALL opciones_almn00000() WHEN OPT = "3" RUN "fglrun %FGLPROG%\\irmn00000" CLEAR SCREEN CALL opciones_almn00000() WHEN OPT = "2" RUN "fglrun %FGLPROG%\\ismn00000" CLEAR SCREEN CALL opciones_almn00000()} WHEN OPT = "2" RUN "fglrun %FGLPROG%\\ipmn00000" CLEAR SCREEN CALL opciones_almn00000() WHEN OPT = "3" RUN "fglrun %FGLPROG%\\alprmt006" CLEAR SCREEN CALL opciones_almn00000() WHEN OPT = "4" RUN "fglrun %FGLPROG%\\irmn00000" CLEAR SCREEN CALL opciones_almn00000() {WHEN OPT = "7" RUN "fglrun %FGLPROG%\\veprmt14" CLEAR SCREEN CALL opciones_almn00000()} WHEN OPT = "S" or OPT = "s" RETURN OTHERWISE CALL opciones_almn00000() END CASE END FUNCTION FUNCTION pantalla() DEFINE fecha CHAR(8), hora char(5) , l SMALLINT, p_compania RECORD LIKE companias.* SELECT * INTO p_compania.* FROM companias LET l = (80 - LENGTH(p_compania.nombre CLIPPED))/2 LET fecha = today USING "dd/mm/yy" LET hora = time DISPLAY p_compania.nombre CLIPPED AT 4,l ATTRIBUTE (REVERSE,blue) DISPLAY fecha AT 4,70 ATTRIBUTE (blue) LET l = (80 - LENGTH("Sistema De Inventarios"))/2 DISPLAY "Sistema De Inventarios" AT 5,l LET l = (80 - LENGTH("Menu Inventarios"))/2 DISPLAY "Menu Inventarios" AT 6,l 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 opcion_ant,no_reg,p_opcion,numero SMALLINT OPTIONS ERROR LINE 24 LET luz = "azul" LET p_opcion = opt SELECT count(*) INTO no_reg FROM seg0001 WHERE usuario = user LET opcion_ant = p_opcion IF no_reg = 1 THEN SELECT opcion INTO p_opcion FROM seg0001 WHERE usuario = user IF p_opcion != 99 THEN LET p_opcion = opcion_ant END IF 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 display "pase por aqui" at 23,1 LET status = 0 LET luz = "roja" END IF END IF IF p_opcion = 99 THEN LET luz = "azul" END IF RETURN luz END FUNCTION