Identify View Database's Large Reports Using the SARGRW Program.
search cancel

Identify View Database's Large Reports Using the SARGRW Program.

book

Article ID: 10223

calendar_today

Updated On:

Products

Deliver View

Issue/Introduction

In trying to find additional space on the View database disk layer, how to use the SARGRW program to identify large reports for possible removal?

Environment

View 12.2 and Higher

Resolution

Below is a sample SARGRW program that lists reports in descending order by the number of LINES.

//XXXXXXXX JOB ...
//SARGRW00 EXEC PGM=SARGRW
//STEPLIB DD DISP=SHR,DSN=VIEW.CVDELOAD <=== Modify, if used
//SORTWK01 DD UNIT=SYSDA,SPACE=(CYL,(5),,CONTIG)
//SORTWK02 DD UNIT=SYSDA,SPACE=(CYL,(5),,CONTIG)
//SORTWK03 DD UNIT=SYSDA,SPACE=(CYL,(5),,CONTIG)
//SYSUDUMP DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//OUTFILE DD DISP=(,CATLG,DELETE),
// DSN=xxxxxx.xxxxxx.CARDS,
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=800),
// SPACE=(TRK,(5,1),RLSE),
// UNIT=xxxx,VOL=SER=xxxxxx
//PRTFILE DD SYSOUT=*
//SYSIN DD *
/CONTROL RULER=YES DATABASE=view_hlq <=== Modify DB name
/SORT LINES-D
/TITLE 'LISTING OF SYSOUTS BY GREATEST NUMBER OF LINES'
/DEFINE CNT BIN
/SET CNT = CNT+1
/PRINT ID 'ID'
/PRINT JOBNAME 'JOBNAME'
/PRINT JOBID 'JOBID'
/PRINT GEN 'GEN '
/PRINT SEQ 'SEQ '
/PRINT ARCHDATE 'ARC DATE'
/PRINT ARCHTIME 'ARC TIME'
/PRINT LOC 'LOC'
/PRINT LINES 'LINES'
/PRINT PAGES 'PAGES'
/PRINT DISKBLKS 'BLOCKS'
/PRINT XCODE 'XCODE'
/PRINT TAPESEQ 'TSEQ '
/PRINT DRSEQ 'DRSEQ'
/OUTPUT '/DELETE DISK ID=' COL(1)
/OUTPUT ID COL(17)
/OUTPUT ' GEN=' COL(49)
/OUTPUT EDIT(GEN,'99999') COL(54)
/OUTPUT ' SEQ=' COL(59)
/OUTPUT EDIT(SEQ,'99999') COL(64)
/ON ENDDATA
/ PRINT 'TOTAL SYSOUT='||CNT COL(1)
/END
/*
//

The //OUTFILE is a set of ID=... GEN=... SEQ=..." cards. It can be used as input to the SARBCH program (in the //SYSIN DD ... statement) to delete any unwated reports.