Using EDF menu functions

The function keys that you can use at any given time are displayed in a menu at the bottom of every EDF display (see Figure 134). The function of the ENTER key for that display is also shown. Functions that apply to all displays are always assigned to the same key, but definitions of some keys depend on the display and the intercept point. To select an option, press the indicated function key. Where a terminal has 24 function keys, EDF treats PF13 through PF24 as duplicates of PF1 through PF12 respectively. If your terminal has no PF keys, place the cursor under the option you want and press the ENTER key.

ABEND USER TASK
terminates the task being monitored. EDF asks you to confirm this action by displaying the message "ENTER ABEND CODE AND REQUEST ABEND AGAIN". After entering the code at the position indicated by the cursor, the user must request this function again to abend the task with a transaction dump identified by the specified code. If you enter "NO", the task is abended without a dump and with the 4-character default abend code of four question marks (????).

Abend codes beginning with the character A are reserved for use by CICS®. Using a CICS abend code may cause unpredictable results.

You cannot use this function if an abend is already in progress or the task is terminating.

BROWSE TEMP STORAGE
produces a display of the temporary storage queue CEBRxxxx, where xxxx is the terminal identifier of the terminal running EDF. This function is only available from the working storage (PF5) screen. You can then use CEBR commands, discussed in Using the CEBR commands, to display or modify temporary storage queues and to read or write transient data queues.
CONTINUE
redisplays the current screen if you have made any changes, incorporating the changes. If you had not made changes, CONTINUE causes the transaction under test to resume execution up to the next intercept point. To continue, press ENTER.
CURRENT DISPLAY
redisplays the current screen if you have made any changes, with the changes incorporated. If you have not made changes, it causes EDF to display the command screen for the last intercept point. To execute this function, press ENTER from the appropriate screen.
DIB DISPLAY
shows the contents of the DL/I interface block (DIB). This function is only available from the working-storage screen (PF5). See the Application Programming: EXEC DLI Commands manual for information on DIB fields.
EIB DISPLAY
displays the contents of the EIB. See Figure 135 for an example of an EIB display. For programming information about the EIB, see theCICS Application Programming Reference manual . If COMMAREA exists, EDF also displays its address and one line of data in the dump format.
INVOKE CECI
accesses CECI. This function is only available from the working storage (PF5) screen. See Figure 146 for an example of the screen from which CECI is invoked. You can then use CECI commands, discussed in Command-level interpreter (CECI). These CECI commands include INQUIRE and SET commands against the resources referenced by the original command before and after command execution. See inbound reply mode for restrictions when running CECI in dual-screen mode. The use of CECI from this panel is similar to the use of CEBR within CEDF.
END EDF SESSION
ends the EDF control of the transaction. The transaction continues running from that point but no longer runs in EDF mode.
NEXT DISPLAY
is the reverse of PREVIOUS DISPLAY. When you have returned to a previous display, this option causes the next one forward to be displayed and the display number to increase by one.
PREVIOUS DISPLAY
causes the previous display to be sent to the screen. This is the previous command display, unless you saved other displays. The number of the display from the current intercept point is always 00. As you request previous displays, the display number decreases by 1 to -01 for the first previous display, -02 for the one before that, and so on, down to the oldest display, -10. When no more previous screens are available, the PREVIOUS option disappears from the menu, and the corresponding function key becomes inoperative.
REGISTERS AT ABEND
displays storage containing the values of the registers should a local ASRA abend occur. The layout of the storage is:

In some cases, when a second program check occurs in the region before EDF has captured the values of the registers, this function does not appear on the menu of the abend display. If this happens, a second test run generally proves to be more informative.

