This site will undergo a maintenance outage on Saturday, 13 September beginning at 2:30 AM Central/1 PM IST for a platform upgrade. The downtime will be ~three hours.

FDREPORT SMS Examples


FDREPORT has many uses in a system with System Managed Storage (SMS) active. These are some examples of ways it can be used to aid in the management of an SMS system. All examples in this section are found in the JCL library installed with FDR. The member names are EX5443x.

Report by management class example

Report on all online SMS-managed data sets whose SMS management class is “TSO1”. The data set name, volume, and the SMS class names are to be reported. The FASTPATH option is enabled to improve FDREPORT performance.

//REPORT   EXEC PGM=FDREPORT,REGION=0M
//SYSPRINT DD SYSOUT=*
//ABRMAP   DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSIN    DD *
 TITLE    LINE='MANAGEMENT CLASS <MGMTCLAS>'
 XSELECT  MGMTCLAS=TSO1
 REPORT   FIELDS=(DSN,VOL,SMSCLASS)
 PRINT    ENABLE=(ONLINE,FASTPATH)
/*

The generated report looks like:

MANAGEMENT CLASS TSO1
DATA SET NAME                       VOLSER STORCLAS DATACLAS MGMTCLAS
-------------                       ------ -------- -------- --------
USER1.TEST.JCL                      SMS002 TEST              TSO1
USER3.ISPF.PROF                     TSO123 TSO       PROFILE TSO1

Summarize by storage class example

Scan on all online SMS-managed data sets (STORCLAS.NE.' ' selects SMS-managed data sets since they must all have an assigned storage class), and produce only summaries showing all storage class names in use, and the number of data sets and the number of tracks allocated to those data sets in each class.

//REPORT   EXEC PGM=FDREPORT,REGION=0M
//SYSPRINT DD SYSOUT=*
//ABRSUM   DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSIN    DD *
 TITLE    LINE='SMS STORAGE CLASS SUMMARY'
 XSELECT  STORCLAS.NE.' '
 SORT     FIELDS=(STORCLAS),BREAK=(Y)
 SUMMARY  FIELDS=(STORCLAS,DSN,SIZE)
 PRINT    ENABLE=(ONLINE,FASTPATH),RPTYPE=NONE,
          DISABLE=INFOMSG,SORTALLOC=YES
/*

The summary looks like:

SMS STORAGE CLASS SUMMARY
   SUBTOTAL -- STORCLAS--BKSDATA
    DSN------------------2055 SIZE----------------69563
    VALUE SUMMARY OF STORCLAS SUBTOTAL NUMBER OF VALUES-------1
      STORCLAS--BKSDATA ( 2055)

  FINAL TOTALS --
    DSN-----------------33669 SIZE-------------21135136
    VALUE SUMMARY OF STORCLAS--- TOTAL NUMBER OF VALUES------35
      STORCLAS--BKSDATA  (      2055)  CCRDATA  (      251)   CICS32   (     158)   CICS41   (  170)
                CICS42   (       187)  CICS51   (      111)   CICS52   (     174)   CICS53   (  109)
                 CICS54   (       109)  CICS55   (      106)   DB2A00   (     504)   DB2A01   (  239)
                 EUSCS01  (        11)  EUSCS02  (       15)   IDPDATA  (     417)   LIB      ( 2553)
                 MOVE001  (         8)  MOVE003  (       19)   PM1DATA  (    1330)   PM2DATA  ( 1724)
                 PM3DATA  (         1)  PRIDATA  (     1018)   RLSTEST  (       6)   SCARCH   (    3)
                 SCEAVNGS (         3)  SHRDATA  (      552)   SYSDATA  (    1500)   TMPDATA  (  135)
                 TSTDATA  (      1888)  UP0001   (    17049)   USTDATA  (     225)   USTPRODP (    3)
                 USTPROD1 (        62)  WRKDATA  (      417)   ZOSDATA  (     557)

Report by storage group example

Report on all data sets in two specific SMS storage groups. For PDS (PO) and PDSE (POE) data sets, member counts are displayed.

//REPORT   EXEC PGM=FDREPORT,REGION=0M
//SYSPRINT DD SYSOUT=*
//ABRMAP   DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSIN    DD *
 TITLE    LINE='SMS STORAGE GROUPS PROD AND TEST'
 XSELECT  STORGRP=(PROD,TEST)
 SORT     FIELDS=(STORGRP,DSN)
 REPORT   FIELDS=(SPLDSN,STORGRP,VOL,DSORG,LRDATE,SIZE,MEMBERS)
 PRINT    SORTALLOC=YES
/*

The generated report looks like:

SMS STORAGE GROUPS PROD AND TEST
                                            D/S
DATA SET NAME               STORGRP  VOLSER ORG   LRDATE    ALLOC MEMBER
-------------               -------- ------ --- -------- -------- ------
PAYROLL.MASTER              PROD     PROD02 PS  2018.169      750      0
PROD.CARD.CNTL              PROD     PROD12 POE 2018.170       30     27
QATESTS.AIX.DATA            TEST     IDPLB7 EF  2019.094       75
QATESTS.AIX.INDEX           TEST     IDPLB7 EF                  1
QATESTS.REBUILD.DATA        TEST     IDPLB2 EF  2017.200       75
QATESTS.REBUILD.INDEX       TEST     IDPLB2 EF                  2
SYSP.TEST.TABLES            TEST     TEST05 PO  2019.150       26      7

Prepare for SMS conversion example

Report on data sets that are ineligible for SMS conversion, so that they can be manually handled. Ineligible data sets are ISAM, non-ICF VSAM, unmovable, and uncataloged data sets. CATALOG=NO selects uncataloged data sets, while CATALOG=ERR selects those cataloged to another volume. In the report, the catalog status is printed, as well as the volume where the data set is cataloged, if any.

//REPORT   EXEC PGM=FDREPORT,REGION=0M
//SYSPRINT DD SYSOUT=*
//ABRMAP   DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSIN    DD *
 TITLE    LINE='DATA SETS INELIGIBLE FOR SMS’ 
 XSELECT  DSORG=(U,IS,AM),DSORG.NE.EF,VOLG=TSO
 XSELECT  CATALOG=NO,VOLG=TSO
 XSELECT  CATALOG=ERR,VOLG=TSO
 REPORT   FIELDS=(DEFAULTS,CATALOG,CATVOL)
 PRINT
/*

The generated report looks like:

DATA SETS INELIGIBLE FOR SMS
                                  D/S                                         CAT
DATA SET NAME               VOLSER ORG RECFM BKSIZ LRECL    ALLOC     FREE %FR STA CATVOL
-------------               ------ --- ----- ----- ----- -------- -------- --- --- ------
FDRABR.VSCR091.B109202A     TSO005 PS  U     32760             16        0   0 NO
FDRABR.VSCR091.B109202B     TSO005 PS  U     32760             16        0   0 NO
FDRABR.VSCR092.B109202A     TSO005 PS  U     32760              4        0   0 NO
USR1.BACKUP.TSO007          TSO005 PS  U     32760             31        0   0 ERR E30133
FDRBKUP.P543103.VFP2202     TSO005 PS  U     32760             10        0   0 ERR IDPT02

SMS storage group summary example

Summarize and produce a single-line of information for all the SMS Storage Groups. This is done using the VOLUME SUMMARY service that summarizes on volume fields.

//REPORT   EXEC PGM=FDREPORT,REGION=0M
//SYSPRINT DD SYSOUT=*
//ABRMAP   DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSIN    DD *
 DEFAULT  ENABLE=FASTPATH,DISABLE=INFOMSG
 HEADING  LINE(1)='STORAGE       TOTAL           FREE       + 
                   FREE  FREE',
          LINE(2)='GROUP     CYLINDERS      CYLINDERS     + 
                   TRACKS   PCT',
          LINE(3)='-------- ----------- ----------- +
                   ----------- ---' 
 XSELECT  STORGRP=*
 REPORT   FIELDS=(VLSMSSTG,VLCYLVOL,VLFRECYL,
                  VLFRETRK,SP2,VL%FTRKS)
 PRINT    VOLSUMMARY=STORGRP,DATATYPE=VOLDATA
/*

The generated report looks like:

STORAGE       TOTAL        FREE        FREE FREE
GROUP     CYLINDERS   CYLINDERS      TRACKS  PCT
-------- ----------- ----------- ----------- ---
DATABASE       60705       26041      391437  42
PRODRSVD       99057       88217     1323304  89
PROD0          25599        6267       94804  24
PROD1          23373        2468       37050  10
TEMP           70119       69718     1045898  99

--
            9415728     7198202   107987421  76

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*