¿ Quieres imprimir esta página ? Volver a la página principal de Recursos iSeries AS400 ¿ Necesitas ayuda ? En pruebas
System i5 iSeries AS400 Recursos. Compartiendo generamos conocimiento
Novedades en Recursos iSeries AS400
Noticias tecnológicas

Utilidades. ANZLIB analiza el tamaño de una biblioteca

Comando ANZLIB

 

CMD PROMPT('Analiza tamaño de Biblioteca')

PARM KWD(LIB) TYPE(*CHAR) LEN(10) +

PROMPT('Biblioteca')

El comando llama a este CLP (TOL425C )

PGM PARM(&LIB)
DCL VAR(&LIB) TYPE(*CHAR) LEN(10)
DCL VAR(&SYSASP) TYPE(*DEC) LEN(15 0)
DCL VAR(&SYSASPUSED) TYPE(*DEC) LEN(15 4)
DCL VAR(&TAMAÑO) TYPE(*DEC) LEN(15 0)
DCL VAR(&TAMAÑOC) TYPE(*CHAR) LEN(15)
DCL VAR(&SYSASPC) TYPE(*CHAR) LEN(15)
DCL VAR(&PORCEN) TYPE(*DEC) LEN(5 2)
DCL VAR(&PORCENC) TYPE(*CHAR) LEN( 7)
DCL VAR(&STS) TYPE(*CHAR) LEN(1)
DCL VAR(&USER) TYPE(*CHAR) LEN(10)
DCL VAR(&SIZE) TYPE(*DEC) LEN(15 0)
DCLF FILE(QADSPOBJ) RCDFMT(*ALL)
RTVJOBA TYPE(&STS) USER(&USER)
CHKOBJ QSYS/&LIB *LIB
MONMSG CPF0000 EXEC(DO)
IF (&STS = '1') DO
SNDPGMMSG MSG('No se ha encontrado la biblioteca ' +
|| &LIB)
ENDDO

ELSE DO

SNDMSG MSG('No se ha encontrado la biblioteca ' +

|| &LIB) TOUSR(&USER)

ENDDO

ENDDO

