z/OS DFSMSrmm Reporting
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Tailoring the DFSMSrmm-supplied EXECs to create your own reports

z/OS DFSMSrmm Reporting
SC23-6875-00

When used as is, the DFSMSrmm-supplied report REPORT01 produces a pull list for scratch volumes that are sorted by volume serial number. Follow these steps to tailor the report REPORT01 to provide information about volumes with temporary write errors instead of a pull list for scratch tapes:

  1. Make a copy of the EDGRRPTE REXX EXEC to avoid losing any modifications that you make to the DFSMSrmm-supplied reports, because you will lose your changes when DFSMSrmm replaces them. The EDGRRPTE EXEC shipped with DFSMSrmm uses the DFSORT VLSHRT option. You might need to modify the EXEC if you do not have DFSORT installed.
  2. To change the sort order and criteria, change the SORT FIELDS and INCLUDE statement for the REPORT01 in the EDGRRPTE REXX EXEC. To find the sort statement for the REPORT01, do a search for SORT01. You can find the fields for the SORT FIELD and the INCLUDE statement by looking at the mapping of the extended extract record EDGRXEXT.
    Figure 1 shows the DFSMSrmm-supplied EDGRRPTE REXX EXEC, where REPORT01 is sorted by volume serial number and volume status.
    Figure 1. Sorting by volume serial number and volume status
      sort01.1 = "  SORT FIELDS=(9,6,CH,A)                "
       sort01.1 = left(sort01.1,80)
       sort01.2 = "  INCLUDE  COND=(5,1,CH,EQ,C'X',        "
       sort01.2 = left(sort01.2,80)
       sort01.3 = "            AND,322,8,CH,EQ,C'SCRATCH ',"
       sort01.3 = left(sort01.3,80)
       sort01.4 = "            AND,1326,5,CH,LT,C'    2')  "
       sort01.4 = left(sort01.4,80)
       sort01.5 = "  OPTION VLSHRT                         "
       sort01.5 = left(sort01.5,80)
       s01 = 5
    Figure 2 shows 370 in the SORT FIELD. This is the offset in the EDGRXEXT mapping macro for the temporary write errors, plus the value 4 for the record length field.
    Figure 2. Sorting by volume serial number, volume status, and temporary errors, excluding volumes without errors
       sort01.1 = "  SORT FIELDS=(9,6,CH,A)                "
        sort01.1 = left(sort01.1,80)
        sort01.2 = "  INCLUDE  COND=(5,1,CH,EQ,C'X',        "
        sort01.2 = left(sort01.2,80)
        sort01.3 = "            AND,322,8,CH,EQ,C'SCRATCH ',"
        sort01.3 = left(sort01.3,80)
        sort01.4 = "            AND,1326,5,CH,LT,C'    2')  "
        sort01.4 = left(sort01.4,80)
        sort01.5 = "            AND,375,4,CH,GT,C'   0')    "
        sort01.5 = left(sort01.5,80)
        sort01.6 = "  OPTION VLSHRT                         "
        sort01.6 = left(sort01.6,80)
        s01 = 6
  3. To change the report header, modify the DFSMSrmm-supplied EDGRRPTE REXX EXEC, as shown in Figure 3.
    Figure 3. REPORT01 Report header
    t2.1  = center('Scratch Tapes by Volume Serial Number',69)
    t0.2  = left('EDGRPT01',8)
    Figure 4 shows the change to create a new report header named Volumes with Temporary Errors.
    Figure 4. REPORT01 Report header modified
    t2.1  = center('Volumes with Temporary Errors',69)
    t0.2  = left('EDGRPT01',8)
  4. To change the titles on the columns, modify the DFSMSrmm-supplied EDGRRPTE REXX EXEC.out.cs = asa.his the title line for the report columns. You can find the definition for the title variables in the sample EDGRRPTE EXEC starting at the labelconst. Figure 5 shows the report column headings as they are defined in the sample EDGRRPTE REXX EXEC.
    Figure 5. REPORT01 column headings
      do h = 1 to 3
         cs     = cs + 1
         out.cs = asa.h tvolser.h tdsname.h tvolseq.h tdsnseq.h,
                        tcrdate.h texpdto.h,
                        tflag.h tltyp.h,
                        tmedty.h tmedrec.h,
                        thome.h tstore.h tloc.h,
                        terror.h
       end
    Figure 6 shows the variablettwrte.1, which is the column heading for temporary errors.
    Figure 6. REPORT01 column headings modified
      do h = 1 to 3
         cs     = cs + 1
         out.cs = asa.h tvolser.h tdsname.h tcrdate.h ttwrte.h,
                        texpdto.h,
                        tflag.h tltyp.h,
                        tmedty.h tmedrec.h,
                        thome.h tstore.h tloc.h,
                        terror.h
       end
  5. To obtain the correct output, modify the DFSMSrmm-supplied EDGRRPTE REXX EXEC by specifying the appropriate output variable. You can find the definition for these variables in the sample EDGRRPTE REXX EXEC, starting at the labellclexmap.out.cs = asa.2is the output value that is returned in the report. Figure 7 shows the JCL from the sample EDGRRPTE REXX EXEC.
    Figure 7. REPORT01 returned values
       .out.cs = asa.2 xvvolser xddsname xvvolseq xddsnseq,
                        xvcrdate xvexpdto,
                        lclflag  xvlabel,
                        xvmedty xvmedrec,
                        xvhloc xvloctyp lcloc lclerror
    Figure 8 shows the addition of thervtwerrvariable to obtain the temporary write error information.
    Figure 8. REPORT01 returned values modified
        out.cs = asa.2 xvvolser xddsname xvcrdate xvtwerr,
                        xvexpdto,
                        lclflag  xvlabel,
                        xvmedty xvmedrec,
                        xvhloc xvloctyp lcloc,
                        lclerror
  6. Submit the job.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014