Page 1 of 1

Record RMF Report into a Dataset

PostPosted: Fri Sep 04, 2009 5:56 pm
by hakghen
Hello Guys,

I'm using this JCL to genereate a RMF report, for CPU status and Workload Activity:

//ANDRELCW    JOB (ACCOUNT),'PGMRNAME',CLASS=A,REGION=32M           
//******************************************************************
//*        RMF POSTPROCESSING                                       
//******************************************************************
//RMFPP    EXEC PGM=ERBRMFPP,REGION=0M                             
//*STEPLIB  DD  DISP=SHR,DSN=CEE.SCEERUN                           
//MFPINPUT DD   DISP=SHR,DSN=SMF.ACCUM.LOG                         
//MFPMSGDS DD   SYSOUT=*                                           
//******************************************************************
//*        RMF POSTPROCESSING OPTIONS                               
//******************************************************************
//SYSIN    DD   *                                                   
  DATE(08282009,08282009)                                           
  REPORTS(CPU)                                                     
  SYSRPTS(WLMGL(WGROUP,RCLASS))                                     
  ETOD(1400,1600)                                                   
  PTOD(1400,1600)                                                   
  RTOD(1400,1600)                           
  STOD(1400,1600)                           
  SUMMARY(INT,TOT)                         
  NODELTA                                   
  NOEXITS                                   
  MAXPLEN(050)                             
  SYSOUT(A)                                 
  OVERVIEW(REPORT)                         
/*                                         


And it generates these sysout elements:

JESMSGLG JES2
JESJCL JES2
JESYSMSG JES2
MFPMSGDS RMFPP
PPSUM001 RMFPP
PPXSRPTS RMFPP
MFR00001 RMFPP
MFR00002 RMFPP
MFR00003 RMFPP
MFR00004 RMFPP

Is there a way to record theses RMFPP outputs inside a dataset for printing and also to record easily and take to another physical place?

Thanks in advance,

Re: Record RMF Report into a Dataset

PostPosted: Fri Sep 04, 2009 11:49 pm
by Bill Dennis
You can add DDs to the step. The MFR000xx files open sequentially so you "MOD" onto one file like this (First file is NEW, rest are MOD)
//MFR00001 DD DSN=xxxx,DISP=(,CATLG),
// UNIT=xx,SPACE=xx,BLKSIZE=0
//MFR00002 DD DSN=xxxx,DISP=(MOD,CATLG)
//MFR00003 DD DSN=xxxx,DISP=(MOD,CATLG)
//* INCLUDE A DD FOR ALL EXPECTED INTERVALS PLUS A FEW EXTRA
The other reports must have their own DD statements to direct to separate datasets.

Re: Record RMF Report into a Dataset

PostPosted: Sat Sep 05, 2009 12:00 am
by hakghen
Hmm.... I see, I'll try it here ;)

But what about the PPXSRPTS, that shows the Workload activity report? Any ideas?

Thanks! ;D

Re: Record RMF Report into a Dataset

PostPosted: Tue Sep 08, 2009 6:55 am
by hakghen
By the way, another question... I'll need to define the exact values of the registries that will be recorded in the dataset, correct? If so, how can I find these values (LRECL, i mean, and etc...)

Thanks once again! ;D

Re: Record RMF Report into a Dataset

PostPosted: Tue Sep 08, 2009 6:56 pm
by Bill Dennis
Add a PPXSRPTS DD to create a separate dataset as NEW,CATLG.

The program supplies the LRECL and RECFM, just specify BLKSIZE=0 to get half-track block sizes. I believe the report data is created as VB, LRECL=125.

Re: Record RMF Report into a Dataset

PostPosted: Wed Sep 09, 2009 4:27 am
by hakghen
Hello Bill, Thanks for all the help, I could extract the information to datasets! Althought I couldn't use the MOD function, I used this JCL:

//ANDRELRT    JOB (ACCOUNT),'RMFRTEST',CLASS=A,REGION=32M,         
//            NOTIFY=&SYSUID                                       
//******************************************************************
//*        RMF POSTPROCESSING                                       
//******************************************************************
//RMFPP    EXEC PGM=ERBRMFPP,REGION=0M                             
//*STEPLIB  DD  DISP=SHR,DSN=CEE.SCEERUN                           
//MFPINPUT DD   DISP=SHR,DSN=SMF.ACCUM.LOG                         
//MFPMSGDS DD   SYSOUT=*                                           
//MFR00001 DD   DSN=ANDRELS.CPU1,DISP=(,CATLG),UNIT=3390,           
//           SPACE=(TRK,(10,10)),BLKSIZE=0                         
//MFR00002 DD   DSN=ANDRELS.CPU2,DISP=(,CATLG),UNIT=3390,           
//           SPACE=(TRK,(10,10)),BLKSIZE=0                         
//MFR00003 DD   DSN=ANDRELS.CPU3,DISP=(,CATLG),UNIT=3390,           
//           SPACE=(TRK,(10,10)),BLKSIZE=0                         
//MFR00004 DD   DSN=ANDRELS.CPU4,DISP=(,CATLG),UNIT=3390,           
//           SPACE=(TRK,(10,10)),BLKSIZE=0                         
//PPSUM001 DD   DSN=ANDRELS.SUMM,DISP=(,CATLG),UNIT=3390,           
//           SPACE=(TRK,(10,10)),BLKSIZE=0                         
//PPXSRPTS DD   DSN=ANDRELS.WKLD,DISP=(,CATLG),UNIT=3390,           
//           SPACE=(TRK,(10,10)),BLKSIZE=0                         
//******************************************************************
//*        RMF POSTPROCESSING OPTIONS                               
//******************************************************************
//SYSIN    DD   *                                                   
  DATE(08282009,08282009)                                           
  REPORTS(CPU)                                                     
  SYSRPTS(WLMGL(WGROUP,RCLASS))                                     
  ETOD(1400,1600)                                                   
  PTOD(1400,1600)                                                   
  RTOD(1400,1600)                                                   
  STOD(1400,1600)                                                   
  SUMMARY(INT,TOT)                                                 
  NODELTA                                                           
   NOEXITS         
   MAXPLEN(050)   
   SYSOUT(A)       
   OVERVIEW(REPORT)
 /*               


But now, Hm... This might be a bit "offtopic", but how can I merge the ANDRELS.CPU1, ANDRELS.CPU2, ANDRELS.CPU3, ANDRELS.CPU4, ANDRELS.SUMM and ANDRELS.WKLD datasets inside a PDS (each one being a member)?

Thanks once again for all the help!