Selecting transaction dump output for the DFHDU640 program

The output from the CICS dump domain is written to DASD or tape, depending on which you specified when the transaction dump data sets were created and defined to CICS. The transaction dump utility program, DFHDU640, prepares the transaction dump output for printing and prints the formatted information.

Before printing a transaction dump data set, you should close the data set. Use the CEMT SET DUMPDS SWITCH command, or the corresponding EXEC CICS command, to switch to another dump data set, and close the active dump data set. You can use the CEMT SET DUMPDS AUTOSWITCH command, or the corresponding EXEC CICS SET command, to make CICS perform the switch automatically when the dump data set is full. Do not switch a dump data set while printing its contents.

The contents of a transaction dump data set are not erased, but they are lost when the data set is next opened for use. This happens only when:

If you use the dump utility program to print a dump data set that is still in use by CICS, any transaction dumps written during the current run are printed. These may be followed by an unidentified partial transaction dump from a previous run, whose header has been overwritten during the current run. Any such partial transaction dumps may be followed by further transaction dumps from the previous run.

Do not use the dump utility program to print a dump data set that has not been opened during the most recent execution of CICS. If you try to, either transaction dumps from a previous execution are reprinted, or the program is unable to recognize the records on the data set.

You govern the selection of the dumps that you want printed by control statements in the SYSIN data set. In addition to the dumps you select, the DFHDU640 program always writes a summary in the form of an index of the dumps that are on the data set being processed. The index information is taken from transaction dump header records, and is written either to a data set defined with a DD name of DFHTINDX, or to the SYSPRINT data set if the DFHTINDX DD statement is missing.

Format of the SYSIN control statements

Figure 27. SYSIN control statements for the DFHDU640 program
SELECT TYPE={OR|NOTOR|AND|NOTAND|SCAN}
[TRANID=({value|generic-value}[,value|generic-value}],.,.)]
[DUMPCODE=({value|generic-value}[,{value|generic-value}],.,.)]
[DUMPID=({value|value-range}[,{value|value-range}],.,.)]
[PAGESIZE=(value)]
[TIME=({time|time-range}[,{time|time-range}],.,.)]
[UPPERCASE=YES]
END

If you do not define a SYSIN data set, or SYSIN does not contain any control statements, all dumps in the DFHDMPDS data set are printed.

Code only one SELECT statement and one END statement, but you may code multiple TRANID, DUMPCODE, DUMPID, and TIME control statements. Each control statement must be on a separate line, but can start in any column. For example:

    //SYSIN    DD *
      SELECT TYPE=OR
      DUMPCODE=(MY*)
      TRANID=ABCD
      END

The descriptions of the statements you can code in SYSIN are as follows:

SELECT TYPE={OR|NOTOR|AND|NOTAND|SCAN}
This control statement, which is mandatory if you are specifying any of the other selection control statements, must be the first in SYSIN. Code the TYPE parameter with one of the following selection operands:
OR
Print only those dumps that match at least one of the fields defined in any TRANID, DUMPID, DUMPCODE, or TIME control statements that follow the SELECT statement. This is the default if you omit the TYPE parameter.
NOTOR
Print only those dumps that do not match any of the fields defined in any TRANID, DUMPID, DUMPCODE, or TIME control statements that follow the SELECT statement.
AND
Print only those dumps that match all of the fields defined in any TRANID, DUMPID, DUMPCODE, or TIME control statements that follow the SELECT statement.
NOTAND
Print only those dumps that do not match the combination of the fields defined in any TRANID, DUMPID, DUMPCODE, or TIME control statements that follow the SELECT statement.
SCAN
Do not print any dumps, but write only the summary, either to the DFHTINDX data set, or to the SYSPRINT data set if the DFHTINDX DD statement is missing. If you code SCAN, all other statements in the SYSIN data set (apart from the END statement) are ignored.

If you code any of the following control statements, they must appear in the SYSIN data set after a SELECT statement, and before the END statement. Each control statement must be on a separate line, but can start in any column.

TRANID=({value|generic-value}[,value|generic-value}],.,.)
specifies that dumps are to be selected by their transaction identifier (ID). You can code up to 20 4-character transaction IDs on the TRANID statement(s); excess transaction IDs are ignored. Code the transaction IDs either as explicit IDs, or as a generic form using plus (+) or asterisk (*) symbols as arbitrary characters. If you code a transaction ID of fewer than four characters, and without any arbitrary characters, it is assumed to be filled with trailing blanks (up to the limit of four characters for a transaction ID).