DSPOBJD OBJ(&LIB/*ALL) OBJTYPE(*ALL) +
OUTPUT(*OUTFILE) OUTFILE(QTEMP/ANZLIBF)
OVRDBF QADSPOBJ QTEMP/ANZLIBF OVRSCOPE(*JOB)

START:

RCVF *FILE

MONMSG CPF0864 EXEC(GOTO END_PGM)
CHGVAR &SIZE (&SIZE + &ODOBSZ)
GOTO START

END_PGM:

CALL TOL872C (&SYSASPUSED &SYSASP)
CHGVAR &SYSASP (&SYSASP * 1000000)
CHGVAR &TAMAÑOC &SIZE
CHGVAR &SYSASPC &SYSASP
CHGVAR &PORCEN ((&SIZE / &SYSASP) * 100 )
CHGVAR &PORCENC &PORCEN

IF (&STS = '1') DO
SNDPGMMSG MSG(' Tamaño de ' || &LIB |< ' es de ' || &tamaÑoc || ' +
sobre ' || &sysaspc || ' , ' || +
&porcenc || '%')

ENDDO

ELSE DO

SNDMSG MSG(' Tamaño de ' || &lib |< ' es de ' || &tamaÑoc || ' +
sobre ' || &sysaspc || ' , ' || +
&porcenc || '%') TOUSR(&USER)

ENDDO
DLTOVR *ALL LVL(*JOB)
ENDPGM

 

Pgm TOL872C

PGM (&SYSASPUSED &SYSASP)
DCL VAR(&RCVVAR) TYPE(*CHAR) LEN(68)
DCL VAR(&RCVVARLEN) TYPE(*CHAR) LEN(4)
DCL VAR(&FORMAT) TYPE(*CHAR) LEN(8)
DCL VAR(&RESET) TYPE(*CHAR) LEN(10)
DCL VAR(&BIN4NBR) TYPE(*CHAR) LEN(4)
DCL VAR(&DEC15NBR) TYPE(*DEC) LEN(15 0)
DCL VAR(&SYSASP) TYPE(*DEC) LEN(15 0)
DCL VAR(&SYSASPUSED) TYPE(*DEC) LEN(15 4)
DCL VAR(&TOTAUXSTG) TYPE(*DEC) LEN(15 0)
DCL VAR(&CURUNPUSED) TYPE(*DEC) LEN(15 0)
DCL VAR(&MAXUNPUSED) TYPE(*DEC) LEN(15 0)
DCL VAR(&APIERROR) TYPE(*CHAR) LEN(272)
DCL VAR(&BYTESPROV) TYPE(*CHAR) LEN(4)
DCL VAR(&BYTESAVAIL) TYPE(*CHAR) LEN(4)
DCL VAR(&MSGID) TYPE(*CHAR) LEN(7)
DCL VAR(&MSGDTA) TYPE(*CHAR) LEN(256)
DCL VAR(&MSGF) TYPE(*CHAR) LEN(10)
DCL VAR(&MSGFLIB) TYPE(*CHAR) LEN(10)
/* ===============================================================

/* = Monitor Global de Errores =

/* =============================================================== */

MONMSG MSGID(CPF0000 MCH0000) EXEC(GOTO CMDLBL(ERROR))

/* =============================================================== */

/* = Inicializar Variables = */

/* =============================================================== */

CHGVAR VAR(&FORMAT) VALUE('SSTS0200')
CHGVAR VAR(&RESET) VALUE('*YES')
CHGVAR VAR(%BIN(&RCVVARLEN)) VALUE(68)
CHGVAR VAR(%BIN(&BYTESPROV)) VALUE(272)
CHGVAR VAR(%BIN(&BYTESAVAIL)) VALUE(0)
CHGVAR VAR(%SST(&APIERROR 1 4)) VALUE(&BYTESPROV)
CHGVAR VAR(%SST(&APIERROR 5 4)) VALUE(&BYTESAVAIL)
/* =============================================================== */

/* = Recuperar Informacion de estado del sistema = */

/* =============================================================== */

CALL PGM(QWCRSSTS) PARM(&RCVVAR &RCVVARLEN +
&FORMAT &RESET &APIERROR)

/* --------------------------------------------------------------- */

/* - Verifica si existe algun tipo de Error - */

/* --------------------------------------------------------------- */

CHGVAR VAR(&BYTESAVAIL) VALUE(%SST(&APIERROR 5 4))
IF COND(%BIN(&BYTESAVAIL) *NE 0) THEN(DO)
CHGVAR VAR(&MSGID) VALUE(%SST(&APIERROR 9 7))
CHGVAR VAR(&MSGDTA) VALUE(%SST(&APIERROR 17 256))
CHGVAR VAR(&MSGF) VALUE('QCPFMSG')
CHGVAR VAR(&MSGFLIB) VALUE('QSYS')
GOTO CMDLBL(SNDMSG)
ENDDO

/* =============================================================== */

/* = Extrae Informacion de Estado del Sistema = */

/* =============================================================== */

CHGVAR VAR(&BIN4NBR) VALUE(%SST(&RCVVAR 49 4))
CHGVAR VAR(&SYSASP) VALUE(%BIN(&BIN4NBR))
CHGVAR VAR(&BIN4NBR) VALUE(%SST(&RCVVAR 53 4))
CHGVAR VAR(&DEC15NBR) VALUE(%BIN(&BIN4NBR))
CHGVAR VAR(&SYSASPUSED) VALUE(&DEC15NBR / 10000)
CHGVAR VAR(&BIN4NBR) VALUE(%SST(&RCVVAR 57 4))
CHGVAR VAR(&TOTAUXSTG) VALUE(%BIN(&BIN4NBR))
CHGVAR VAR(&BIN4NBR) VALUE(%SST(&RCVVAR 61 4))
CHGVAR VAR(&CURUNPUSED) VALUE(%BIN(&BIN4NBR))
CHGVAR VAR(&BIN4NBR) VALUE(%SST(&RCVVAR 65 4))
CHGVAR VAR(&MAXUNPUSED) VALUE(%BIN(&BIN4NBR))

/* =============================================================== */

/* = Despues de Esto acomodar los valores que se quieren enviar = */

/* =============================================================== */

RETURN

/* =============================================================== */

/* = Rutina de Error = */

/* =============================================================== */

ERROR:

RCVMSG MSGTYPE(*EXCP) MSGDTA(&MSGDTA) MSGID(&MSGID) +
MSGF(&MSGF) MSGFLIB(&MSGFLIB)
MONMSG MSGID(CPF0000 MCH0000)
SNDMSG:
SNDPGMMSG MSGID(&MSGID) MSGF(&MSGFLIB/&MSGF) +
MSGDTA(&MSGDTA) MSGTYPE(*ESCAPE)
MONMSG MSGID(CPF0000 MCH0000)
ENDPGM


Puedes ver el fuente aquí
Utilidad desarrollada por Víctor Belardez

22-04-2002

Comentarios de usuarios

Nombre:
Mail:
Comentario:
 

 

NUESTRA COMUNIDAD EN
ÚNETE Y.... ¡¡ PARTICIPA !!
Dossiers técnicos iSeries y AS400
- Seguridad
- Alta disponibilidad.
Nuestros links favoritos
- Tendencias tecnologías de la información
Expertos en tecnologías de la información, nos dan su punto de vista sobre las tendencias actuales y futuras
- Los últimos anuncios sobre hardware-software para iSeries AS400 realizados por IBM
- Freeware y shareware para el iSeries AS400
- Utilidades para el iSeries AS400 realizadas por profesionales
- Documentos. Trucos e ideas para resolver tus problemas
- Los manuales y links más interesantes del iSeries AS400

  Links patrocinados
  •  
  •  

[ Soy nuevo |   Profesionales |   AS qué |   Empresas |    Foros |   Recomiéndanos |    Productos ]
 
Recursos iSeries AS400. Es una web de: PUBLICACIONES HELP400, S.L. CIF:B-60-202827 Gran Vía de les Corts Catalanes, núm. 715, Entresuelo – 3ª - Barcelona - Tel.+34.932.310.049