####################################################################### # SISTEMA : DOCUMENTACION DE SISTEMA # PROGRAMA : DSPRCS001.4GL # OBJETIVO : Relacion de Sistema Vs Tablas # AUTOR : Tadeo A. Ferreras F. # FECHA : JUNIO 14, 1995 ######################################################################## DATABASE rayovac GLOBALS "dsprgb000.4gl" FUNCTION dsprcs001() OPTIONS FORM LINE 8, ERROR LINE 23, PROMPT LINE 23 OPEN FORM dsfmcs001 FROM "dsfmcs001" DISPLAY FORM dsfmcs001 CALL pantalla() DISPLAY "dsprcs001" AT 4,3 ATTRIBUTE(RED) DISPLAY "Sistema Vs Tablas" AT 6,31 ATTRIBUTE(BLACK) CONSTRUCT criterio ON a.cod_sistema FROM cod_sistema IF int_flag THEN LET numero_msg = 2 CALL msg(numero_msg) LET int_flag = FALSE RETURN END IF LET selec = "SELECT UNIQUE a.* FROM dstb00003 a ", "WHERE a.status_t IS NULL AND ",criterio CLIPPED," ORDER BY 1,2" PREPARE comando FROM selec DECLARE busca SCROLL CURSOR FOR comando OPEN busca FETCH FIRST busca INTO dstb03.* IF STATUS = NOTFOUND THEN LET numero_msg = 3 CALL msg(numero_msg) RETURN END IF DISPLAY BY NAME dstb03.cod_sistema,dstb03.desc_sistema MENU "OPCION" COMMAND "Siguiente" FETCH NEXT busca INTO dstb03.* IF STATUS = NOTFOUND THEN LET numero_msg = 3 CALL msg(numero_msg) END IF DISPLAY BY NAME dstb03.cod_sistema,dstb03.desc_sistema COMMAND "Anterior" FETCH PREVIOUS busca INTO dstb03.* IF STATUS = NOTFOUND THEN LET numero_msg = 3 CALL msg(numero_msg) END IF DISPLAY BY NAME dstb03.cod_sistema,dstb03.desc_sistema COMMAND "Primero" FETCH FIRST busca INTO dstb03.* IF STATUS = NOTFOUND THEN LET numero_msg = 3 CALL msg(numero_msg) END IF DISPLAY BY NAME dstb03.cod_sistema,dstb03.desc_sistema COMMAND "Ultimo" FETCH LAST busca INTO dstb03.* IF STATUS = NOTFOUND THEN LET numero_msg = 3 CALL msg(numero_msg) END IF DISPLAY BY NAME dstb03.cod_sistema,dstb03.desc_sistema COMMAND "Ver" "Ver Tablas del Sistema Cancelar" DECLARE busca1 CURSOR FOR SELECT UNIQUE a.tabla,b.descripcion FROM dstb00006 a,dstb00001 c,OUTER dstb00005 b WHERE c.cod_sistema = dstb03.cod_sistema AND c.programa = a.programa AND a.tabla = b.tabla AND a.status_t IS NULL LET idx = 1 FOREACH busca1 INTO act1[idx].* LET idx = idx + 1 END FOREACH CALL SET_COUNT(idx - 1) 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