Batch COBOL Fault Diagnosis
This tutorial will guide you through some of the capabilities within BMC AMI DevX Abend-AID, including:
- Using BMC AMI DevX Abend-AID to examine a batch COBOL abend.
- Utilizing Abend-AID's features to view storage, compiled listings, variable values.
- Taking advantage of Abend-AID's link to BMC AMI DevX File-AID to view formatted VSAM, QSAM, etc., files.
Table of Contents
- Starting BMC AMI DevX Abend-AID
- The Diagnostic Summary
- Program Detail Screen
- Abend-AID Peek
- File Summary Screen
- Program Summary Screen
- Wrap-up
Starting BMC AMI DevX Abend-AID
To access Abend-AID for Batch within BMC AMI DevX Workbench for Eclipse:
This opens a view into Abend-AID within your BMC AMI DevX Workbench for Eclipse IDE. Integration of the tools needed for developers to do their daily jobs is a key feature of the Workbench for Eclipse experience.
The main menu of Abend-AID is the gateway to many useful views of your Fault Analysis data. We'll start by looking at the Fault Summary of a specific job (CWEZXXXX) to spotlight how you can leverage Abend-AID to quickly understand the root cause of a reported abend.
Fault Summary provides you easy, hyperlinked access to your generated batch, CICS, IMS, and SVC dumps sortable by job name, CICS region name, IMS message region name, etc. Each column provides a masking field (asterisks) to shorten the time needed to find your dump.

You now have filtered to only jobnames that begin with CWEZ. Next, we'll dig a little deeper using Abend-AID's hyperlinks.

We've now filtered down to entries only for jobname CWEZXXXX. Next, we'll select one of the entries to begin diagnosing an abend.
The Diagnostic Summary
The Diagnostic Summary provides the information needed to diagnose a batch program error. The summary analyzes the abend, provides a probable reason why it occurred, and usually suggests a resolution. For COBOL, PL/I, and Assembler programs compiled with source support, the statement number and source code of the statement in error are shown.
We'll use the Diagnostic Summary as a window into details about the program, the listing, storage areas, a narrative explanation of the error code, and other information valuable in diagnosing an abend.


Program Detail Screen
The Program Detail screen provides detailed information about the selected program and gives you hyperlinks to source listings, concatenations and storage areas.


The STEPLIB Concatenation screen displays the datasets and their associated volsers for the JOBLIB or STEPLIB DD statement defined in the JCL at the time of this abend. The highlighted dataset name is the load library from where the module was loaded.

The COBOL Listing screen displays the source listing statements of the selected program, highlighting the active statement (abending offset, program call, etc.). For COBOL programs, Abend-AID displays the Procedure Division of the selected program.

Abend-AID Peek
Abend-AID's Peek line command displays the program storage for variables in the listing.
To use the Peek command, enter 'Pn' in the first two columns of the line number, where 'n' is the relative number of the variable in the statement.

Abend-AID highlights for you the storage containing the "peeked" variable.

This is a subroutine, so no File Section exists. Abend-AID generates a message indicating you are positioned on the next area, the working storage section. In this section you can see the field name, the picture type, and hyperlinked values of all variables in storage.

Here you are taken to the Expanded Data Field, which shows values in both zoned decimal and in character mode. This section is particularly helpful for fields containing a mixture of display, binary, and packed decimal fields.

Displayed are the fields comprising the linkage section, the picture types, and variable values.
- The abending line of code is easily found with a hyperlinked line number that takes you to the listing.

- The variables comprising the line of code, along with their picture types and values at the time of the abend. The variables and values are hyperlinks to Working-Storage.

- Abend-AID produces for you a narrative explanation of the abend and IBM messages that accompany the abend.

- The Program Information subsection provides information about the load library or program object library the module was loaded from, the bind date/time, with hyperlinks to the Program Detail screen and the Steplib Concatenation screen.

- The Last Call or I/O subsection shows you the last program call or I/O statements executed prior to the abend, the paragraph of the statement, and hyperlinks to the line numbers of the call.

- The Call Trace Summary spells out the sequence of programs called from the initial program to the abend. Hyperlinks take you to the Program Detail screen for each program, or to the Call Detail screen (discussed next) for each offset.


Abend-AID highlights for you the CALL Statement where CWAACOB1 calls CWAAHOUR. Included are the call statement argument definitions and values. Hyperlinks on this screen provide you quick access to the listing or to the Expanded Data field for the argument values.

Here you can see all the module names and the libraries from which they were loaded for all programs (both application and LE) that appear in the calling chain. Abend-AID indicates when modules are loaded from the LINKLIST and details the library set to help with your diagnosis.

This is another path to the Steplib concatenation (earlier we used a hyperlink from the Program Detail screen). As you saw previously, the library from where the modules loaded is highlighted.

If your system runs JES2, Abend-AID shows you the submitted JCL that produced the abend.
File Summary Screen
The FILE command displays information about the files allocated to the abending program and their DD statements.


The Record Image screen (available for local files only) displays the current, and possibly the previous, key and record data associated with the selected file request.

The File Detail screen gives you general file information, statistics, and status about the selected file. Hyperlinks are available to the Record Image, the file description in the listing, and additional information about the file. Also available to you are hyperlinks to browse or edit the file with File-AID.

You are placed in a File-AID browse session window from which you can see the dataset's records.
Program Summary Screen
The Program Summary Information screen (available from the 'PROG' link in the Supporting Information section of the Diagnostic Summary) identifies all active modules involved in an abending transaction. Key identification data is summarized for each module used by a transaction up to the abending module. This screen allows you to quickly verify whether the correct version of a module is in use.

From here you have links to extensive information about the application programs that comprise the active calling chain:
- The Program Detail, Program Listing, and Program Storage options have been covered in this document previously.
- Clicking on the Compiler Options shows the language and version the program was compiled or assembled under, as well as the compile options (if the program was compiled with COBOL).
- Data Locator, Extended Search, Impact Analysis and COBOL PERFORM Flow will be covered in later BMC AMI DevX Test Drive tutorials.
Wrap-up
This concludes our look at how Abend-AID provides powerful tools for diagnosing COBOL batch abends. We hope that you have enjoyed your look at these capabilities and look forward to working with you to implement some or all of the solution within your systems. Please remember to complete the Test Drive survey, as both your sponsor and our team are very interested in your feedback on the Test Drive Experience.
You can choose from any of the available scripts from the panel to the left or return to the main page here: Welcome to Test Drive





























