158 lines
4.8 KiB
Plaintext
158 lines
4.8 KiB
Plaintext
{
|
|
-----------------------------------------------------------------------
|
|
PROGRAMA : PRMNmt000
|
|
OBJETIVO : Menu de Mantenimiento del Sistema de Produccion
|
|
PROGRAMADOR : Tadeo A. Ferreras F.
|
|
FECHA REALIZACION : Sept. 14,1994.
|
|
-----------------------------------------------------------------------
|
|
}
|
|
GLOBALS "prprgb000.4gl"
|
|
|
|
MAIN
|
|
# WHENEVER ERROR CONTINUE
|
|
DEFER INTERRUPT
|
|
CALL pantalla()
|
|
CALL opciones_prmnmt000()
|
|
END MAIN
|
|
|
|
FUNCTION opciones_prmnmt000()
|
|
|
|
DEFINE p_user CHAR(9),
|
|
i smallint
|
|
DEFINE luz CHAR(5),
|
|
arrmenu dynamic array of record
|
|
chopciones CHAR(30),
|
|
programas CHAR(15),
|
|
imagenes CHAR(80)
|
|
END RECORD
|
|
|
|
OPEN WINDOW w1 WITH FORM "menuform"
|
|
DECLARE cmenu CURSOR FOR
|
|
SELECT descripcion,programa from dstb00001
|
|
|
|
LET i = 1
|
|
FOREACH cmenu INTO arrmenu[i].*
|
|
LET i = i +1
|
|
END FOREACH
|
|
|
|
DISPLAY ARRAY arrmenu TO smenu.*
|
|
CLOSE WINDOW w1
|
|
{
|
|
DISPLAY " Mantenimiento " AT 6,22
|
|
DISPLAY "prmnmt000" AT 4,3 ATTRIBUTE(blue)
|
|
DISPLAY "1- Maestra de Periodo de Semana prprmt001" AT 10,6
|
|
DISPLAY "2- Prod. Diaria Personal no Prod. prprmt002" AT 11,6
|
|
DISPLAY "3- Prod. Diaria Personal Product. prprmt003" AT 12,6
|
|
DISPLAY "4- Maestra de Operacion prprmt004" AT 13,6
|
|
DISPLAY "5- Departamentos de Planta prfmmt007" AT 14,6
|
|
DISPLAY "6- Orden De Produccion prprmt006" AT 15,6
|
|
DISPLAY "7- Monitoreo Status de la Orden prprmt007" AT 16,6
|
|
DISPLAY "8- Orden de Pedidos prprmt008" AT 17,6
|
|
DISPLAY "9- Maestra Areas prprmt010" AT 18,6
|
|
|
|
DISPLAY "S- Retorna Menu Anterior " AT 20,6
|
|
ATTRIBUTE (BOLD)
|
|
|
|
LET opcion = " "
|
|
LABEL vuelve:
|
|
PROMPT " OPCION: " FOR opcion HELP 1
|
|
LET opcion = upshift(opcion)
|
|
IF opcion != "S" THEN
|
|
SELECT unique usuario INTO p_user FROM seg0001
|
|
WHERE usuario = user
|
|
CALL seg000(p_user,opcion,"prmnmt000") RETURNING luz
|
|
IF luz = "roja" THEN
|
|
ERROR "NO TIENE PERMISO PARA UTILIZAR OPCION"
|
|
# GOTO vuelve
|
|
END IF
|
|
END IF
|
|
|
|
CASE
|
|
WHEN opcion = "1"
|
|
CALL prprmt001()
|
|
CLEAR SCREEN
|
|
CALL pantalla()
|
|
CALL opciones_prmnmt000()
|
|
|
|
WHEN opcion = "2"
|
|
CALL prprmt002()
|
|
CLEAR SCREEN
|
|
CALL pantalla()
|
|
CALL opciones_prmnmt000()
|
|
WHEN opcion = "3"
|
|
CALL prprmt003()
|
|
CLEAR SCREEN
|
|
CALL pantalla()
|
|
CALL opciones_prmnmt000()
|
|
WHEN opcion = "4"
|
|
CALL prprmt004()
|
|
CLEAR SCREEN
|
|
CALL pantalla()
|
|
CALL opciones_prmnmt000()
|
|
WHEN opcion = "5"
|
|
RUN "isql -fr prfmmt007"
|
|
CLEAR SCREEN
|
|
CALL pantalla()
|
|
CALL opciones_prmnmt000()
|
|
WHEN opcion = "6"
|
|
CALL prprmt006()
|
|
CLEAR SCREEN
|
|
CALL opciones_prmnmt000()
|
|
WHEN opcion = "7"
|
|
CALL prprmt007()
|
|
CLEAR SCREEN
|
|
CALL opciones_prmnmt000()
|
|
WHEN opcion = "8"
|
|
CALL prprmt008()
|
|
CLEAR SCREEN
|
|
CALL opciones_prmnmt000()
|
|
WHEN opcion = "9"
|
|
RUN "fglrun %FGLPROG%\\prprmt010"
|
|
CLEAR SCREEN
|
|
CALL opciones_prmnmt000()
|
|
|
|
WHEN opcion = "S" or opcion = "s"
|
|
RETURN
|
|
|
|
OTHERWISE
|
|
CALL opciones_prmnmt000()
|
|
|
|
END CASE
|
|
|
|
}
|
|
|
|
END FUNCTION
|
|
|
|
FUNCTION pantalla()
|
|
DEFINE fecha CHAR(10),
|
|
hora char(5)
|
|
SELECT * INTO p_compania.*
|
|
FROM companias
|
|
LET l = (80 - LENGTH(p_compania.nombre CLIPPED)) / 2
|
|
LET fecha = today USING "dd/mm/yyyy"
|
|
LET hora = time
|
|
DISPLAY p_compania.nombre CLIPPED AT 4,l
|
|
ATTRIBUTE (REVERSE,blue)
|
|
LET fecha = today USING "dd/mm/yyyy"
|
|
LET hora = time
|
|
DISPLAY fecha AT 4,68 ATTRIBUTE (blue)
|
|
DISPLAY "Sistema de Produccion" AT 5,29
|
|
DISPLAY hora AT 6,73 ATTRIBUTE(blue)
|
|
|
|
CALL fgl_drawbox(5,79,3,1)
|
|
CALL fgl_drawbox(1,79,22,1)
|
|
END FUNCTION
|
|
|
|
FUNCTION integridad()
|
|
IF sqlca.sqlcode < 0 THEN
|
|
LET numero_msg = sqlca.sqlcode
|
|
CALL msg(numero_msg)
|
|
DISPLAY numero_msg AT 23,70
|
|
LET bandera = 1
|
|
LET status = 0
|
|
SLEEP 2
|
|
RETURN
|
|
END IF
|
|
RETURN
|
|
END FUNCTION
|