122 lines
3.0 KiB
Plaintext
122 lines
3.0 KiB
Plaintext
#######################################################################
|
|
# SISTEMA : DOCUMENTACION DE SISTEMA
|
|
# PROGRAMA : DSPRCS007.4GL
|
|
# OBJETIVO : Relacion de Programas Vs Tablas.
|
|
# AUTOR : Tadeo A. Ferreras F.
|
|
# FECHA : Octubre 19, 1995
|
|
########################################################################
|
|
DATABASE rayovac
|
|
GLOBALS
|
|
"dsprgb000.4gl"
|
|
|
|
FUNCTION dsprcs007()
|
|
|
|
OPTIONS
|
|
FORM LINE 8,
|
|
ERROR LINE 23,
|
|
PROMPT LINE 23
|
|
|
|
OPEN FORM dsfmcs007 FROM "dsfmcs007"
|
|
DISPLAY FORM dsfmcs007
|
|
CALL pantalla()
|
|
DISPLAY "dsprcs007" AT 4,3 ATTRIBUTE(RED)
|
|
DISPLAY "Programas Vs Tablas" AT 6,30 ATTRIBUTE(BLACK)
|
|
|
|
### Creando criterio de Busqueda
|
|
CONSTRUCT criterio ON a.programa FROM programa
|
|
|
|
IF int_flag THEN
|
|
LET numero_msg = 2
|
|
CALL msg(numero_msg)
|
|
LET int_flag = FALSE
|
|
RETURN
|
|
END IF
|
|
|
|
#### Buscando las programas en la maestra
|
|
LET selec =
|
|
"SELECT UNIQUE a.programa,a.descripcion FROM dstb00001 a ",
|
|
"WHERE (a.status_t IS NULL) AND ",criterio CLIPPED," ORDER BY 1"
|
|
|
|
PREPARE comando FROM selec
|
|
DECLARE busca SCROLL CURSOR FOR comando
|
|
OPEN busca
|
|
|
|
FETCH FIRST busca INTO dstb01.programa,descripcion1
|
|
|
|
IF STATUS = NOTFOUND THEN
|
|
LET numero_msg = 3
|
|
CALL msg(numero_msg)
|
|
RETURN
|
|
END IF
|
|
|
|
DISPLAY BY NAME dstb01.programa,descripcion1
|
|
|
|
### Menu para manejar las programas
|
|
|
|
MENU "OPCION"
|
|
COMMAND "Siguiente"
|
|
FETCH NEXT busca INTO dstb01.programa,descripcion1
|
|
|
|
IF STATUS = NOTFOUND THEN
|
|
LET numero_msg = 3
|
|
CALL msg(numero_msg)
|
|
END IF
|
|
DISPLAY BY NAME dstb01.programa,descripcion1
|
|
|
|
COMMAND "Anterior"
|
|
FETCH PREVIOUS busca INTO dstb01.programa,descripcion1
|
|
|
|
IF STATUS = NOTFOUND THEN
|
|
LET numero_msg = 3
|
|
CALL msg(numero_msg)
|
|
END IF
|
|
DISPLAY BY NAME dstb01.programa,descripcion1
|
|
|
|
COMMAND "Primero"
|
|
FETCH FIRST busca INTO dstb01.programa,descripcion1
|
|
|
|
IF STATUS = NOTFOUND THEN
|
|
LET numero_msg = 3
|
|
CALL msg(numero_msg)
|
|
END IF
|
|
DISPLAY BY NAME dstb01.programa,descripcion1
|
|
|
|
COMMAND "Ultimo"
|
|
FETCH LAST busca INTO dstb01.programa,descripcion1
|
|
|
|
IF STATUS = NOTFOUND THEN
|
|
LET numero_msg = 3
|
|
CALL msg(numero_msg)
|
|
END IF
|
|
DISPLAY BY NAME dstb01.programa,descripcion1
|
|
|
|
COMMAND "Ver" "Ver Programas del Sistema Cancelar"
|
|
|
|
### Buscando los tablas que manejan la programa
|
|
DECLARE busca1 CURSOR FOR
|
|
SELECT UNIQUE a.tabla,b.descripcion FROM dstb00006 a,dstb00005 b
|
|
WHERE (a.status_t IS NULL) AND (a.tabla = b.tabla) AND
|
|
(a.programa = dstb01.programa) ORDER BY 1
|
|
|
|
LET idx = 1
|
|
FOREACH busca1 INTO act1[idx].*
|
|
LET idx = idx + 1
|
|
END FOREACH
|
|
CALL SET_COUNT(idx - 1)
|
|
|
|
### Desplegando los tablas
|
|
DISPLAY ARRAY act1 TO act1_s.*
|
|
IF int_flag THEN
|
|
LET numero_msg = 2
|
|
CALL msg(numero_msg)
|
|
LET int_flag = FALSE
|
|
RETURN
|
|
END IF
|
|
|
|
COMMAND "Retornar"
|
|
EXIT MENU
|
|
END MENU
|
|
END FUNCTION
|
|
|
|
|