Program Trace (2.4)
Related Topics
The Program Trace screen (2.4) traces the logic flow of an application program that has just executed or is at a break/abend.
This screen displays the Code Debug CICS TRACE facility data only if it was activated by the TRACE option on the Set Profile Defaults (0.1) screen, by the SET TRACE ON primary command, or by an entry on the Trace Summary (1.4) screen.
Program Trace Screen (2.4)
COMMAND ===> SCROLL ===> CSR
MODULE: CW100CB2 CSECT: CW100CB2 COMPILED: 28 FEB 2001 - 09.33.58
TERM: 0210 -------------------------- ASRA (DATA EXCEPTION) at CW100CB2.100460
=======> TASK(00370) MODULE:CW100CB2 CSECT:CW100CB2 LANGUAGE:COBOL II
100426** MOVE '......................00329 ' TO DFHEIV0
100427** CALL 'DFHEI1' USING DFHEIV0
100428** SERVICE LABEL
100429** GO TO 500-MAPERR DEPENDING ON DFHEIGDI.
<BRANCH>
100434** MOVE '..{........ ...00332 ' TO DFHEIV0
100435** CALL 'DFHEI1' USING DFHEIV0 DUMMY-EMP DUMMY-LEN.
100436**
100437**
100438** MOVE DUMMY-PAYEMP1 TO PAYEMP1.
100439** IF PAYEMP1 EQUAL '00001'
100440** 1 MOVE PAYROLL-DATA-EMP001 TO WORK-AREA
100441** 1 GO TO 300-EMPLOYEE-PAY-RTN.
<BRANCH>
100458** 300-EMPLOYEE-PAY-RTN.
100459** IF WA-TYPE EQUAL 'N' OR 'I' OR 'S'
<ABEND "ASRA" HAS BEEN TRAPPED>
100460** 1 COMPUTE CURR-PAY EQUAL WA-HOURS * WA-RATE
******************************** BOTTOM OF DATA *******************************
Access this screen by typing the number 4 on the Debugging Facilities Menu (2), or as described in Transferring Between Screens. If multiple facilities have been traced, the Program Trace Directory screen appears. Select your terminal on that screen.
Program Trace Screen (2.4)
COMMAND ===> SCROLL ===> CSR
MODULE: CSECT:
SEL TERM/IP TYPE
-------------------------------------------------------------------------------
_ 0451 Terminal
_ 0484 Terminal
*END*
Output Fields
data area
The data area shows the task number, program name, language, statement number, and the source statement that executed. The data displays with the most recent entry in the trace table as the last entry on the screen. Scroll up to see the statements executed earlier.
If no source is available for a program, the Program Trace screen will display a list of offsets executed for the program.
Several highlighted separator lines may be displayed throughout the trace. These separator lines provide additional information about the actual execution of the program. These separator lines may designate any of the following:
- A new program or task was reached. This line includes the task number, program name, program language.
- A <BRANCH> where a change in program flow was detected, such as a GOTO, IF, PERFORM, branch, etc.
- An abend code when an abend was trapped by Code Debug CICS.
- The number of executable statements skipped when one or more consecutive skips were encountered during execution.
- New resume statements when the execution pointer was moved to a new statement.
Use the SHOW primary command with the LABEL, PARA, or PROC operand to view a more compact display of program flow. The resulting display will show only a trace of the labels, paragraphs, or procedures that were executed. See SHOW (SH) for details.
This trace table is not purged until the session terminates or the trace is turned off. It contains trace information for transactions in this session. The trace table is a wrap-around table. As it fills up, the oldest entries are displaced by the newer ones.
TERM
Current terminal identification.
TASK
CICS task number to which the trace entries apply.
PROGRAM
Program name to which the trace entries apply.
LANGUAGE
Language for the specified program.
PRINT Command
The PRINT primary command can be used to produce hard copy output of the program trace at the current point of execution. For more information, see PRINT. A site must be running JES2 or JES3 as its print spooler for this printout to be available. Output is written to a JES SYSOUT data set that is routed to the JES HOLD queue. By logging onto TSO and using SDSF, you can view and perform finds in the output before directing it to a printer.
The following OUTPUT PARAMETERS screen is displayed when the PRINT command is entered. Additional data for routing the output to the desired destination is entered on this screen.
Program Trace Output Parameters Screen
COMMAND ===> PRINT SCROLL ===> CSR
MODULE: CWDEMCB2 CSECT: CWDEMCB2 COMPILED: 09 JUN 2005 - 11.23.01
OUTPUT PARAMETERS
VALID COMMANDS: END = OUTPUT TO JES QUEUE CANCEL = ABORT OUTPUT
SYSOUT CLASS.....
NODE.............
DESTINATION......
TITLE............
NAME.............
ROOM.............
BUILDING.........
DEPARTMENT.......
ADDRESS..........
Enter any data that is required at your installation. To complete the print operation, simply use the END command or key. Output will be spooled to the JES HOLD queue so you can review it before printing. To cancel the print operation, enter a CANCEL command.
If your site is using Code Debug’s profile data set, parameters entered on this screen are saved in your profile and retained when you end your Code Debug debugging session. Otherwise the data will not be saved between sessions.
The following three fields are always displayed on the Output Parameters screen:
SYSOUT CLASS
Enter a 1-byte value in the range A to Z, 0 to 9, or an asterisk (*) to specify the JES output class to be used for the program trace SYSOUT data set.
NODE
(Optional) If your site has multiple JES nodes available, you can route the output to a specific node by entering the JES node name here. If you do not have multiple nodes, or wish the output to be routed to the node associated with your CICS region, leave this field blank. Data entered in this field must be 1 to 8 positions in length and designate a valid JES node.
DESTINATION
(Required) Specify the JES remote or local terminal, remote workstation, local device, or userID to which you want the output directed. In most cases, you will enter your userID. If you specify a printer ID in this field, the output will stay in the HOLD queue until it is released for printing. Data entered in this field must be 1 to 8 positions in length.
The following six fields are displayed if your JES2 or JES3 supports use of the OUTADD and OUTDEL macros. These macros are used to specify data corresponding to the six fields that are supported on the OUTPUT JCL statement. Each field is 1 to 60 bytes in length and all are optional. Text entered in these fields is printed on the JES banner pages that accompany the printed output. Many sites use this data to ensure proper delivery of printed output.
TITLE
Enter text to be printed in the TITLE field of the JES banner page.
NAME
Enter text to be printed in the NAME field of the JES banner page.
ROOM
Enter text to be printed in the ROOM field of the JES banner page.
BUILDING
Enter text to be printed in the BUILDING field of the JES banner page.
DEPARTMENT
Enter text to be printed in the DEPARTMENT field of the JES banner page.
ADDRESS
Enter text to be printed in the ADDRESS field of the JES banner page. Only one address line can be used.