REMEMBER DISPLAY
places a display that would not usually be kept in memory, such as an EIB display, in the EDF memory. (EDF automatically saves the displays at the start and completion of each command.) The memory can hold up to 10 displays. The displays are numbered in reverse chronological order (that is, -10 is the oldest display, and -01 is the newest). All pages associated with the display are kept in memory and can be scrolled when recalled. Note, however, that if you save a working-storage display, only the screen on view is saved.
SCROLL BACK
applies to an EIB, DIB, or command display that does not all fit on one screen. When the screen on view is not the first one of the display, and there is a plus sign (+) before the first option or field, you can view previous screens in the display by selecting SCROLL BACK. See Figure 135 for an example.
SCROLL FORWARD
applies to an EIB, DIB, or command display that does not all fit on one screen. When this happens, a plus sign (+) appears after the last option or field in the display, to show that there are more screens. Using SCROLL FORWARD brings up the next screen in the display.
SCROLL BACK FULL
has the same function for displays of working storage as the SCROLL BACK option for EIB and DIB displays. SCROLL BACK FULL gives a working-storage display one full screen backward, showing addresses lower in storage than those on the current screen.
SCROLL FORWARD FULL
has the same function for displays of working storage as the SCROLL FORWARD option for EIB and DIB displays. SCROLL FORWARD FULL gives a working-storage display one full screen forward, showing addresses higher in storage than those on the current screen.
SCROLL BACK HALF
is similar to SCROLL BACK FULL, except that the display of working storage is reversed by only half a screen.
SCROLL FORWARD HALF
is similar to SCROLL FORWARD FULL, except that the display of working storage is advanced by only half a screen.
STOP CONDITIONS
produces the menu screen shown in Figure 147. You use this screen to tell EDF when to resume its displays after you have pressed the SUPPRESS DISPLAYS key. You can use STOP CONDITIONS and SUPPRESS DISPLAYS together to cut down on the interaction between you and EDF when you are checking a program that you know is partly working.
Figure 147. Typical EDF display for STOP CONDITIONS
TRANSACTION: AC20 PROGRAM: DFH0VT1 TASK: 0086 APPLID: 1234567 DISPLAY: 00
DISPLAY ON CONDITION:-
 
     COMMAND:                       EXEC CICS
     OFFSET:                       X'......'
     LINE NUMBER:
     CICS EXCEPTION CONDITION:       ERROR
     ANY CICS CONDITION              NO
     TRANSACTION ABEND               YES
     NORMAL TASK TERMINATION         YES
     ABNORMAL TASK TERMINATION       YES
 
     DLI ERROR STATUS:
     ANY DLI ERROR STATUS
 
 
 
 
 
ENTER:  CURRENT DISPLAY
PF1 : UNDEFINED           PF2 : UNDEFINED         PF3 : UNDEFINED
PF4 : SUPPRESS DISPLAYS   PF5 : WORKING STORAGE   PF6 : USER DISPLAY
PF7 : UNDEFINED           PF8 : UNDEFINED         PF9 : UNDEFINED
PF10: UNDEFINED           PF11: UNDEFINED         PF12: REMEMBER DISPLAY

You can specify any or all of these events as STOP CONDITIONS:

You do not always have to set STOP CONDITIONS in order to use the SUPPRESS DISPLAYS function, because EDF sets a default in the following fields on the assumption that you usually want to resume displays if any of them occurs:

These are the options described in Figure 147. You can turn off any of the defaults that do not apply when you bring up the STOP CONDITIONS menu, as well as adding conditions specific to your program.

When you use an offset for STOP CONDITIONS, you must specify the offset of the BALR instruction corresponding to a command. The offset can be determined from the code listing produced by the compiler or assembler. In COBOL, C, C++, or PL/I, you must use the compiler option that produces the assembler listing to determine the relevant BALR instruction.

When you use a line number, you must specify it exactly as it appears on the listing, including leading zeros, and it must be the line on which a command starts. If you have used the NUM or the SEQUENCE translator options, the translator uses your line numbers as they appear in the source. Otherwise, the translator assigns line numbers.

Line numbers can be found in the translator listing (SYSPRINT in the translator step) if you have used either the SOURCE or VBREF translator options. If you have used the DEBUG translator option, as you must to use line numbers for STOP CONDITIONS, the line number also appears in your compilation (assembly) listing, embedded in the translated form of the command, as a parameter in the CALL statement.

You can tell EDF to stop suppressing displays at DL/I commands as well as at CICS commands. You do this by overtyping the qualifier "CICS" on the command line with "DLI" and entering the type of DL/I command at which you want suppression to stop. You must be executing a DL/I program or have executed one earlier in the same task. You can suppress DL/I commands as early as the program initiation panel.

You can also stop suppression when a particular DL/I status code occurs. For information about the status codes that you can use, see the list of codes in the DL/I interface block (DIB) in the Application Programming: EXEC DLI Commands manual.

SUPPRESS DISPLAYS
suppresses all EDF displays until one of the specified STOP CONDITIONS occurs. When the condition occurs, however, you still have access to the 10 previous command displays, even though they were not actually sent to the screen when they were originally created.
SWITCH HEX/CHAR
switches displays between character and hexadecimal form. The switch applies only to the command display, and has no effect on previously remembered displays, STOP CONDITIONS displays, or working-storage displays.

In DL/I command displays which contain the WHERE option, only the key values (the expressions following each comparison operator) can be converted to hexadecimal.

