HLASM Toolkit Feature User's Guide
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


z/VSE JCL example

HLASM Toolkit Feature User's Guide
GC26-8710-10

The simplified JCL in Figure 1 shows how to create the CF, LOC, LOOC, MWU, SWU, TWU, and SOR reports. Before running this example edit the lines highlighted by numbers (such as  1 ) as described in the instructions following Figure 1.
Figure 1. Sample ASMXREF z/VSE JCL (part 1 of 3)
@ $$ JOB JNM=ASMXRUN,LDEST=(*,USERID),CLASS=0                                1 
// JOB GSCAN
* ---------------------------------------------------------------------
* NOTE 1: PLEASE CHANGE ALL OCCURRENCES OF "@" CHARACTER TO "*".
* ---------------------------------------------------------------------
* ********************************************************** *
*   Licensed Materials - Property of IBM                     *
*                                                            *
*   5696-234                                                 *
*                                                            *
*   (C) Copyright IBM Corp. 1975, 2008. All Rights Reserved. *
*                                                            *
*   US Government Users Restricted Rights - Use,             *
*   duplication or disclosure restricted by GSA ADP          *
*   Schedule Contract with IBM Corp.                         *
*                                                            *
* ********************************************************** *
 ON $ABEND GOTO LOGIT
 ON $CANCEL GOTO LOGIT
