GO ASSISTの終結処理は、QPJOBLOGなどシステム固定のスプールですが、自分で古いスプールを整理できます。このプログラムはユーザー名、スプール名、スプール作成日、ユーザーデータ、ジョブ名を指定すると、該当するスプールを削除してくれます。各々のパラメータは*ALLを指定できます。またスプール名のみ、総称名を使えます。スプール作成日は、指定日付以前が対象です。うまく利用すると、いまから半年より古いユーザースプールを探し出して削除できます。また、削除部分をOUTQ変更にすれば、不要なものを特定のOUTQに溜めておくモニターを作成できます。必ずテストしてから使用して下さい!
H Y/ 1
E****************************************************
E* A R R A Y T A B L E *
E****************************************************
E CMD 1 5 15 :CMD FOR QCMDEXC
E NAM 10 1 :NAME 1 * 10
I******************************************************
I* D E F I N E C O N S T A N T *
I******************************************************
I 'SPLF0100' C #RCD#
I 'SPLA0100' C #ATR#
I******************************************************
I* D E F I N E D A T A - S T R U C T U R E *
I******************************************************
IUSRSPC DS
I 1 10 USNAME
I 11 20 USLIB
IRCVVAR DS
I B 1 40OFFSET
I B 9 120NOENTR
I B 13 160LSTSIZ
ISF0100 DS
I 51 66 IJOBID
I 67 82 ISPLID
ISA0100 DS
I 9 24 JOBID
I 25 40 SPLFID
I 41 50 JOBNAM
I 51 60 USRNAM
I 61 66 JOBNUM
I 67 76 FILNAM
I B 77 800FILNUM
I 81 90 FRMTYP
I 91 100 USRDTA
I 183 192 OUTQNM
I 193 202 OUTQLB
I 203 203 DATCEN
I 204 209 DATFOP
I DS
I B 1 40LENDTA
I B 5 80STRPOS
I B 9 120SPLF#
I B 13 160RCVLEN
I DS
I B 1 40USSIZE
I I 0000 B 5 80ERROR
IDSNAM DS
I 1 10 NAM
C******************************************************
C* DEFINITION MODULE ( PLIST FIELD KLIST ) *
C******************************************************
C* :
C* DEFINE PLIST :
C* :
C *ENTRY PLIST :
C PARM PIUSER 10 :USER NAME
C PARM PISPLN 10 :SPL NAME
C PARM PIDATE 6 :OPEN DATE
C PARM PIUSRD 10 :USER DATA
C PARM PIJOBN 10 :JOB NAME
C******************************************************
C* M A I N - R O U T I N E :
C******************************************************
C EXSR @LST :
C* :
B001 C NOENTR IFNE 0 :
001 C EXSR @EXE :
E001 C END :
C* DLT USRSPC :
C CALL 'QUSDLTUS' 95 :
C PARM USRSPC :
C PARM ERROR :
C*
C MOVE *ON *INLR :
C RETRN :
C******************************************************
C* S U B - R O U T I N E :
C******************************************************
C*----------------------------------------------------*
C *INZSR BEGSR :
C*----------------------------------------------------*
C MOVELPIDATE W1YY 2 :
B001 C W1YY IFGT '40' :
001 C '19' CAT PIDATE:0 W1DATE 8 :
+001 C ELSE :
001 C '20' CAT PIDATE:0 W1DATE :
E001 C END :
C* :
C Z-ADD100 USSIZE :
C MOVEL'SPLINF' USNAME :
C MOVEL'QTEMP' USLIB :
C* CRT USRSPC :
C CALL 'QUSCRTUS' 95 :
C PARM USRSPC :
C PARM 'SPL' EXTATR 10 :
C PARM USSIZE :
C PARM ' ' USINIT 1 :
C PARM '*ALL' USAUTH 10 :
C PARM USTEXT 50 :
C* :
C* SPL NMAE GENERIC :
C* :
C Z-ADD0 LL 30 :
B001 C PISPLN IFNE '*ALL' :
001 C '*':1 SCAN PISPLN:1 LL 86:
001 C 86 '*':' ' XLATEPISPLN:LL PISPLN :
E001 C END :
C* :
C ENDSR :
C*----------------------------------------------------*
C @LST BEGSR :
C*----------------------------------------------------*
C CALL 'QUSLSPL' 95 :
C PARM USRSPC :
C PARM #RCD# FMTRCD 8 :
C PARM PIUSER USER 10 :
C PARM '*ALL' OUTQ 20 :
C PARM '*ALL' FRMTYP :
C PARM '*ALL' USRDTA :
C* :
C Z-ADD16 LENDTA :
C Z-ADD125 STRPOS :
C* RTV FROM USRPSC :
C CALL 'QUSRTVUS' 95 :
C PARM USRSPC :
C PARM STRPOS :
C PARM LENDTA :
C PARM RCVVAR :
C* :
C Z-ADDOFFSET STRPOS :
C ADD 1 STRPOS :
C Z-ADDLSTSIZ LENDTA :
C Z-ADD209 RCVLEN :
C* :
C ENDSR :
C*----------------------------------------------------*
C @EXE BEGSR :
C*----------------------------------------------------*
C Z-ADD1 W1CNT 50 :
C* :
B001 C W1CNT DOWLENOENTR :
001 C EXSR @ATR :
001 C EXSR @CHECK :
B002 C W1CHK IFEQ *ON :
002 C EXSR @DLSPL :
E002 C END :
001 C ADD 1 W1CNT :
001 C ADD LSTSIZ STRPOS :
E001 C END :
C* :
C ENDSR :
C*----------------------------------------------------*
C @ATR BEGSR :
C*----------------------------------------------------*
C CALL 'QUSRTVUS' 95 :
C PARM USRSPC :
C PARM STRPOS :
C PARM LENDTA :
C PARM SF0100 :
C* :
C MOVE *BLANK JOBINF 26 :
C MOVE *BLANK SPLFNM 10 :
C MOVE *BLANK SPLF# :
C* :
C CALL 'QUSRSPLA' 95 :
C PARM SA0100 :
C PARM RCVLEN :
C PARM #ATR# FMTATR 8 :
C PARM '*INT' JOBINF :
C PARM IJOBID JOBID :
C PARM ISPLID SPLFID :
C PARM '*INT' SPLFNM :
C PARM SPLF# :
C* :
C ENDSR :
C*----------------------------------------------------*
C @CHECK BEGSR :
C*----------------------------------------------------*
B001 C DATCEN IFEQ '0' :
001 C '19' CAT DATFOP:0 W1DATF 8 P :
+001 C ELSE :
001 C '20' CAT DATFOP:0 W1DATF P :
E001 C END :
C* :
C MOVE *OFF W1CHK 1 :
C* :
B001 C W1DATF IFLE W1DATE :
B002 C PISPLN IFEQ '*ALL' :
002 C MOVE *ON W1CHK :
+002 C ELSE :
B003 C *IN86 IFEQ *ON :GENERIC ON
003 C MOVELFILNAM DSNAM :
003 C MOVEA*BLANK NAM,LL :
B004 C PISPLN IFEQ DSNAM :
004 C MOVE *ON W1CHK :
E004 C END :
+003 C ELSE :
B004 C FILNAM IFEQ PISPLN :
004 C MOVE *ON W1CHK :
E004 C END :
E003 C END :
E002 C END :
E001 C END :
C* :
B002 C W1CHK IFEQ *ON :
B001 C PIUSRD IFNE '*ALL ' :
*001 C PIUSRD ANDNEUSRDTA :
001 C MOVE *OFF W1CHK :
E001 C END :
B001 C PIJOBN IFNE '*ALL ' :
*001 C PIJOBN ANDNEJOBNAM :
001 C MOVE *OFF W1CHK :
E001 C END :
E001 C END :
C* :
C \CHKEN ENDSR :
C*----------------------------------------------------*
C @DLSPL BEGSR :
C*----------------------------------------------------*
C MOVE *BLANK W1CMD 128 :
C MOVE FILNUM W1FIL# 6 :
C MOVELCMD,1 W1CMD :
C W1CMD CAT FILNAM:1 W1CMD :
C W1CMD CAT CMD,2:1 W1CMD :
C W1CMD CAT JOBNUM:0 W1CMD :
C W1CMD CAT '/':0 W1CMD :
C W1CMD CAT USRNAM:0 W1CMD :
C W1CMD CAT '/':0 W1CMD :
C W1CMD CAT JOBNAM:0 W1CMD :
C W1CMD CAT CMD,3:0 W1CMD :
C W1CMD CAT W1FIL#:0 W1CMD :
C W1CMD CAT CMD,4:0 W1CMD :
C* :
C CALL 'QCMDEXC' 99 :
C PARM W1CMD :
C PARM 128 P1LEN 155 :
C* :
C ENDSR :
**
DLTSPLF
JOB(
) SPLNBR(
)
|