UNDEFINED
means that the indicated function key is not defined for the current display at the current intercept point.
USER DISPLAY
causes EDF to display what would be on the screen if the transaction was not running in EDF mode. (You can use it only for single terminal checkout.) To return to EDF after using this key, press the ENTER key.
WORKING STORAGE
allows you to see the contents of the working-storage area in your program, or of any other address in the CICS region. Figure 148 shows a typical working-storage screen.
Figure 148. Typical EDF display for working-storage
TRANSACTION: AC20 PROGRAM: DFH0VT1 TASK: 00030 APPLID: 1234567 DISPLAY:00
ADDRESS: 035493F0                    WORKING STORAGE
035493F0   000000  E3F14040 00000000 00010000 00000000   T1   ...........
03549400   000010  00000000 00000000 F1000000 00000000   ........1.......
03549410   000020  F0000000 00000000 F0000000 00000000   0.......0.......
03549420   000030  F0000000 00000000 F0000000 00000000   0.......0.......
03549430   000040  00000000 00000000 00000000 00000000   ................
03549440   000050  D7C1D5D3 00000000 D9C5C3C4 00000000   PANL....RECD....
03549450   000060  D3C9E2E3 00000000 C8C5D3D7 00000000   LIST....HELP....
03549460   000070  84000000 00000000 A4000000 00000000   d.......u.......
03549470   000080  82000000 00000000 C4000000 00000000   b.......D.......
03549480   000090  E4000000 00000000 C2000000 00000000   U.......B.......
03549490   0000A0  D5000000 00000000 E2000000 00000000   N.......S.......
035494A0   0000B0  7B000000 00000000 6C000000 00000000   #.......%.......
035494B0   0000C0  4A000000 00000000 F1000000 00000000   ¢.......1.......
035494C0   0000D0  F2000000 00000000 F3000000 00000000   2.......3.......
 
ENTER:  CURRENT DISPLAY
PF1 : UNDEFINED        PF2 : BROWSE TEMP STORAGE  PF3 : UNDEFINED
PF4 : EIB DISPLAY      PF5 : INVOKE CECI          PF6 : USER DISPLAY
PF7 : SCROLL BACK HALF PF8 : SCROLL FORWARD HALF  PF9 : UNDEFINED
PF10: SCROLL BACK FULL PF11: SCROLL FORWARD FULL  PF12: REMEMBER DISPLAY

The working-storage contents are displayed in a form similar to that of a dump listing, that is, in both hexadecimal and character representation. The address of working storage is displayed at the top of the screen. You can browse through the entire area using the scroll commands, or you can simply enter a new address at the top of the screen. This address can be anywhere within the CICS region. The working-storage display provides two additional scrolling keys, and a key to display the EIB (the DIB if the command is a DL/I command).

The meaning of "working storage" depends on the programming language of the application program, as follows:

COBOL
All data storage defined in the WORKING-STORAGE section of the program
C, C++ and PL/I
The dynamic storage area (DSA) of the current procedure
Assembler language
The storage defined in the current DFHEISTG DSECT

Assembler language programs do not always acquire working storage; it may not be necessary, for example, if the program does not issue CICS commands. You may get the message "Register 13 does not address DFHEISTG" when you LINK to such a program. The message does not necessarily mean an error, but there is no working storage to look at.

Except for COBOL programs, working storage starts with a standard format save area; that is, registers 14 to 12 begin at offset 12 and register 13 is stored at offset 4.

Working storage can be changed at the screen; either the hexadecimal section or the character section can be used. Also, the ADDRESS field at the head of the display can be overtyped with a hexadecimal address; storage starting at that address is then displayed when ENTER is pressed. This allows any location in the address space to be examined. Further information on the use of overtyping is given in Overtyping to make changes.

If the program storage examined is not part of the working storage of the program currently executing (which is unique to the particular transaction under test), the corresponding field on the screen is protected to prevent the user from overwriting storage that might belong to or affect another task.

If the initial part of a working-storage display line is blank, the blank portion is not part of working storage. This can occur because the display is doubleword aligned.

At the beginning and end of a task, working storage is not available. In these circumstances, EDF generates a blank storage display so that the user can still examine any storage area in the region by overtyping the address field.

Note that if you terminate a PL/I or Language Environment® program with an ordinary non-CICS return, EDF does not intercept the return, and you are not able to see working storage. If you use a RETURN command instead, you get an EDF display before execution and at program termination.

If you are using a Language Environment-enabled program, working storage is freed at program termination if the program is terminated using a non-CICS return. In this case, working storage is not available for display.

[[ Contents Previous Page | Next Page Index ]]