|
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:
.-,------------.
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:
>>-//--EXEC--ASMXREP--,--PARM=--'--+-CF---+--+------------+----->
+-LOC--+ | (1) |
+-LOOC-+ '-format-----'
+-MWU--+
+-SOR--+
+-SWU--+
'-TWU--'
>--+--------------------+--+--------------+--+-------------+---->
| (1) (2) | | (3) | | (3) |
'-sort_order---------' '-sep_char-----' '-t_delim-----'
>--'-----------------------------------------------------------><
Notes: - These options are not available for the SOR
report.
- This option not required for the LOOC report.
- 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.
|