A + symbol represents any single character other than blank, and should be used to specify a single arbitrary character. For example:

TRANID=ABC
specifies a 3-character transaction ID of ‘ABC’.
TRANID=AB+
specifies a 3-character transaction ID, where the first two are ‘AB’, and the third is any character (other than blank).
TRANID=CD+F
specifies a 4-character transaction ID, where the first two are ‘CD’, the third is any character (other than blank), and the fourth is ‘F’.

An asterisk (*) symbol represents any character string not containing blanks, for example:

TRANID=XY*
specifies a transaction ID, where the first two characters are ‘XY’, the third character can be any character other than a blank, and the fourth can be any character.

All of the above examples can be coded on the following TRANID statement:

TRANID=(ABC,CD+F,XY*,AB+)
DUMPCODE=({value|generic-value}[,{value|generic-value}],.,.)
specifies that dumps are to be selected by a transaction dump code, which is either the 4-character abend code or your own explicitly defined code if you requested the dump. You can code up to 20 dump codes on the DUMPCODE statement(s); excess dump codes are ignored. Code the dump codes either as explicit codes, or as a generic form using plus (+) or asterisk (*) symbols as arbitrary characters. See the TRANID control statement for details of how to use the arbitrary character symbols.
DUMPID=({value|value-range}[,{value|value-range}],.,.)
specifies that dumps are to be selected by a 6- to 9-character dump identifier. You can code up to 10 dump identifiers or ranges of dump identifiers on the DUMPID statement(s); excess dump identifiers are ignored. The format of a dump identifier is xxxx/yyyy where xxxx represents the dump run number, and yyyy is the dump count. You must code the slash (/) symbol as a separator character between the dump run number and the dump count.
Note:
The DFHDU640 program checks only that the DUMPID operand is valid in length, and contains only numeric and / characters. If you specify a wrong numeric dump run number or dump count, or specify the wrong number of / characters, the DFHDU640 program fails to find a matching dump.

The dump identifier operands are defined as follows:

Dump run number
A number in the range 1 to 9999. (Leading zeros are not used for this number, which is why the dump id can vary from 6 to 9 characters.) The dump run number begins at 1 when you first start CICS® with a newly-initialized local catalog, and is incremented by 1 each time you restart CICS.
Note:
The dump run number is saved in the local catalog when you perform a normal shutdown, but is reset if you start CICS with a START=INITIAL or START=COLD system initialization parameter.
Dump count
A number in the range 0001 through 9999. (Leading zeros are required in the dump id.) This is the number assigned to the dump in this run of CICS, starting at 0001 for the first dump, and incremented by 1 with each dump taken.

You can code the DUMPID parameter as a single value, as a range of values, or as a combination of both. If you specify a range of DUMPIDs, you must specify the lower value first. For example:

DUMPID=10/0005
specifies a single dump identified as the fifth dump taken during dump run number 10.
DUMPID=125/0001-125/9999
specifies all the dumps taken during dump run number 125.
DUMPID=(125/0001-125/0003,125/0019)
specifies the first three dumps taken during dump run number 125, plus dump count number 19.
PAGESIZE=(value)
specifies the number of lines to be printed on a page. You can code values in the range 20 through 9999 lines per page. If you specify an incorrect value, CICS issues an error message and uses the default page size. The default value is 60.
TIME=({time|time-range}[,{time|time-range}],.,.)
specifies that dumps are to be selected by the time at which a dump was taken. You can code up to ten time values or range of times on the TIME statement(s); excess times are ignored. Code either a time value or a range of times, or any combination of both, specifying the time in hours and minutes only, ignoring the seconds. (If CICS takes more than one transaction dump in the same minute, all dumps matching the hour and minute are selected.)

The format for time is hh.mm or hh:mm, and you specify a range of times as hh.mm-hh.mm or hh:mm-hh:mm. You must specify the hours and minutes as two digits, in the range 00 through 24 and 00 through 59 respectively.

UPPERCASE=YES
specifies that the data output is to be in uppercase only. The parameter must be coded as shown in uppercase characters with no spaces between words. If you want output in mixed case (the default), do not code this parameter.
END
This statement is optional and terminates the SELECT group. All statements following the END statement are ignored. If you omit the END statement, the SELECT group is terminated by the end of the SYSIN data set.

Related reference
Dump utility program (DFHDU640)
Job control statements to run the DFHDU640 program
Using IPCS to format and analyze CICS dumps: Overview
[[ Contents Previous Page | Next Page Index ]]