// UPSI 1
// OPTION JCANCEL,LOG,LINK,PARTDUMP
// LIBDEF *,SEARCH=(xref.test)                                            2 
/*
// DLBL XRFLANG,'asmxref.langfile',,VSAM,CAT=cat_name,DISP=(OLD,KEEP)  3 
// DLBL XRFTOKN,'asmxref.tokenfile',,VSAM,CAT=cat_name,DISP=(OLD,KEEP) 4 
// DLBL XRFCF,'%%XRFCF',0,VSAM,DISP=(NEW,KEEP),                        C
               RECORDS=(1000,500),CAT=cat_name,RECSIZE=143
// DLBL XRFLOC,'%%XRFLOC',0,VSAM,DISP=(NEW,KEEP),                      C
               RECORDS=(1000,500),CAT=cat_name,RECSIZE=145
// DLBL XRFLOOC,'%%XRFLOOC',0,VSAM,DISP=(NEW,KEEP),                    C
               RECORDS=(1000,500),CAT=cat_name,RECSIZE=99
// DLBL XRFMDLO,'%%XRFMDLO',0,VSAM,DISP=(NEW,KEEP),                    C
               RECORDS=(1000,500),CAT=cat_name,RECSIZE=8192
// DLBL XRFSWU,'%%XRFSWU',0,VSAM,DISP=(,KEEP),                         C
               RECORDS=(1000,500),CAT=cat_name,RECSIZE=93
// DLBL XRFSWUO,'%%XRFSWUO',0,VSAM,DISP=(,KEEP),                       C
               RECORDS=(1000,500),CAT=cat_name,RECSIZE=8192
// DLBL XRFMWU,'%%XRFMWU',0,VSAM,DISP=(,KEEP),                         C
               RECORDS=(1000,500),CAT=cat_name,RECSIZE=96
// DLBL XRFTWU,'%%XRFTWU',0,VSAM,DISP=(NEW,KEEP),                      C
               RECORDS=(1000,500),CAT=cat_name,RECSIZE=80
// EXEC ASMXREF,SIZE=(ASMXREF,2M),PARM='options'                       5 
*  SAMPLE CONTROL FILE FOR ASMXREF
*
  LIBRARY  LIB=xref.sample,TYPE=VSE,MEMTYPE=n                          6 
    INCLUDE MOD=asmtest,LANGUAGE=language
*
*
  REPORT   REPORT=CF
  REPORT   REPORT=LOC
  REPORT   REPORT=LOOC
  REPORT   REPORT=MWU
  REPORT   REPORT=SWU
  REPORT   REPORT=TWU
  REPORT   REPORT=SOR
/*
Figure 2. Sample ASMXREF z/VSE JCL (part 2 of 3)
IF $RC > 0 THEN
GOTO LOGIT
/*
// DLBL SYSPRT,'%%SYSPRT',0,VSAM,DISP=(NEW,KEEP),                      C
               RECORDS=(1000,500),CAT=cat_name,RECSIZE=8192
// DLBL SYSINDS,'%%XRFSWU',0,VSAM,DISP=(OLD,DELETE),                   C
               RECORDS=(1000,500),CAT=cat_name,RECSIZE=93           ──┐
// EXEC ASMXREP,PARM='SWU 60 SYM'                                     │
/*                                                                    │
IF $RC > 0 THEN                                                       │
GOTO LOGIT                                                            │
/*                                                                    │
// DLBL SYSPRT,'%%SYSPRT',0,VSAM,DISP=(NEW,KEEP),                     │C
               RECORDS=(1000,500),CAT=cat_name,RECSIZE=8192           │
// DLBL SYSINDS,'%%XRFMWU',0,VSAM,DISP=(OLD,DELETE),                  │C
               RECORDS=(1000,500),CAT=cat_name,RECSIZE=96             │
// EXEC ASMXREP,PARM='MWU 60 MAC'                                     │  7 
/*                                                                    │
IF $RC > 0 THEN                                                       │
GOTO LOGIT                                                            │
/*                                                                    │
// DLBL SYSPRT,'%%SYSPRT',0,VSAM,DISP=(NEW,KEEP),                     │C
               RECORDS=(1000,500),CAT=cat_name,RECSIZE=8192           │
// DLBL SYSINDS,'%%XRFCF',0,VSAM,DISP=(OLD,KEEP),                     │C
               RECORDS=(1000,500),CAT=cat_name,RECSIZE=143            │
// EXEC ASMXREP,PARM='CF'
/*                                                                    │
IF $RC > 0 THEN                                                       │
GOTO LOGIT                                                            │
/*                                                                    │
// DLBL SYSPRT,'%%SYSPRT',0,VSAM,DISP=(NEW,KEEP),                     │C
               RECORDS=(1000,500),CAT=cat_name,RECSIZE=8192           │
// DLBL SYSINDS,'%%XRFLOC',0,VSAM,DISP=(OLD,KEEP),                    │C
               RECORDS=(1000,500),CAT=cat_name,RECSIZE=145            │
// EXEC ASMXREP,PARM='LOC'                                            │
/*                                                                    │
IF $RC > 0 THEN                                                       │
GOTO LOGIT                                                            │
/*                                                                    │
 * NOTE : IF "LOOC REPORT" IS REQUIRED. EXECUTE THE FOLLOWING         │
 *        STEP BY UNCOMMENTING THE FOLLOWING.                         │
 *        LOOC REPORT IS AVAILABLE FOR CPP PROGRAMS.                  │
 * // DLBL SYSINDS,'%%XRFLOOC',0,VSAM,DISP=(OLD,KEEP),                │C
 *                RECORDS=(1000,500),CAT=cat_name,RECSIZE=99          │
 * // EXEC ASMXREP,PARM='LOOC 60'                                     │
 * /*                                                                 │
 * IF $RC > 0 THEN                                                    │
 * GOTO LOGIT                                                         │
 /*                                                                   │
/*                                                                    │
IF $RC > 0 THEN                                                       │
GOTO LOGIT                                                            │
/*                                                                    │
// DLBL SYSPRT,'%%SYSPRT',0,VSAM,DISP=(NEW,KEEP),                     │C
               RECORDS=(1000,500),CAT=cat_name,RECSIZE=8192           │
// DLBL SYSINDS,'%%XRFTWU',0,VSAM,DISP=(OLD,KEEP),                    │C
               RECORDS=(1000,500),CAT=cat_name,RECSIZE=80             │
// EXEC ASMXREP,PARM='TWU'                                            │
/*                                                                    │
IF $RC > 0 THEN                                                       │
GOTO LOGIT                                                            │
/*                                                                    │
// DLBL SYSPRT,'%%SYSPRT',0,VSAM,DISP=(NEW,KEEP),                     │C
               RECORDS=(1000,500),CAT=cat_name,RECSIZE=8192           │
// DLBL IJSYSPH,'SOR.DATA',0,SD                                       │
// EXTENT SYSPCH,SYSWK2,1,0,5110,15                                   │   8 
   ASSGN SYSPCH,DISK,VOL=SYSWK2,SHR                                   │
// DLBL SYSINDS,'%%XRFTWU',,VSAM,CAT=cat_name                         │
// EXEC ASMXREP,PARM='SOR'                                      ──────┘
Figure 3. Sample ASMXREF z/VSE JCL (part 3 of 3)
/*
   CLOSE SYSPCH,FED
/*
// DLBL IJSYSIN,'SOR.DATA',0,SD
// EXTENT SYSIPT,SYSWK2,1,0,5110,15                                        8 
   ASSGN SYSIPT,DISK,VOL=SYSWK2,SHR
// EXEC LIBR,PARM='ACC S=XREF.XREFN;CAT SOR.A R=Y'
/*
   CLOSE SYSIPT,FEC
/*
IF $RC > 0 THEN
GOTO LOGIT
/*
@ $$ PUN DISP=I,PRI=6,CLASS=A
// ASSGN SYSIPT,SYSRDR
// EXEC IESINSRT
#/ JOB ASMXRCAT
// EXEC LIBR,SIZE=256K,PARM='ACC S=XREF.XREFN'
@ $$ END
// UPSI 1
// DLBL XRFTWU,'%%XRFTWU',0,VSAM,DISP=(OLD,KEEP),CAT=cat_name
// EXEC DITTO,SIZE=512K
$$DITTO SC FILEIN=XRFTWU
/*
// EXEC IESINSRT
#&
@ $$ END
/*
/. LOGIT
// UPSI 1
// DLBL SYSINDS,'%%XRFTWU',0,VSAM,DISP=(OLD,DELETE),                   C
               RECORDS=(1000,500),CAT=cat_name,RECSIZE=80
// EXEC DITTO
$$DITTO SET DATAHDR=NO
$$DITTO SPR FILEIN=SYSINDS
/*
// EXEC LISTLOG
/&
@ $$ EOJ
Replace cat_name, throughout the JCL, with the name of your VSAM catalogs.
 1 
Replace node with the node, and userid with your user ID.
 2 
Replace xref.test with the name of the ASMXREF executable sublibrary.
 3 
Replace asmxref.langfile with the name of the XRFLANG file. See the note in Invoking ASMXREF on z/VSE.

For details of the XRFLANG file see ASMXREF XRFLANG Statements.

 4 
You require this DLBL statement only for the TWU and SOR reports; you can remove it for other reports.

When you need to supplement, or replace, the default tokens with your own tokens replace asmxref.tokenfile with the name of the file containing your token statements. See the note in Invoking ASMXREF on z/VSE. If the default tokens are sufficient, and additional tokens are not required, enter only a comment statement in the XRFTOKN file.

 5 
Replace options with any options that you need for your ASMXREF run.

The EXEC ASMXREF runs the programASMXREF .ASMXREF needs you to specify at least one PARM option with the EXEC ASMXREF statement. The ASMXREF control statements can follow the EXEC statement in SYSIPT with each statement on a separate line, as shown in the sample JCL, or you can assign SYSIPT to a file containing the control statements. You must follow the last control statement with the SYSRDR termination control characters /*.

The sample JCL supplied with ASMXREF includes the statement MEMTYPE=A. If this is not correct change to the correct member type.

For details of the options available with ASMXREF, see ASMXREF Options;for details of the control statements, see ASMXREF Control Statements.

The format of the command is:
Read syntax diagramSkip visual syntax diagram
                                             .-,------------.   
                                             V              |   
>>-//--EXEC--ASMXREF,--SIZE=nnn--,--PARM--=----'--option--'-+--><

 6 
See ASMXREF Control Statements for details of statements.
 7 
Enter the options required for eachASMXREP run. The sample JCL shows valid ASMXREP options.
You must run the EXEC ASMXREP for every report that you need. The format of the statement is:
Read syntax diagramSkip visual syntax diagram
>>-//--EXEC--ASMXREP--,--PARM=--'--+-CF---+--+------------+----->
                                   +-LOC--+  |        (1) |   
                                   +-LOOC-+  '-format-----'   
                                   +-MWU--+                   
                                   +-SOR--+                   
                                   +-SWU--+                   
                                   '-TWU--'                   

>--+--------------------+--+--------------+--+-------------+---->
   |            (1) (2) |  |          (3) |  |         (3) |   
   '-sort_order---------'  '-sep_char-----'  '-t_delim-----'   

>--'-----------------------------------------------------------><

Notes:
  1. These options are not available for the SOR report.
  2. This option not required for the LOOC report.
  3. These options are available only for the SOR report.
Note: All the parameters are positional. You must enter them in the order shown above, or you can enter just the report parameter and leave the other parameters blank. If you enter the parameters in the wrong order ASMXREF issues an error message.

For details of the options available see ASMXREP Options, and for details of the reports available see Understanding the reports. You must specify only one report with this statement.

 8 
Change the EXTENT cards to point to free space.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014