Space announcement This documentation space provides the same content as before, but the organization of the content has changed. The content is now organized based on logical branches instead of legacy book titles. We hope that the new structure will help you quickly find the content that you need.

Program Trace (2.4)


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.

Important

Program tracing can be used for Assembler, C, COBOL, and PL/I programs.

Program Trace Screen (2.4)

 ------------------------------- PROGRAM TRACE (2.4) ----------------------C024
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)

---------------------------- PROGRAM TRACE DIRECTORY (2.4) ----------------C024
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.

Important

The trace of an optimized program may not be in the order expected. The optimizer process reorders the logic for efficiency, and the object module may end up different from the source.

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

 -------------------------------- PROGRAM TRACE (2.4) ---------------------C024
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.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*