It is possible to invoke DFHCSDUP from a user program. This method
enables you to create a flexible interface to the utility. By specifying
the appropriate entry parameters, your program can cause DFHCSDUP
to pass control to an exit routine at any of five exit points. The
exits can be used, for example, to pass commands to DFHCSDUP, or to
respond to messages produced by DFHCSDUP processing.
You can run your user program:
- In batch mode
- Under TSO.
Notes:
- In a TSO environment, it is normally possible for the terminal
operator to interrupt processing at any time by means of an ATTENTION
interrupt. In order to protect the integrity of the CSD file, DFHCSDUP
does not respond to such an interrupt until after it has completed
the processing associated with the current command. It then writes
message number ‘DFH5618’ to the put-message exit (see The put-message exit), where this is available, and also to the default
output file:
AN ATTENTION INTERRUPT WAS
REQUESTED DURING DFHCSDUP PROCESSING
Your put-message
exit routine can terminate DFHCSDUP, if desired. (Note that you must supply a put-message routine if you want your
operators to regain control after an ATTENTION interrupt.)
- Suitably authorized TSO operators can use the CEDA INSTALL transaction
to install resources that have previously been defined with DFHCSDUP.
For information about the CEDA INSTALL command, see the CICS® Resource Definition Guide.
When invoking DFHCSDUP, your program passes a parameter list addressed
by register 1. It may pass up to five parameters, as described below:
- OPTIONS
- A list of character strings, separated by commas. (The information
passed here is that which would otherwise be passed on the PARM keyword
of the EXEC statement of JCL.) A
maximum of four options can be specified:
- CSD({READWRITE|READONLY})
- specifies whether you require read-write or read-only access
to the CSD.
- PAGESIZE(nnnn)
- specifies the number of lines per page on output listings. Valid
values for nnnn are 4 through 9999. The default value is 60.
- NOCOMPAT|COMPAT
- specifies whether DFHCSDUP is to be invoked in compatibility
mode. By default, it is invoked in noncompatibility mode. For details
of compatibility mode, see the CICS Resource Definition Guide.
- UPPERCASE
- specifies that output listings are to be printed entirely in
uppercase characters. The default is to print in mixed case.
- DDNAMES
- A list of ddnames that, if specified, are substituted for those
normally used by DFHCSDUP.
- HDING
- The starting page number of any listing produced by DFHCSDUP.
You can use this parameter to ensure that subsequent invocations produce
logically numbered listings. If this parameter is not specified, the
starting page number is set to 1.
The length of the page number
data (field ‘bb’ in Figure 113) must be 0 or 4.
The page number, if supplied, must be four numeric EBCDIC characters.
The field, if present, is updated upon exit from DFHCSDUP with a number
one greater than that of the last page printed.
- DCBS
- The addresses of a set of data control blocks for use internally
by DFHCSDUP. Any DCBs (or ACBs) that you specify are used internally,
instead of those normally used by DFHCSDUP.
Note that if you specify
both replacement ddnames and replacement DCBs, the alternative DCBs
are used, but the alternative ddnames are disregarded.
- EXITS
- The addresses of a set of user exit routines to be invoked during
processing of DFHCSDUP.
The structure of the parameter list is shown in Figure 113.
You should note the following:
- Each parameter contains a length field, followed by some functional
data.
- The functional data for the DDNAMES, DCBS, and EXITS parameters
contains multiple subentries.
- The parameters OPTIONS, DDNAMES, and HDING are aligned on a halfword
boundary, and the first two bytes ‘bb’ contain the binary
number of bytes in the following functional
data.
- The parameters DCBS and EXITS are aligned on a fullword boundary,
and the first four bytes ‘00bb’ contain the binary number
of fullwords in the following functional data.
- If the ‘bb’ field for any parameter is zero, the parameter
is ignored.
- If a subentry in the functional data is all binary zeros, it is
ignored.
- If any subentry is not within the length indicated by ‘bb’,
it is ignored.
- In the DDNAMES functional data, each subentry consists of an 8-byte
ddname to replace a default ddname used by DFHCSDUP. DFHCSDUP does
not use the first three subentries of the DDNAMES parameter. The fourth,
fifth, and sixth subentries, if present, replace the ddnames of DFHCSD,
SYSIN, and SYSPRINT, respectively.
- In the DCBS functional data, each subentry consists of two fullwords.
The first word is not used by CICS. The
second word contains the address of an open DCB or ACB. You must ensure
that the DCB or ACB has been opened with the correct attributes, which
are:
- PRIMARY CSD
- AM=VSAM,MACRF=(KEY,DIR,SEQ,IN,OUT)
- INPUT FILE
- DSORG=PS,MACRF=GL,LRECL=80,RECFM=FB
The address of any end-of-data
routine (EODAD) or I/O error routine (SYNAD) in the DCB is overlaid
by DFHCSDUP.
- OUTPUT FILE
- DSORG=PS,MACRF=PL,LRECL=125,RECFM=VBA
DFHCSDUP does not use the first three subentries of the DCBS
parameter. The fourth, fifth, and sixth subentries, if present, are
used instead of the internal DCBs or ACBs for DFHCSD, SYSIN, and SYSPRINT,
respectively.
- In the EXITS parameter, each subentry consists of a single fullword
containing the address of an exit routine. You must specify the exit
routines in the order shown in Figure 113. (The user exits
are described in The user exit points in DFHCSDUP.)
Before invoking DFHCSDUP, your calling program must ensure that:
- RMODE(24) is in force.
- System/370 register conventions are obeyed.
- If the EXITS parameter is passed, any programming environment
needed by the exit routines has been initialized.
- Any ACBs or DCBs passed for use by DFHCSDUP are OPEN.
[[ Contents Previous Page | Next Page Index ]]