0% found this document useful (0 votes)
1K views286 pages

Xpeditor UserGuide PDF

Uploaded by

Shahul Hameed
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
1K views286 pages

Xpeditor UserGuide PDF

Uploaded by

Shahul Hameed
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 286

Xpediter/Code Coverage

Mainframe User/Reference Guide

Release 17.02
ii Xpediter/Code Coverage Mainframe User/Reference Guide

Please direct questions about Xpediter/Code Coverage


or comments on this document to:

Compuware Customer Support

https://go.compuware.com/

This document and the product referenced in it are subject to the following legends:

Copyright 1999 - 2017 Compuware Corporation. All rights reserved. Unpublished rights reserved under the
Copyright Laws of the United States.

U.S. GOVERNMENT RIGHTS-Use, duplication, or disclosure by the U.S. Government is subject to restrictions as
set forth in Compuware Corporation license agreement and as provided in DFARS 227.7202-1(a) and 227.7202-
3(a) (1995), DFARS 252.227-7013(c)(1)(ii) (OCT 1988), FAR 12.212(a) (1995), FAR 52.227-19, or FAR 52.227-14
(ALT III), as applicable. Compuware Corporation.

This product contains confidential information and trade secrets of Compuware Corporation. Use, disclosure, or
reproduction is prohibited without the prior express written permission of Compuware Corporation. Access is
limited to authorized users. Use of this product is subject to the terms and conditions of the user’s License
Agreement with Compuware Corporation.

Xpediter, Code Coverage, File-AID, Abend-AID, Topaz Workbench, FrontLine, Enterprise Common Components,
and Compuware Shared Services are trademarks or registered trademarks of Compuware Corporation.

IBM, CICS, DB2, DFSORT, IMS, Language Environment, MVS, OS/390, and z/OS are trademarks of International
Business Machines Corporation.

ACF2, CA-MIM, CA-ROSCOE, ENDEVOR, LIBRARIAN, PANEXEC, PANVALET, and Top Secret are trademarks or
registered trademarks of CA Technologies, Inc.

Adobe® Reader® is a trademark of Adobe Systems Incorporated in the United States and/or other countries.

All other company and product names are trademarks or registered trademarks of their respective owners.

Doc. OCT2017
September 27, 2017
iii

Contents

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
Intended Audience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
Notation Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x
Related Publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
Online Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
Customer Support. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
Compuware FrontLine Customer Support Website . . . . . . . . . . . . . . . . . . . xi
Contacting Customer Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
Corporate Website. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii
Information for Customer Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii

Part 1. Testing with Xpediter/Code Coverage


Chapter 1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1
About Code Coverage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1
Typical Code Coverage Scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1
About System Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2
Typical System Flow Scenario. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2
Primary Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2
Using Wildcard Characters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-3

Chapter 2. Specifying Code Coverage Defaults . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1


Defaults Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1
Xpediter/Code Coverage Defaults. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1
CICS Code Coverage Defaults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1
Job Information Screen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2
Repository Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3
Source Listing Override Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4
Report Filters Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-4
Filter Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4
Line Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-5
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-5
Line Filters Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-6
Line Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-6
Primary Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-6
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7
Block Filters Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7
Line Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8
Primary Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8
Retrieve Filters Screens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-9
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10
Retrieve Filters Member List Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-11
Browse Filters Screens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-11
Browse Filters Line Filters Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-12
Browse Filters Block Filters Screen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-12
Retrieve Filters Append or Replace Screen . . . . . . . . . . . . . . . . . . . . . . . .2-13
iv Xpediter/Code Coverage Mainframe User/Reference Guide

Save Filters Screens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-13


Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-14
Save Filters Line Filters Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-14
Save Filters Block Filters Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-15
CICS Program Inventory Datasets Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-15
CICS Application Load Libraries Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-17
CICS Source Listing Files Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-17

Chapter 3. Generating Code Coverage Reports . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1


Reports Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1
Line Commands. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2
Primary Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3
Reports Selection Criteria Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4
Selection Criteria Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-5
Sample Code Coverage Reports. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-5
System-Level Report. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-6
Program-Level Report. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-6
Annotated Listing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-7

Chapter 4. Generating System Flow Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1


System Flow Reports Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1
Line Commands. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1
Primary Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2
Sample System Flow Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3
System Flow Report Heading Explanations . . . . . . . . . . . . . . . . . . . . . . . . 4-3

Chapter 5. Using Results Repository Utilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1


Utilities Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1
Repository Utility Screen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2
Commands. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3
List/Delete Utility Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-4
Commands. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-5
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-5
System Selection Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-7
Test ID Selection Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-8
Program Selection Screen (Code Coverage Only) . . . . . . . . . . . . . . . . . . 5-10
Object Selection Screen (System Flow Only) . . . . . . . . . . . . . . . . . . . . . . 5-11
Confirm Delete Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-13
Export Utility Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-13
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-14
Import Utility Screen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-15
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-15
Merge Utility Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-16
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-16
Merge Utility Delete Confirmation Screen . . . . . . . . . . . . . . . . . . . . . . . 5-18
Flag Utility Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-18
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-19
Convert JCL Utility Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-20
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-21
Convert JCL Utility Job Card Override Parameter Screen . . . . . . . . . . . . 5-22
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-23
Convert JCL Utility Datasets Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-23
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-24
v

CICS Program Inventory Maintenance Screen. . . . . . . . . . . . . . . . . . . . . . . . . 5-24


Program Inventory File Copy Popup Window . . . . . . . . . . . . . . . . . . . . . 5-28
Program Inventory File Export Popup Window . . . . . . . . . . . . . . . . . . . . 5-29
Program Inventory File Import Popup Window. . . . . . . . . . . . . . . . . . . . 5-30
Program Inventory Populate Popup Window. . . . . . . . . . . . . . . . . . . . . . 5-31

Chapter 6. Using Code Coverage with Optimized Programs . . . . . . . . . . . . . . . . 6-1


Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1
Optimization Benefits and Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1
Difficulties Caused by Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-2
Code Coverage Statistics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-3
Optimization, Inferences, and Annotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-4
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-5

Part 2. Using Xpediter/Code Coverage with Xpediter/TSO and


Xpediter/IMS
Chapter 7. Using Code Coverage with Xpediter/TSO . . . . . . . . . . . . . . . . . . . . . . 7-1
Installation Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1
Collecting Code Coverage Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-2
Preparing for Code Coverage Capture . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-2
Completing the Collection of Code Coverage Data . . . . . . . . . . . . . . . . . . 7-3
Interactive and Batch Test Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . 7-6
Defining the Collection Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-8
Connecting to a Job . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-9
Connection Security Check. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-9
Editing the JCL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-10

Chapter 8. Using Code Coverage with Xpediter/IMS . . . . . . . . . . . . . . . . . . . . . . 8-1


Installation Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-1
Collecting Code Coverage Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-2
Preparing for Code Coverage Capture . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-2
Completing the Collection of Code Coverage Data . . . . . . . . . . . . . . . . . . 8-3
Defined IMS Commands on the BTS and MPP Test Screens . . . . . . . . . . . 8-4
Field Definitions of the BTS and MPP Test Screens . . . . . . . . . . . . . . . . . . 8-4
IMS Test Screen Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-7
Defining the Collection Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-8

Chapter 9. Test Data Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-1


Collecting TDO Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-1
Enabling TDO for a Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-1
Requesting TDO for a Test. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2
Excluding Files from TDO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-3
Format of the XVTDOOUT dataset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-4
COBOL and GSAM Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-5
IMS (non-GSAM) Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9-5

Part 3. Using Xpediter/Code Coverage with Xpediter/CICS


Chapter 10. Using Code Coverage with Xpediter/CICS . . . . . . . . . . . . . . . . . . . 10-1
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-1
Program Preparation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-1
Online Data Collection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-3
Reporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-4
Preliminary Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-5
CICS Code Coverage Transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-5
vi Xpediter/Code Coverage Mainframe User/Reference Guide

Accessing or Bypassing the Xpediter/Code Coverage Primary Menu . . . 10-5


Interface Conventions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-6
Common Screen Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-6
PF Key Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-7
Xpediter/Code Coverage Primary Menu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-7
Test Definition Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-8
Output Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-8
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-9
Program Function Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-10
Test Definition/Collection Specification Screen . . . . . . . . . . . . . . . . . . . . . . 10-10
Output Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-11
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-12
Program Function Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-13
Mask Examples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-13
Collection Validation Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-14
Main Output Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-14
Program Output Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-15
Compile Output Fields. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-15
Source Output Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-15
Other Output Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-16
Program Function Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-16
Collection Activity Screen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-16
Output Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-17
Program Function Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-17
Archiving Test Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-18
Specification Archive Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-18
Output Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-19
Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-20
Program Function Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-21
Confirm Test Deletion Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-21
Specification Archive/Browse Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-22
General Output Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-23
Program Function Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-23
XVSC Transaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-23
XVSI Transaction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-24
DBPA Keywords for Code Coverage and System Flow . . . . . . . . . . . . . . . . . 10-24
DBPA Entry Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-25
Line Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-26
A (Archive) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-26
B (Browse). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-26
D (Delete) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-26
DS (Delete System) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-26
E (Extract Entry) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-27
ES (Extract System). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-27
H (Halt Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-27
L (Load) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-27
S (Specify Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-27
SB (Start Both) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-27
SC (Start Code Coverage) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-28
SF (Start System Flow) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-28
V (View Collection Activity or Validate) . . . . . . . . . . . . . . . . . . . . . . . . 10-28
Primary Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-28
= (transfer) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-29
ALTSCRN (ALT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-29
BOTTOM (BOT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-29
CANCEL (CAN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-30
vii

COLS (COL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-30


DOWN (DN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-30
END . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-31
EXIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-31
FIND (F) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-31
HELP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-36
LOCATE (LOC, L) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-36
MENU (MEN). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-37
RFIND (RF). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-37
SELECT (SEL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-37
TOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-37
UP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-38
VALIDATE (VAL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-38

Chapter 11. Using System Flow with Xpediter/CICS . . . . . . . . . . . . . . . . . . . . . 11-1


Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-1
Online Data Collection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-2
Define the System Flow Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11-2
Start the Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-4
Execute the CICS Transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-4
Halt the Code Coverage Collection . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11-4
Reporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-4
Preliminary Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-4

Chapter 12. CICS Populater . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-1


Job Control Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-1
EXEC Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-2
DD Statements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-3
Process Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-4
EXCLUDES and CONTROL Card Processing . . . . . . . . . . . . . . . . . . . . . . 12-4
Additional Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-5

Chapter 13. Program Inventory Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-1


Job Control Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-1
EXEC Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-2
DD Statements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-2
Program Inventory Utility Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-4
CONTROL Statement Parsing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-4
FORMAT Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-4
COLLECT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-5
COPY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-5
DELETE Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-6
DIR Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13-7
GENERATE Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-7
EXPORT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-7
IMPORT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-8

Appendix A. Code Coverage Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1


Console Message Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1
TSO/ISPF Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1
CICS Messages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-21
Abends . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-100
Activity Log Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-100
Commands for which Activity Messages are Generated . . . . . . . . . . . A-100

Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . G-1

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . I-1
viii Xpediter/Code Coverage Mainframe User/Reference Guide
ix

Introduction Intro

This manual provides information about how to use Xpediter/Code Coverage and also
includes error messages. It has three main parts and one appendix and contains the
following chapters:

Part 1, “Testing with Xpediter/Code Coverage”:

• Chapter 1, “Overview”: Provides an overview of Code Coverage and presents the


Code Coverage Primary Menu.
• Chapter 2, “Specifying Code Coverage Defaults”: Explains how to configure
various Code Coverage functions.
• Chapter 3, “Generating Code Coverage Reports”: Describes how to generate reports
of your Code Coverage testing.
• Chapter 4, “Generating System Flow Reports”: Describes how to generate reports of
your System Flow testing.
• Chapter 5, “Using Results Repository Utilities”: Describes how to use the Code
Coverage utilities to manage the Results Repository.
• Chapter 6, “Using Code Coverage with Optimized Programs”: Describes how to
use Xpediter/Code Coverage with programs that have been compiled using an
optimizing compiler.

Part 2, “Using Xpediter/Code Coverage with Xpediter/TSO and Xpediter/IMS”:

• Chapter 7, “Using Code Coverage with Xpediter/TSO”: Explains how to use


Xpediter/Code Coverage with Xpediter/TSO.
• Chapter 8, “Using Code Coverage with Xpediter/IMS”: Explains how to use
Xpediter/Code Coverage with Xpediter/IMS.
• Chapter 9, “Test Data Optimization”: Explains how to use the Code Coverage Test
Data Optimization feature.

Part 3, “Using Xpediter/Code Coverage with Xpediter/CICS”:

• Chapter 10, “Using Code Coverage with Xpediter/CICS”: Provides an overview of


how to use Xpediter/Code Coverage with Xpediter/CICS.
• Chapter 11, “Using System Flow with Xpediter/CICS”: Provides an overview of
how to use System Flow with Xpediter/CICS.
• Chapter 12, “CICS Populater”: Describes the implementation and general usage of
the Xpediter/Code Coverage CICS Populater.
• Chapter 13, “Program Inventory Utility”: Explains how to use the Xpediter/Code
Coverage Program Inventory Utility.

Appendix A, “Code Coverage Messages”: Provides explanations and suggested actions


for informational, error, and warning messages associated with Xpediter/Code Coverage.

Intended Audience
This manual is intended for Xpediter/Code Coverage users, administrators, and system
programmers.
x Xpediter/Code Coverage Mainframe User/Reference Guide

Notation Rules
Syntax diagrams define primary command syntax.

A parameter is either a keyword or a variable.

All KEYWORDs are shown in uppercase characters and must be spelled exactly as shown.
You cannot substitute another value. If any part of a KEYWORD is shown in lowercase
characters, that part is optional.

Variables are user-specified values and are printed in lowercase italics. For example,
dataset-name indicates you are to substitute a value.

The syntax for commands is described in diagrams that help you visualize parameter use.
The following example shows a command and a parameter:

Read the diagrams from left to right and from top to bottom. These symbols help you
follow the path of the syntax:

indicates the beginning of a statement.

indicates the statement is continued on the next line.

indicates the statement is continued from the previous line.

indicates the end of a statement.

Required parameters appear on the horizontal line (the main path). Optional parameters
appear below the main path. Default parameters appear above the main path and are
optional. The command executes the same regardless of whether the default parameter is
included.

Vertically stacked parameters are mutually exclusive. If you must choose a parameter, one
item of the stack appears on the main path. If the parameters are optional, the entire
stack appears below the main path. If a parameter in a stack is the default, it appears
above the main path.

If the same parameters are used with several commands, their syntax may be documented
in a separate diagram. In the command syntax, these common parameters are indicated
with separators before and after the parameter name.
Introduction xi

An arrow returning to the left indicates a repeatable item. If the arrow contains a comma,
separate the repeated items with a comma.

Related Publications
For more information about Xpediter/Code Coverage, refer to the Xpediter/Code Coverage
Installation Guide which documents the installation and configuration process and
customer profile utility for Code Coverage.

Online Documentation
The Xpediter/Code Coverage product installation package does not include the product
documentation. Access the Xpediter/Code Coverage documentation from the
Compuware FrontLine customer support website at https://go.compuware.com in the
following electronic formats:

• Release Notes in HTML format


• Product manuals in PDF format
• Adobe PDF index file (PDX file)
• Product manuals in HTML format.

The product documentation is available for viewing or downloading:

• View PDF files with the free Adobe Reader, available at http://www.adobe.com.
• View HTML files with any standard web browser.

Customer Support
Compuware provides a variety of support resources to make it easy for you to find the
information you need.

Compuware FrontLine Customer Support Website


You can access online information for Compuware products via our FrontLine customer
support website at https://go.compuware.com.

Compuware FrontLine provides access to critical information about your Compuware


products. You can review frequently asked questions, read or download documentation,
access product fixes, or e-mail your questions or comments. The first time you access
Compuware FrontLine, you are required to register and obtain a password. Registration is
free.

Contacting Customer Support

Phone
• USA and Canada: 1-800-538-7822 or 1-313-227-5444.
• All other countries: Contact your local Compuware office. Contact information is
available at https://go.compuware.com.
xii Xpediter/Code Coverage Mainframe User/Reference Guide

Web
You can report issues via the Quick Link Create & View Support Cases on the
Compuware FrontLine home page.

Note: Please report all high-priority issues by telephone.

Mail
Compuware Customer Support
Compuware Corporation
One Campus Martius
Detroit, MI 48226-5099

Corporate Website
To access Compuware’s site on the Web, go to http://www.compuware.com.

The Compuware site provides a variety of product and support information.

Information for Customer Support


If problems arise, please check your manual for assistance. If problems persist, please
obtain the following information before calling Compuware for assistance. This
information will help determine the exact cause of the problem as quickly as possible.

1. Identify the release number of Compuware product(s) in use.


2. Identify the operating system.
3. Identify the release of CICS Transaction Server that is being used.
4. If an abend occurs, note the displacement and the module in which it occurs. If
possible, obtain a copy of the system dump.
5. Note the sequence of steps (including all commands issued) that resulted in the
problem. Also note any variable data types and programming languages involved.
6. To receive product fixes electronically, be ready to provide your email address.
Part 1.
1 Testing with Xpediter/Code Coverage
Xpediter/Code Coverage Mainframe User/Reference Guide
1-1

Chapter 1.
Overview Chap 1

This chapter introduces basic Xpediter/Code Coverage information, including a scenario


of how the product might be used at a fictitious company. Also included in this chapter is
an introduction to the Primary Menu of Code Coverage.

About Code Coverage


Xpediter/Code Coverage is an advanced analysis tool that clearly and easily identifies
how much of an application has or has not been executed. Code Coverage helps identify
the percent of code executed for single or multiple programs, for one test or for multiple
tests run over time, and from a high-level management view down to a single line of
code.

Code Coverage works in conjunction with at least one other mainframe Xpediter test and
debugging tool. As you perform your testing, Code Coverage keeps track of what parts of
your code have been exercised and what parts have not. The results generated by Code
Coverage can be displayed, analyzed, and output using DevEnterprise. You can also
output detailed reports directly from Code Coverage on the mainframe.

Typical Code Coverage Scenario


To better understand how Xpediter/Code Coverage would typically be used, consider the
following scenario: the fictitious ACME corporation uses both Xpediter/TSO and
Xpediter/CICS to test and debug its mainframe applications. After making extensive
changes to their payroll, inventory, and order entry programs, ACME’s Internet
Technology group wants to run a suite of tests to ensure those programs are ready for
production.

In the past, there was no way to ensure whether the tests chosen and data used would
thoroughly exercise every part of the modified programs. Now that ACME uses
Xpediter/Code Coverage, however, it is possible to know precisely how thorough their
testing efforts have been and whether more testing is required.

To prepare for Xpediter/Code Coverage testing, the Code Coverage administrator first
creates one or more Results Repository datasets (refer to the “Repository Utility Screen”
on page 5-2 for more information). These datasets hold Code Coverage data collected
during testing. After a repository dataset has been allocated, the administrator uses the
Setup screen in Xpediter/TSO to define two Code Coverage systems, PAYROLL and
INVENTORY. These Code Coverage systems make it easier to organize test results. The
ACME order entry application runs under CICS, so the Code Coverage administrator uses
the CICS Populater and Program Inventory Utility to ensure the modified programs will
have their test data collected by Xpediter/Code Coverage. The XVCC transaction is used
to create the CICS system name ORDER ENTRY. (See Part 3, “Using Xpediter/Code Coverage
with Xpediter/CICS” for more information.)

The ACME staff then performs extensive testing of their modified programs using
Xpediter/TSO and Xpediter/CICS. When the testing completes, the Code Coverage
administrator generates comprehensive reports showing counts and percentages of
execution, varying the degrees of detail for all the modified programs. By downloading
repository data to a workstation, the administrator can use DevEnterprise to view
graphical representations of the Code Coverage results.
1-2 Xpediter/Code Coverage Mainframe User/Reference Guide

Knowledge gained from these Xpediter/Code Coverage reports can be immediately put to
use in refining the ACME test methodology to ensure complete testing and prevent
surprises when the modified programs are put into production.

About System Flow


Xpediter/Code Coverage provides a feature to identify what elements such as transaction
IDs, load modules, and programs have been executed during the course of executing an
application. This feature is called System Flow.

System Flow works in conjunction with a mainframe Xpediter test and debugging tool.
As you perform your testing, System Flow keeps track of what elements have executed.
The results, generated by System Flow reporting, can be displayed on the mainframe
directly to your ISPF terminal or sent to a printer.

System Flow collection may be started independently of Code Coverage collection or


concurrently with Code Coverage collection. If System Flow collection is started
concurrently with Code Coverage collection, both features will record data to the same
system name and test ID, and the data will be written under the same Results Repository.
Code Coverage and System Flow reporting can then be used independently to produce
the desired reports.

Typical System Flow Scenario


To better understand how to use the System Flow feature of Xpediter/Code Coverage,
consider the following scenario: the ACME corporation has just acquired a CICS
application as the result of a recent merger with another company. ACME, as we know
from the Code Coverage scenario above, uses Xpediter/CICS to test and debug its
mainframe CICS applications.

ACME would like to understand the flow of the new system it has acquired. Now that
ACME uses Xpediter/Code Coverage with the System Flow feature, it is possible to record
what transactions, load modules, and programs are called during execution of the newly
acquired system without making any changes to the applications.

To prepare for System Flow testing, the administrator can either use existing Code
Coverage repositories for System Flow data (Code Coverage and System Flow data can co-
exist on the same repository), or can optionally create one or more Code Coverage
repositories exclusively for System Flow data. These datasets hold the System Flow data
collected during the testing. After a repository dataset has been allocated, the
administrator uses the setup screen in Xpediter/CICS to define System Flow systems and
identify which applications to monitor.

The ACME staff then performs extensive testing of their newly acquired application.
When testing is complete, the ACME administrator halts the System Flow collection and
prints reports showing the transaction IDs, load modules, and programs that have
executed as a result of the testing.

Knowledge gained from these System Flow reports can be immediately put to use in
understanding the architecture of this new system.

Primary Menu
The Code Coverage Primary Menu is shown in Figure 1-1. On the right side of the screen,
the ID of the logged-on user, their default dataset prefix, and the current system time are
displayed.
Overview 1-3

Figure 1-1. Code Coverage Primary Menu

-------------- Xpediter/Code Coverage 17.02.00- Primary Menu --------------C123


COMMAND ===>
Userid:

1 TEST DEFINITION - Define/Control Collection Specifications
2 SPECIFICATION ARCHIVE - Access Specification Archive
X EXIT - Exit Xpediter/Code Coverage


For Online Technical Support refer to: http://frontline.compuware.com


NOTICE: Press PF2 to display the Copyright/Trade Secret Notice

Type 0 in the OPTION field and press Enter to specify the desired defaults for job and
processing parameters, Code Coverage repository datasets, source listing override
datasets, report filters, and optionally the CICS program inventory settings, CICS
application load libraries, and CICS source listing datasets. Refer to Chapter 2,
“Specifying Code Coverage Defaults” for details.

Type 1 in the OPTION field and press Enter to specify the level of Code Coverage
reporting to use and various other parameters. Refer to Chapter 3, “Generating Code
Coverage Reports” for details.

Type 2 in the OPTION field and press Enter to generate System Flow reports. Refer to
Chapter 4, “Generating System Flow Reports” for details.

Type U in the OPTION field and press Enter to display the Code Coverage UTILITIES
menu. From the UTILITIES menu, you can access Code Coverage utilities to create and
delete repository datasets, list and delete repository members, export and import those
members, and merge the records of two repository datasets. You can also access the CICS
Program Inventory utility and print a report detailing Code Coverage release and applied
maintenance information. The UTILITIES menu is described in detail in Chapter 5,
“Using Results Repository Utilities”.

Type X in the OPTION field and press Enter to exit the Primary Menu.

Using Wildcard Characters


On any character selection field within the Xpediter/Code Coverage product, the
wildcard character asterisk (*) can be used to specify a whole field or part of a field that
users wish to exclude when selecting records for comparison. If the selection field is left
completely blank, it has the same effect as if a single asterisk were entered. In this case,
any data encountered on the file is accepted.

Any data entered followed by an asterisk and trailing blanks selects only those records
that begin with that character string. For example ABC* will match any field beginning
with ABC including the strings 'ABCDEF' , 'ABC12 ' and 'ABC '.

If an asterisk is imbedded within a character string, such as A*B , that specific character
would not be compared. This string would match A1B , AxB , and other similarly.

Multiple asterisks can be entered in a field. A**B or A*B* are acceptable entries. The string
'A**B' would match any string with A in the first character and B in the fourth character
and blanks in the fifth character onward.

Wildcard characters cannot be used within date or time selection fields.


1-4 Xpediter/Code Coverage Mainframe User/Reference Guide
2-1

Chapter 2.
Specifying Code Coverage Defaults Chap 2

This chapter explains how to specify a variety of characteristics for Xpediter/Code


Coverage reports. These include the setup of job and processing parameters, the choice of
Results Repository datasets, establishment of filter criteria, and overriding of the default
source listing dataset.

Defaults Menu
The Defaults menu shown in Figure 2-1 provides access to four Code Coverage reporting
parameters and three CICS Code Coverage defaults. This menu is accessed by entering
option 0 on the Primary Menu.

Figure 2-1. Defaults Menu

----------------------- CODE COVERAGE 17.02 - DEFAULTS ----------------------


OPTION ===>
1 JOB PARMS - JOB and Processing parameters
2 REPOSITORY - Specify coverage dataset(s)
3 LISTINGS - Source Listing override datasets
4 FILTER - Report filter(s)

CICS CODE COVERAGE:
5 INVENTORY - Program inventory datasets
6 CICS LOAD - Application load libraries
7 LISTINGS - CICS source listing datasets

Xpediter/Code Coverage Defaults


Type 1 in the OPTION field and press Enter to specify various job and processing
parameters. For more information, refer to the “Job Information Screen” subsection
detailed below.

Type 2 in the OPTION field and press Enter to specify one or more Results Repository
datasets to be used for Code Coverage. Refer to the “Repository Screen” on page 2-3 for
details.

Type 3 in the OPTION field and press Enter to override the default name specified for the
source listing datasets as described in the “Source Listing Override Screen” on page 2-3.

Type 4 in the OPTION field and press Enter to set up report filtering criteria. This option
is explained in more detail in the “Report Filters Screen” on page 2-4.

CICS Code Coverage Defaults


These options are only used by CICS Code Coverage customers intending to use the CICS
ISPF Program Inventory Utilities. These options do not apply to System Flow.

Type 5 in the OPTION field and press Enter to define the Program Inventory file, the
target Program Inventory file for the copy command, and the Excludes dataset used by
the Populate utility. Refer to “CICS Program Inventory Datasets Screen” on page 2-15 for
details.
2-2 Xpediter/Code Coverage Mainframe User/Reference Guide

Type 6 in the OPTION field to specify the CICS application load libraries that will be used
by the Populate utility. Refer to “CICS Application Load Libraries Screen” on page 2-17
for details.

Type 7 in the OPTION field to specify the source listing datasets that will be used by the
CICS Populate Utility. Refer to “CICS Source Listing Files Screen” on page 2-17 for details.

Note: On any of the screens accessed from the Defaults menu, pressing Enter will
process any information in the screen fields and redisplay the Defaults menu.
The END command (default PF3) will redisplay the Defaults menu without
saving any screen field information.

Job Information Screen


The Job Information screen shown in Figure 2-2 provides common information to be
used when executing Code Coverage jobs. This screen can be accessed by entering option
1 on the Code Coverage Defaults menu (Figure 2-1 on page 2-1).

Figure 2-2. Job Information Screen

------------------- CODE COVERAGE 17.02 - JOB INFORMATION -------------------



The JOB CARD below is used by the SUBMIT process.

Default SYSOUT class ==> A

Utility Environment ===> FOREGROUND (Foreground/Batch)

Trace active ==========> N (Y/N)

JOB CARD INFORMATION:
----*----1----*----2----*----3----*----4----*----5----*----6----*----7--
===> //ACMJET0# JOB (ACCOUNT),'ACMJET0',CLASS=A
===> //*
===> //*
===> //*

Press ENTER to Process or Enter END Command to Terminate

Input Fields
Default SYSOUT class
The default processing class for Code Coverage sysout datasets.
Utility Environment
Specifies the desired “mode” for utility functions. Enter F for Foreground to run a job
interactively or specify B for Batch to run a job via submission of a batch job. The
default is FOREGROUND.
Trace active
Specifies whether a trace facility should be active during the next testing session.
Enter Y for Yes or N for No. This option should be set to No (the default) to avoid
impacting performance. A Compuware Customer Support representative may ask you
to change the setting to Yes to capture information for use in diagnosing a problem.
JOB CARD INFORMATION
Specifies your job card information for batch jobs according to the standards in use
at your site.
Specifying Code Coverage Defaults 2-3

Repository Screen
The Repository screen shown in Figure 2-3 allows you to specify one or more Results
Repository datasets to be used in generating subsequent Code Coverage reports. This
screen is accessed by entering option 2 on the Code Coverage DEFAULTS menu (Figure 2-
1 on page 2-1). The values entered are saved to the profile of the current user.

Figure 2-3. Repository Screen

---------------------- CODE COVERAGE 17.02 - REPOSITORY ---------------------


COMMAND ===>


Code Coverage Repositories:

(1) ===> ’ACME.TEST.H01ACM11.REPOSIT’
(2) ===>
(3) ===>
(4) ===>
(5) ===>
(6) ===>
(7) ===>
(8) ===>
(9) ===>

Input Fields
Code Coverage Repositories
Nine possible fields indicating Results Repository datasets to be used in generating
subsequent Code Coverage reports.

Source Listing Override Screen


The Source Listing Override screen shown in Figure 2-4 allows you to specify a dataset
name to be used in place of the default Source Listing dataset when Code Coverage
reports are generated. This capability is required if the Source Listing dataset originally
referenced in the Code Coverage Results Repository has been renamed. This screen is
accessed by entering option 3 on the Code Coverage Defaults menu (Figure 2-1 on page
2-1). Source Listing overrides do not apply to System Flow.

Figure 2-4. Source Listing Override Screen

-------------------- CODE COVERAGE 17.02 - SOURCE LISTING OVERRIDE ----------


---------
COMMAND ===>


Source Listing Override Datasets:

(1) ===> ’ACME.TEST.COMPUWAR.DDIO’
(2) ===>
(3) ===>
(4) ===>
(5) ===>
(6) ===>
(7) ===>
(8) ===>
(9) ===>
2-4 Xpediter/Code Coverage Mainframe User/Reference Guide

Input Fields
Source Listing Override Datasets
Nine possible fields indicating dataset names to be used in place of the default Source
Listing dataset when Code Coverage reports are generated.

Report Filters Screen


The Report Filters selection screen shown in Figure 2-5 on page 2-5 allows you to specify
filtering criteria to be applied to testing results. Code Coverage will examine each line of
source code and report on only those that pass the filters set up on this screen. This
screen is accessed by entering option 4 on the Code Coverage DEFAULTS menu (Figure 2-
1 on page 2-1). It can also be accessed by entering an E (Edit command) in the “Report
Filters” field of the Code Coverage Reports screen (Figure 3-1 on page 3-2).

The Report Filters selection screen helps you focus reports on particular parts of your
program. For example, if your site used the string Y2K to mark each line of code modified
for year 2000 remediation, you could create a report filter that would screen for those
characters. The resulting Code Coverage report would include those lines that passed the
filter criteria. You could also create a report filter for a block of lines by specifying text
strings that occur in the beginning and ending lines. Filters only affect the reporting of
results and do not filter out any information written to the Code Coverage Results
Repository. Filters do not apply to System Flow.

Filter Files
Filter Files are datasets that can be used to store the current filters. After a filter has been
stored, it can be retrieved and used with, or instead of, the current filters. There are two
types of filter files:

• Personal Filter File


• Global Filter File.

The Personal Filter File is used by you to save your current filters so you can retrieve them
later. When you save your filters to a Personal Filter File, you supply the member name
and a description of the filters.

The optional Global Filter File can be used as a central location from which many
individuals can retrieve filters, while your security system is used to allow only selected
individuals to save filters to the file.

To create a Personal Filter File, use a PDS or PDSE dataset with LRECL=150 and
RECFM=FB. The BLKSIZE can be determined based on your site’s requirements. Space
requirements are dependent on the quantity and size of the filters you save. Each filter is
equal to one record in the Filter File member, while the filter description also occupies
one record in each Filter File member.

To create a global filter file, use a PDS or PDSE dataset with LRECL=150 and RECFM=FB.
the BLKSIZE can be determined based on your site’s requirements. Space requirements are
dependent on the quantity and size of the filters you save. Each filter is equal to one
record in the filter file member, while the filter description also occupies one record in
each filter file member.
Specifying Code Coverage Defaults 2-5

Figure 2-5. Report Filters Selection Screen

-------------------- CODE COVERAGE 17.02 - REPORT FILTERS -------------------


COMMAND ===>

Use the following line commands to access the filters:

A Activate the filter type
S Select the filter type for editing
P Suspend the filters (ignore these when reporting)

_ Line Filters are SUSPNDED
_ Block Filters are ACTIVE


Place an S next to your selection.

_ Retrieve a member from the Global/Personal filter libraries
_ Save the current filters to a Global/Personal filter library




Press ENTER to process or enter END command to terminate

Line Commands
The line commands shown in Figure 2-5 are defined as follows:

A Activate all the Line filters and/or Block filters for report processing.

S Select an entry for processing.

P Suspend all the Line filters and/or Block filters from report processing.

Input Fields
Line Filters are ACTIVE/SUSPNDED
Specifies a change in status for the current Line filters. These filters are stored in an
ISPF table within your profile dataset. You can either activate (A) all current Line
filters or suspend (P) all current Line filters. If you activate all Line filters, then the
status of each filter determines whether that filter is used during filter report
generation. If you suspend all Line filters, then no current Line filters are used during
filter report generation. Selecting (S) the Line filters invokes a table display screen
that allows you to access the current Line filters. See Figure 2-6 on page 2-6.
Block Filters are ACTIVE/SUSPNDED
Specifies a change in status for the current Block filters. These filters are stored in an
ISPF table within your profile dataset. You can either activate (A) all current Block
filters or suspend (P) all current Block filters. If you activate all Block filters, then the
status of each filter determines whether that filter is used during filter report
generation. If you suspend all Block filters, then no current Block filters are used
during filter report generation. Selecting (S) the Block filters invokes a table display
screen that allows you to access the current Block filters. See Figure 2-7 on page 2-8.
Retrieve a member from the Global/Personal filter libraries
Selecting this option will invoke the process to retrieve a member and/or browse a
member from a Personal Filter File or, if your site implements one, a Global Filter
File. The screen displayed is shown in Figure 2-8 on page 2-10 or Figure 2-9 on page
2-10.
2-6 Xpediter/Code Coverage Mainframe User/Reference Guide

Save the current filters to a Global/Personal filter library


Selecting this option will invoke the process to save the current filters to a Personal
Filter File or, if your site implements one, a Global Filter File. The screen displayed is
shown in Figure 2-15 on page 2-14.

Line Filters Screen


The Line Filters screen shown in Figure 2-6 allows you to identify a character string
that appears on a source line and is considered by users at your site to be either “very
important” (critical filters) or “unimportant” (exclude filters). You can create a
statement mask with clearly defined starting and ending positions. This screen is
accessed by entering an S (Select the filter type for editing) line command in the Line
Filters are ACTIVE/SUSPNDED field of the Code Coverage Report Filters selection
screen (Figure 2-5 on page 2-5).

Figure 2-6. Line Filters Screen

-------------------- CODE COVERAGE 17.02 - REPORT FILTERS ------- Row 1 of 2


COMMAND ===> Scroll ===> HALF

Line Filters (Critical and Exclude)

Line commands: I Insert new filter Primary commands: DEL (Delete all)
D Delete filter ACT (Activate all)
A Activate filter SUS (Suspend all)
P Suspend filter from processing CAN (Cancel changes)
RET (Retrieve filters)
SAV (Save filters)

Type Position Word
CMD Stat C/E Statement Mask Start End Match
_ ACT C NEW-CUST-ID 12 50 N
_ ACT E CUSTOMER-ID 12 50 N

Line Commands
The line commands shown in Figure 2-6 are defined as follows:

I Insert a new Line filter.

D Delete a Line filter.

A Activate a Line filter that was previously suspended.

P Suspend a Line filter (from processing) that was previously active.

Primary Commands
The primary commands shown in Figure 2-6 are defined as follows:

DEL Delete all lines (ACT or SUS) within the display.

ACT Activate all lines (ACT) within the display.

SUS Suspend all lines (SUS) within the display.

CAN Exit the display without saving any changes.

RET Invoke the filter retrieval process.


Specifying Code Coverage Defaults 2-7

SAV Invoke the filter save process.

Input Fields
CMD
Specifies one of four available line commands that can be entered next to the Line
filter statement mask you want to affect.
Stat
A protected field indicating the active or suspended status of the statement mask.
This field cannot be edited, but it can be changed with the A or P line command.
Type C/E
A character value of C (Critical) or E (Exclude).
Critical filters are used to identify and label the source lines considered important for
this test. Exclude filters are used to identify and label source lines considered
unimportant for this test. See Chapter 3, “Generating Code Coverage Reports” for
examples.
Statement Mask
A user-specified character string. The statement mask is 1 to 50 positions in length
and may contain any character, including embedded blanks. Duplicate masks are not
allowed. The Type C/E field is not used when the check for duplicates is made.
Position Start
A fixed column location from which a statement mask begins. If the starting position
is not supplied and the ending position is supplied, then the starting position will be
calculated so that the statement mask starts at the starting position and ends at the
ending position.
Position End
A fixed column location at which a statement mask ends. If the ending position is
specified, the mask will be searched for between the starting and ending positions,
inclusive. If the ending position is not supplied and the starting position is supplied,
then the ending position will be calculated so that the statement mask starts at the
starting position and ends at the ending position.
Word Match
A character value of Y (Yes) or N (No). Y indicates that a character string on the
source line will only be considered a match if it is a standalone word within the
boundaries set by the Start and End Positions, inclusive, with at least one blank
before the string and either a blank, period, comma, or semi-colon immediately after
the string. N indicates that a character string on the source line between the Start
and End Positions will be considered a match even if it is not a standalone word.

Block Filters Screen


The Block Filters screen shown in Figure 2-7 on page 2-8 allows you to identify starting
and ending masks that enclose specific source lines of particular interest. For example,
you may have tagged your code with a comment line prior to a changed statement and
tagged it with another comment line immediately after the changed statement. The
Block Filters screen is accessed by entering an S (Select the filter type for editing) line
command in the Block Filters are ACTIVE/SUSPNDED field of the Code Coverage Report
Filters selection screen (Figure 2-5 on page 2-5).
2-8 Xpediter/Code Coverage Mainframe User/Reference Guide

Figure 2-7. Block Filters Screen

-------------------- CODE COVERAGE 17.02 - REPORT FILTERS ------- Row 1 of 2


COMMAND ===> Scroll ===> HALF

Block Filters (Critical and Exclude)

Line commands: I Insert new filter Primary commands: DEL (Delete all)
D Delete filter ACT (Activate all)
A Activate filter SUS (Suspend all)
P Suspend filter from processing CAN (Cancel changes)
RET (Retrieve filters)
SAV (Save filters)

Type Starting Mask Position
CMD Stat C/E Ending Mask Start End
_ ACT C START CHANGE TO NEW CUSTOMER ACCOUNT NUMBERS 08 71
END CHANGE TO NEW CUSTOMER ACCOUNT NUMBERS 08 71
_ ACT E 9999-ABEND-ROUTINE 08 40
9999-ABEND-ROUTINE-EXIT 08 40

Line Commands
The line commands shown in Figure 2-7 are defined as follows:

I Insert a new Block filter.

D Delete a Block filter.

A Activate a Block filter that was previously suspended.

P Suspend a Block filter (from processing) that was previously active.

Primary Commands
The primary commands shown in Figure 2-7 are defined as follows:

DEL Delete all lines (ACT or SUS) within the display.

ACT Activate all lines (ACT) within the display.

SUS Suspend all lines (SUS) within the display.

CAN Exit the display without saving any changes.

RET Invoke the filter retrieval process.

SAV Invoke the filter save process.

Input Fields
CMD
Specifies one of four available line commands that can be entered next to the Block
filter starting/ending masks you want to affect.
Stat
A protected field indicating the active or suspended status of the statement mask.
This field cannot be edited, but it can be changed with the A or P line command.
Type C/E
A character value of C (Critical) or E (Exclude).
Specifying Code Coverage Defaults 2-9

Critical filters are used to identify and label the source lines considered important for
this test. Exclude filters are used to identify and label source lines considered
unimportant for this test. See Chapter 3, “Generating Code Coverage Reports” for
examples.
Starting Mask
A user-specified character string. The starting mask is 1 to 50 positions in length and
may contain any character, including embedded blanks. If you enter a starting mask,
you must enter an ending mask. The Type C/E field is not used when the check for
duplicates is made.
Ending Mask
A user-specified character string. The ending mask is 1 to 50 positions in length and
may contain any character, including embedded blanks. If you enter an ending mask,
you must enter a starting mask. The Type C/E field is not used when the check for
duplicates is made.
Position Start
A fixed column location from which a statement mask begins. If the starting position
is not supplied and the ending position is supplied, then the starting position will be
calculated so that the statement mask starts at the starting position and ends at the
ending position.
Position End
A fixed column location at which a statement mask ends. If the ending position is
specified, the mask will be searched for between the starting and ending positions. If
the ending position is not supplied and the starting position is supplied, then the
ending position will be calculated so that the statement mask starts at the starting
position and ends at the ending position. If the starting and ending positions are
specified, then the range must be equal to or greater than the mask specified. In
other words, the mask must fit within the range.

Retrieve Filters Screens


A series of Retrieve Filters screens allow you to access a member from a global or personal
filter library for use in the current session. Selecting the first option, Retrieve a member
from the Global/Personal filter libraries, on the Report Filters selection screen will display
the initial Retrieve Filters screen shown in Figure 2-8. This screen will allow you to
retrieve filters or browse filters from a Personal Filter File or, if your site has implemented
one, a Global Filter File.
2-10 Xpediter/Code Coverage Mainframe User/Reference Guide

Figure 2-8. Initial Retrieve Filters Screen - With Global Filter File

-------------------- CODE COVERAGE 17.02 - REPORT FILTERS -------------------


COMMAND ===>

Retrieve Filters


Filter Member Name ===> Leave blank for a member list


Select the library to be used for the member/member list retrieval.
Selecting both libraries will cause the Personal Filter File
to be searched before the Global Filter File.

_ Personal Filter File ===> PERSONAL.FILTER.FILE
_ Global Filter File ===> 'COMPWARE.GLOBAL.FILTER.FILE'






Press ENTER to process or enter END command to terminate

Figure 2-9. Initial Retrieve Filters Screen - Without Global Filter File

-------------------- CODE COVERAGE 17.02 - REPORT FILTERS -------------------


COMMAND ===>

Retrieve Filters


Filter Member Name ===> Leave blank for a member list






S Personal Filter File ===> PERSONAL.FILTER.FILE







Press ENTER to process or enter END command to terminate

Input Fields
Filter Member Name
Specifies the name of the member that you want to retrieve or browse. You can do a
generic member look-up by typing an asterisk at the end of a partial member name.
For example, entering ABC* will display a list of all the member names that begin
with ABC.
Personal Filter File
Type the name of your personal filter file. You must type an S on the underscore in
order for the dataset to be used in the member name search.
Specifying Code Coverage Defaults 2-11

Global Filter File


If a Global Filter File is implemented at your site, then its name will appear here. This
is a protected field and cannot be changed. You must type an S on the underscore in
order for the dataset to be used in the member name search.

Note: If you select both the Personal Filter File and the Global Filter File, the
Personal Filter File will be searched first. If the member name is found or the
generic search is satisfied, then the search will not continue to the Global
Filter File.

If the Global Filter File is not implemented at your site, the screen shown in Figure 2-
9 on page 2-10 will be displayed. The S in front of the Personal Filter File is placed
there by default.

Retrieve Filters Member List Screen


When a Personal Filter File and/or Global Filter File are selected on the initial Retrieve
Filters screen, the member list screen shown in Figure 2-10 is displayed.

Figure 2-10. Retrieve Filters Member List Screen

-------------------- CODE COVERAGE 17.02 - REPORT FILTERS ------- Row 1 of 1


COMMAND ===> Scroll ===> HALF

Retrieve Filters


Filter File ===> PERSONAL.FILTER.FILE

Line commands: B Browse the filter member
R Retrieve the filter member


Filter
CMD Member Filter Description
_ ARDBTRP1 ACCTS RECVABLE DEBIT RPT - NEW CUST ACCT NUMS 05/23/15
******************************* Bottom of data ********************************

Line Commands
The line commands shown in Figure 2-10 are defined as follows:

B Browse the contents of the filter member. See “Browse Filters Screens” below.

Retrieve the contents of the filter member. See “Retrieve Filters Append or Replace Screen” on page
R
2-13.

Browse Filters Screens


The Browse Filters screens allow you to browse filters from a Personal Filter File or a
Global Filter File. Entering a B line command next to a filter member name on the
Retrieve Filters member list screen will display the Browse Filters screen shown in Figure
2-11 on page 2-12.
2-12 Xpediter/Code Coverage Mainframe User/Reference Guide

Figure 2-11. Browse Filters

-------------------- CODE COVERAGE 17.02 - REPORT FILTERS -------------------


COMMAND ===>

Browse Filters


Filter File ===> PERSONAL.FILTER.FILE
Member Name ===> ARDBTRP1
Description ===> ACCTS RECVABLE DEBIT RPT - NEW CUST ACCT NUMS 05/23/15


To browse a filter, place an S next to it. Number of
Filters
_ Line Filters 2
_ Block Filters 2





Press ENTER to process or enter END command to terminate

A Personal or Global Filter File can contain line filters and/or block filters. Type an S next
to Line Filters to browse line filters. The Line Filters screen shown in Figure 2-12 will be
displayed. Type an S next to Block Filters to browse block filters. The Block Filters screen
shown in Figure 2-13 on page 2-13 will be displayed.

Browse Filters Line Filters Screen


Selecting Line Filters on the Browse Filters screen will display the Browse Filters Line
Filters screen shown in Figure 2-12.

Figure 2-12. Browse Filters Line Filters Screen

-------------------- CODE COVERAGE 17.02 - REPORT FILTERS ------- Row 1 of 2


COMMAND ===> Scroll ===> HALF

Browse Filters
Line Filters (Critical and Exclude)

Filter File ===> PERSONAL.FILTER.FILE
Member Name ===> ARDBTRP1
Description ===> ACCTS RECVABLE DEBIT RPT - NEW CUST ACCT NUMS 05/23/15

Position Word
Status Type Statement Mask Start End Match
ACTIVE C AR12-CUST-ACCT-NUM 12 72 N
ACTIVE C 20050523-001 60 72 Y
******************************* Bottom of data ********************************

Browse Filters Block Filters Screen


Selecting Block Filters on the Browse Filters screen will display the Browse Filters Block
Filters screen shown in Figure 2-13 on page 2-13.
Specifying Code Coverage Defaults 2-13

Figure 2-13. Browse Filters Block Filters Screen

-------------------- CODE COVERAGE 17.02 - REPORT FILTERS ------- Row 1 of 2


COMMAND ===> Scroll ===> HALF

Browse Filters
Block Filters (Critical and Exclude)

Filter File ===> PERSONAL.FILTER.FILE
Member Name ===> ARDBTRP1
Description ===> ACCTS RECVABLE DEBIT RPT - NEW CUST ACCT NUMS 05/23/15

Starting Mask Position
Status Type Ending Mask Start End
ACTIVE C NEW CUST ACCT NUMS CHANGES START - 05/23/15 08 72
NEW CUST ACCT NUMS CHANGES END - 05/23/15 08 72
ACTIVE E AR12-ERROR-ROUTINE 08 72
AR12-ERROR-ROUTINE-EXIT 08 72
******************************* Bottom of data ********************************

Retrieve Filters Append or Replace Screen


The Retrieve Filters Append or Replace screen allows you to retrieve a filter member from
a Personal or Global Filter File and either append it to your current filters or use it to
replace your current filters. Entering an R line command next to a filter member name on
the Retrieve Filters member list screen (Figure 2-10 on page 2-11) will display the Retrieve
Filters Append or Replace screen shown in Figure 2-14 on page 2-13.

If you type an S next to the first option, Append the following filters to your existing
filters, the filters in the selected filter member(s) will be added to the filters currently in
use. If you type an S next to the second option, Replace your existing filters with the
following filters, the filters currently in use will be completely replaced by the filters in
the selected filter member(s).

Figure 2-14. Retrieve Filters Append or Replace Screen

-------------------- CODE COVERAGE 17.02 - REPORT FILTERS ------- Row 1 of 1


COMMAND ===> Scroll ===> HALF

Retrieve Filters


Filter File ===> PERSONAL.FILTER.FILE

Place an S next to your selection.

_ Append the following filters to your existing filters.
- or -
_ Replace your existing filters with the following filters.


Selected Filter Members:
ARDBTRP1 ACCTS RECVABLE DEBIT RPT - NEW CUST ACCT NUMS 05/23/15
******************************* Bottom of data ********************************

Save Filters Screens


The Save Filters screens allow you to save your current filters to a Personal Filter File or, if
your site implements one, a Global Filter File. Those filters can then be retrieved for use
in a future session. Selecting the second option, Save the current filters to a
Global/Personal filter library, on the Report Filters selection screen (Figure 2-5 on page
2-5) will display the Save Filters screen shown in Figure 2-15 on page 2-14. This screen
will allow you to save filters to a Filter File after you provide the new member
information.
2-14 Xpediter/Code Coverage Mainframe User/Reference Guide

Figure 2-15. Save Filters Screen

-------------------- CODE COVERAGE 17.02 - REPORT FILTERS -------------------


COMMAND ===>

Save Filters


New Filter Member Information:
Filter File ===> PERSONAL.FILTER.FILE
Member Name ===> HR19304
Description ===> HUMAN RESOURCES - MOD 193 CHANGE 4


To edit a filter, place an S next to it. Number of
Filters
_ Line Filters 2
_ Block Filters 2







Press ENTER to process or enter END command to terminate

Type an S next to the Line Filters and/or Block Filters field(s) to make any changes to the
current filters before they are saved. Pressing Enter without typing an S next to either
field will result in the current filters being saved immediately to the specified dataset and
member.

Input Fields
Filter File
The name of the Filter File where the current filters will be saved.
Member Name
The name of the member that will be saved in the Filter File.
Description
A description from 1 to 60 characters long that will help you identify the filters that
are in the member. This is saved with the filters in the Filter File.

Save Filters Line Filters Screen


Selecting Line Filters on the Save Filters screen will display the Save Filters Line Filters
screen shown in Figure 2-16 on page 2-15. From this screen you can edit the information
in your current filters before saving them to a Filter File. For a description of the line
commands, primary commands, and input fields on this screen, refer to “Line Filters
Screen” on page 2-6.
Specifying Code Coverage Defaults 2-15

Figure 2-16. Save Filters Line Filters Screen

-------------------- CODE COVERAGE 17.02 - REPORT FILTERS ------- Row 1 of 2


COMMAND ===> Scroll ===> HALF

Save Filters
Line Filters (Critical and Exclude)

Filter File ===> PERSONAL.FILTER.FILE
Member Name ===> HR19304
Description ===> HUMAN RESOURCES - MOD 193 CHANGE 4

Line commands: I Insert new filter Primary commands: DEL (Delete all)
D Delete filter ACT (Activate all)
A Activate filter SUS (Suspend all)
P Suspend filter from processing CAN (Cancel changes)

Type Position Word
CMD Stat C/E Statement Mask Start End Match
_ ACT C HR19304 65 71 Y
_ SUS C HR-ER-SALARY-MIDPOINT 12 60 N
******************************* Bottom of data ********************************

Save Filters Block Filters Screen


Selecting Block Filters on the Save Filters screen will display the Save Filters Block Filters
screen shown in Figure 2-17. From this screen you can edit the information in your
current filters before saving them to a Filter File. For a description of the line commands,
primary commands, and input fields on this screen, refer to “Block Filters Screen” on
page 2-7.

Figure 2-17. Save Filters Block Filters Screen

-------------------- CODE COVERAGE 17.02 - REPORT FILTERS ------- Row 1 of 2


COMMAND ===> Scroll ===> HALF

Save Filters
Block Filters (Critical and Exclude)

Filter File ===> PERSONAL.FILTER.FILE
Member Name ===> HR19304
Description ===> HUMAN RESOURCES - MOD 193 CHANGE 4

Line commands: I Insert new filter Primary commands: DEL (Delete all)
D Delete filter ACT (Activate all)
A Activate filter SUS (Suspend all)
P Suspend filter from processing CAN (Cancel changes)

Type Starting Mask Position
CMD Stat C/E Ending Mask Start End
_ ACT C START OF CHANGES FOR THE MOD 193 CHANGE 4 08 60
END OF CHANGES FOR THE MOD 193 CHANGE 4 08 60
_ ACT E 9999-ERROR-ROUTINE 08 30
9999-ERROR-ROUTINE-EXIT 08 30
******************************* Bottom of data ********************************

CICS Program Inventory Datasets Screen


The Program Inventory Datasets screen allows users to define the CICS Program
Inventory file, the target Program Inventory file for the Copy command, the export and
import datasets, and the Excludes dataset used by the Populate utility. Access to the
2-16 Xpediter/Code Coverage Mainframe User/Reference Guide

Program Inventory Dataset screen occurs when users choose option 5 from the Defaults
menu (see the “Defaults Menu” on page 2-1).

Figure 2-18. CICS Program Inventory Datasets Screen

----------- CODE COVERAGE 17.02 - CICS PROGRAM INVENTORY DATASETS -----------


COMMAND ===>

Inventory File ===>

(Primary Program Inventory dataset XVTPGINV)

Inventory copy ===>

(Target dataset XVTPGCPY for the COPY function)

Inventory EXP ===>

(Target dataset XVTPGEXP for the EXPORT function)

Inventory IMP ===>

(Target dataset XVTPGIMP for the IMPORT function)

Excludes file ===>

(List of program/csect excludes)

Press ENTER to process or enter END command to terminate

Inventory file
The Inventory File is the default Program Inventory file that will be accessed by the
CICS Program Inventory Maintenance utility. Specifying an alternative dataset name
on the CICS Program Inventory Maintenance screen will override this dataset. The
directory of the inventory file appears on entry to the CICS Program Inventory
Maintenance utility. The Inventory File serves as the source file for the Copy and
Export functions, the destination file for the Import function and populate function.
Inventory copy
The Inventory Copy file is the default destination file for the Copy function. The
source file is the “Inventory file” defined for the Copy function. The source file is the
“Inventory file” defined above. The Inventory Copy File may be overridden by the
“Copy to file” on the Copy pop-up window.
Inventory EXP
The Inventory EXP file is the default destination file for the Export function. The
source file is the “Inventory File” defined above. The Inventory EXP File may be
overridden by the “Export to file” on the Export pop-up window.
Inventory IMP
The Inventory IMP file is the default source file for the Import function. The
destination file is the “Inventory File” defined above. The Inventory IMP File may be
overridden by the “Import from file” on the Import pop-up window.
Excludes file
The Excludes file is used by the populate function of the CICS Program Inventory
Maintenance screen. This file is used to exclude load modules and CSECTs from
being added to the Program Inventory file. The installer of Code Coverage usually
creates this file.
Specifying Code Coverage Defaults 2-17

CICS Application Load Libraries Screen


The Application Load Libraries screen allows users to specify the names of the CICS
application load libraries to be used by the Populate utility. Access to the Application
Load Libraries screen occurs when users choose option 6 from the Defaults menu (see the
“Defaults Menu” on page 2-1).

Figure 2-19. CICS Application Load Libraries Screen

------------- CODE COVERAGE 17.02 - CICS APPLICATION LOAD LIBRARIES ------------


COMMAND ===>


CICS Application Program load libraries:

(1) ===> TEST.LOADLIB
(2) ===> ‘PROD.CICS.LOADLIB’
(3) ===>
(4) ===>
(5) ===>
(6) ===>
(7) ===>
(8) ===>
(9) ===>







Press ENTER to process or enter END command to terminate

The CICS application load libraries listed on this screen are used for the CICS Program
Inventory maintenance populate function only. The populate function adds an entry to
the Program Inventory file for each load module or CSECT for which CICS Code
Coverage is desired. The populate function will scan the load libraries (in the order
entered) and match the load module CSECT against a listing defined by the CICS Source
Listing datasets.

CICS Source Listing Files Screen


Access to the CICS Source Listing Files screen occurs when users choose option 7 from
the Defaults menu (see the “Defaults Menu” on page 2-1).
2-18 Xpediter/Code Coverage Mainframe User/Reference Guide

Figure 2-20. CICS Source Listing Files Screen

--------------- CODE COVERAGE 17.02 - CICS SOURCE LISTING FILES --------------


COMMAND ===>


SOURCE LISTING FILES:

(1) ===> LISTFILE
(2) ===> ‘XV.XV20S1.DDIO’
(3) ===>
(4) ===>
(5) ===>
(6) ===>
(7) ===>
(8) ===>
(9) ===>






Press ENTER to process or enter END command to terminate

The Source Listing datasets listed on this screen are used for the CICS Program Inventory
maintenance populate function only. The populate function adds an entry to the
Program Inventory file for each load module or CSECT for which CICS Code Coverage is
desired. The populate function will scan the load libraries (in the order entered) and
match the load module CSECT against a listing defined by the CICS Source Listing
datasets.
3-1

Chapter 3.
Generating Code Coverage Reports Chap 3

This chapter describes how to generate reports from within the mainframe component of
Xpediter/Code Coverage. DevEnterprise provides powerful display, analysis, and report
generating functions. Access to global online help covering all components of
DevEnterprise is available from the workstation’s Start menu.

IMPORTANT:

Xpediter/Code Coverage results are based, in part, on the mapping of program source
code to the compiler-generated machine instructions executed. Because the results for
optimized programs can seem illogical, Xpediter/Code Coverage may make certain
inferences, indicated by an asterisk (*), in an attempt to clarify actual program execution.
For more information, see “Using Code Coverage with Optimized Programs” on page 6-1.

Reports Screen
The Reports screen shown in Figure 3-1 on page 3-2 is accessed by entering option 1 on
the Primary Menu. This screen is used to generate reports that detail the extent to which
different sections of your code have been executed. Various screen fields, described
below, allow you to control:

• the type of report


• the covered systems, load modules, and programs
• whether to include results obtained with and without debugging
• whether to include only the COBOL procedure division

The Reports screen is accessed by entering option 1 on the Primary Menu. Sample reports
with detailed descriptions are provided in “Sample Code Coverage Reports” on page 3-5.

Press Enter to process any information in the screen fields and submit the job to generate
a Code Coverage report. Use the END command (default PF3) to return to the Primary
Menu without generating a report.

Reports can be run in foreground or batch mode. If the reports are run in the foreground,
the output is directed to the terminal. When viewing of these foreground reports is
complete, a Report Disposition screen is displayed that gives the user the option of
deleting the report, printing the report, or saving the report on disk. If the reports are run
in batch, the Job Information screen determines the attributes of the output.
3-2 Xpediter/Code Coverage Mainframe User/Reference Guide

Figure 3-1. Reports Screen

----------------------- CODE COVERAGE 17.02 - REPORTS ------- Row 1 to 4 of 4


COMMAND ===> SCROLL ===> PAGE
Line Commands: Primary Commands:
I (Insert new report), SEtup , DEL (Delete), ACT (Activate),
D (Delete), A (Activate), SUS (Suspend), SUBmit , Edit (JCL),
S (Submit), P (Suspend), RUN (Online report),
R (Run online report) END (Exit and save),
CANcel (Exit without saving)

Report type ==> S ( S = System level, P = Program level, A = Annotated listing)
Combine Debug/NoDebug ===> N ( Y / N )
Merge Annotated results ===> Y ( Y / N )
COBOL Procedure Division only ===> Y ( Y / N )
Selection Criteria ACTIVE ===> _ ( E = Edit, A = Activate, P = Suspend)
Report Filters ACTIVE ===> _ ( E = Edit, A = Activate, P = Suspend)

CMD Status System name Test ID User ID Load Module Program
_ ACTIVE TEST301________ _______________ ________ CWXTCOB_ CWXTCOB_
_ ACTIVE ALL____________ UPDATE TAX CODE JOHNDOE_ TRIMAIN_ CWDEMBCL
_ SUSPNDED ACCOUNTING UPDATE TAX CODE JOHNDOE_ TRIIFP__ TRIIFP__
_ SUSPNDED PAYROLL UPDATE TAX CODE TRIDB2P1 TRIDB2P1 TRIDB2P1
******************************** Bottom of data *******************************

Press ENTER to process or enter END to terminate

Line Commands
The line commands displayed in Figure 3-1 are defined as follows:

I Insert (add) a report request.

D Delete a report request.

A Activate a report request that was previously excluded.

S Submit a report request for batch processing for this line.

P Suspend a report request that was previously active.

R Enables the user to run a report request online, and then browse the output.

Primary Commands
SEtup
Modifies the global default values, including repository dataset(s), override source
listing dataset(s), and jobcards.
DEL
Deletes all reports in the ISPF table and inserts one new request.
ACT
Marks all report requests active.
SUS
Marks all report requests suspended.
SUBmit
Submits a batch job using all entries marked active.
Edit
Creates JCL for batch processing and repositions you into ISPF edit.
Generating Code Coverage Reports 3-3

RUN
Invokes the report program for processing all entries marked as active.
END
Exits the display and saves all changes.
CANcel
Exits the display without saving any changes.

Input Fields
Report type
Specifies the type of report you want Code Coverage to generate. Enter S (the default)
for a system-level report, P for a program-level report, and A for an annotated listing.
Examples are provided in “Sample Code Coverage Reports” on page 3-5.
Combine Debug/NoDebug
Specifies whether to include the results of testing in which debugging was done.
Such results may not necessarily reflect normal program execution. Valid entries are
Y for Yes and N for No.
Merge Annotated results
Specifies whether to merge annotated results. Valid entries are Y for Yes and N for No.
COBOL Procedure Division only
Specifies whether or not to include only the procedure division of COBOL programs
in the Code Coverage report.
Selection Criteria ACTIVE/SUSPNDED
Specifies one of two optional commands to activate or suspend the status of a
repository program report. After entering either a blank or a valid command in the
Report type field, specify a third optional command to display the Reports Selection
Criteria screen (Figure 3-2 on page 3-4). The optional commands are E (Edit), A
(Activate), or P (Suspend).
Report Filters ACTIVE/SUSPNDED
Specifies one of two optional commands to activate or suspend the status of a
repository program report. After entering either a blank or a valid command in the
Report type field, specify a third optional command to display the Report Filters
selection screen (Figure 2-5 on page 2-5). The optional commands are E (Edit), A
(Activate), or P (Suspend).
CMD
Specifies one of the six available line commands next to the system name you want
to affect. See “Line Commands” on page 3-2 for details of each command that can be
entered in this field.
Status
A protected field indicating the active or suspended status of a repository program
report. This field cannot be edited.
System Name
Specifies the system name on which Code Coverage is to report. More than one
system name can be specified by using additional lines. This field is limited to 15
characters in length and is subject to wildcard rules.
3-4 Xpediter/Code Coverage Mainframe User/Reference Guide

Test ID
Specifies the name of the test ID that the selected Code Coverage Repository will
report on. This field is limited to 15 characters in length and is subject to wildcard
rules.
User ID
Specifies the name of the TSO, IMS, or CICS user ID. This field is limited to eight
characters in length and is subject to wildcard rules.
Load Module
Specifies the load module on which Code Coverage is to report. More than one load
module can be specified. This field is limited to eight characters in length and is
subject to wildcard rules.
Program
Specifies the program on which Code Coverage is to report. This field is limited to
eight characters in length and is subject to wildcard rules.

Reports Selection Criteria Screen


The Reports Selection Criteria screen shown in Figure 3-2 allows you to control the
variety of data categories selected in the Code Coverage report you intend to generate.
This screen is accessed by entering an E in the “Selection Criteria ACTIVE/SUSPNDED”
field of the Code Coverage Reports screen (Figure 3-1 on page 3-2).

Figure 3-2. Reports Selection Criteria Screen

----------------------- CODE COVERAGE 17.02 - REPORTS ----------------------


OPTION ===>


SELECTION CRITERIA


OPERATOR (EQ/LT/GT) VALUE
Percent Verbs Executed ===> GT 05
Percent Critical Verbs Executed ===> GT 05
Percent Exclude Verbs Executed ===> __
Percent Net Total Verbs Executed ===> __

Percent Branches Executed ===> __
Percent Critical Branches Executed ===> __
Percent Exclude Branches Executed ===> __
Percent Net Total Branches Executed ===> __

Selection Criteria Fields


Selection criteria fields allow you to enter values to limit the scope of the Code Coverage
report you will generate. Using selection criteria can help you quickly identify and focus
on those areas of your code that require further testing or, alternatively, those areas
which have been sufficiently tested. Two types of selection criteria are available on the
Reports Selection Criteria screen shown above:

OPERATOR (EQ/LT/GT)
Indicates the operators to be used to limit the scope of the Code Coverage report.
Valid operators are EQ (equals), LT (less than), and GT (greater than). If you enter an
OPERATOR, you must enter a VALUE.
Generating Code Coverage Reports 3-5

VALUE
Indicates the target percentage to be used in conjunction with an operator to limit
the scope of the Code Coverage report. For example, specifying an operator of LT and
a value of 90 will result in a report that only shows those members for which less
than 90% of the selection criteria indicated in the input fields have been executed.
Valid percentage values range from 0 to 100. If you enter a VALUE, you must enter an
OPERATOR.

Input Fields
Percent Verbs Executed
Specifies an operator and value in this row to limit report results based on the
proportion of verbs executed in the system, module, or program specified.
Percent Critical Verbs Executed
Specifies an operator and value in this row to limit report results based on the
proportion of verbs executed in the system, module, or program specified that pass
the Critical filters established on the Report Filters screen (see page 2-4).
Percent Exclude Verbs Executed
Specifies an operator and value in this row to limit report results based on the
proportion of verbs executed in the system, module, or program specified that pass
the Exclude filters established on the Report Filters screen (see page 2-4).
Percent Net Total Verbs Executed
Specifies an operator and value in this row to limit report results based on the
proportion of net total verbs executed in the system, module, or program specified.
Net total verbs executed is derived by subtracting exclude verbs executed from verbs
executed.
Percent Branches Executed
Specifies an operator and value in this row to limit report results based on the
proportion of branches executed in the system, module, or program specified.
Percent Critical Branches Executed
Specifies an operator and value in this row to limit report results based on the
proportion of branches executed in the system, module, or program specified that
pass the Critical filters established on the Report Filters screen (see page 2-4).
Percent Exclude Branches Executed
Specifies an operator and value in this row to limit report results based on the
proportion of branches executed in the system, module, or program specified that
pass the Exclude filters established on the Report Filters screen (see page 2-4).
Percent Net Total Branches Executed
Specifies an operator and value in this row to limit report results based on the
proportion of net total branches executed in the system, module, or program
specified. Net total branches executed is derived by subtracting exclude branches
executed from branches executed.

Note: If an OPERATOR and VALUE are specified for any of the above input fields, all of
the selection criteria specified must be met for the report to be generated.

Sample Code Coverage Reports


Xpediter/Code Coverage can generate system-level and program-level reports as well as
annotated listings. Each report is preceded by a Reports Selection Criteria page that lists
the following:
3-6 Xpediter/Code Coverage Mainframe User/Reference Guide

• the type of report selected


• the program selection
• testid and userid report selection capability
• whether debugging and non-debugging results are to be included
• the dataset name of the Code Coverage Results Repository used.

Annotated listings also include an annotated summary.

System-Level Report
An example of a system-level hardcopy batch report is shown in Figure 3-3 on page 3-6.
This report summarizes results at the system, load module, and program levels. It
includes actual numbers and percentages of verbs and branches executed as well as the
number and percentage of filtered verbs and branches if filters were established before
the report was generated. The report also provides the compile date and time for each
program and indicates whether compiler optimization was used.

The DEBUG column indicates whether results were obtained while using debugging
procedures or during normal non-debugging testing. This is important because the use of
certain debugging commands can alter the natural flow of execution in a program.

The L/T column indicates both the programming language (L) and the Compuware
product line type (T). Language selections available are C (COBOL), A (Assembler), and P
(PL/I). Defined Compuware product types are D (Xpediter/CICS) and T (Xpediter/TSO
and Xpediter/IMS).

Figure 3-3. System-Level Code Coverage Report

09/22/2015 COMPUWARE CORPORATION CODE COVERAGE 17.02 PAGE 1


REPORT SELECTION CRITERIA
REPORT SELECTED: SYSTEM LEVEL REPORT
REPORT REQUEST-> SYSTEM: TEST301 TEST ID: * USER ID: ALL LOAD MODULE: CWXTCOB PROGRAM: ALL
COMBINE DEBUG/NODEBUG: YES
COBOL PROCEDURE DIVISION ONLY: YES
REPOSITORIES: ACMJET0.XV17.REPOSIT
ACMNDF0.XV31.REPOSIT
ENTQA.XW.V30.REPOS
DDIO OVERRIDES: XV.XV31S1.DDIO
ACMNDF0.XV17.DDIO
CRITICAL STATEMENT MASK: DATE
STARTING IN COLUMN 01 ENDING IN COLUMN 80 WORD MATCH=N
EXCLUDE STATEMENT MASK: DISPLAY
STARTING IN COLUMN 01 ENDING IN COLUMN 80 WORD MATCH=N
START EXCLUDE BLOCK MASK: 000-MAINLINE
STARTING IN COLUMN 01 ENDING IN COLUMN 72
END EXCLUDE BLOCK MASK: ENDHERE
STARTING IN COLUMN 01 ENDING IN COLUMN 72
09/22/2015 COMPUWARE CORPORATION CODE COVERAGE 17.02 PAGE 2
SYSTEM: TEST301 TEST ID: * USER ID: ALL LOAD MODULE: CWXTCOB PROGRAM: ALL
LOAD PROGRAM COMPILE COMPILE VERBS BRANCHES
SYSTEM TEST ID USER ID MODULE DATE TIME OPT DEBUG L/T EXEC TOTAL EXEC TOTAL

TEST301 SIMPLE ACMJET0 CWXTCOB CWXTCOB 06/06/2015 12:31:47 N N CT 68% 193 62% 40
*** CRITICAL FILTER TOTALS: 70% 10 0% 0
*** EXCLUDE FILTER TOTALS: 75% 151 67% 34
*** NET COVERAGE TOTALS: 45% 42 33% 6

TEST301 SIMPLE ACMJET0 CWXTCOB CWXTDATE 04/10/2012 07:43:04 N N CT 63% 19 56% 16
*** CRITICAL FILTER TOTALS: 100% 1 50% 2
*** EXCLUDE FILTER TOTALS: 63% 19 56% 16
*** NET COVERAGE TOTALS: 0% 0 0% 0

TEST301 SIMPLE ACMJET0 CWXTCOB CWXTSUBC 04/10/2012 07:45:06 N N CT 44% 27 35% 20
*** CRITICAL FILTER TOTALS: 0% 0 0% 0
*** EXCLUDE FILTER TOTALS: 44% 27 35% 20
*** NET COVERAGE TOTALS: 0% 0 0% 0

TOTALS FOR THIS SYSTEM: 65% 239 53% 76
CRITICAL FILTER TOTALS: 72% 11 55% 70
EXCLUDE FILTER TOTALS: 70% 197 N/A
NET COVERAGE TOTALS: 45% 42 33% 6

Program-Level Report
An example of a program-level hardcopy batch report is shown in Figure 3-4. This report
summarizes results at the program level. It includes actual numbers and percentages of
verbs and branches executed as well as the number and percentage of filtered verbs and
Generating Code Coverage Reports 3-7

branches if filters were established before the report was generated. The report also
provides the compile date and time for each program and indicates whether compiler
optimization was used.

The DEBUG column indicates whether results were obtained while using debugging
procedures or during normal non-debugging testing. This is important because the use of
certain debugging commands can alter the natural flow of execution in a program.

The L/T column indicates both the programming language (L) and the Compuware
product line type (T). Language selections available are C (COBOL), A (Assembler), and P
(PL/I). Defined Compuware product types are D (Xpediter/CICS) and T (Xpediter/TSO
and Xpediter/IMS).

Figure 3-4. Program-Level Code Coverage Report

09/22/2015 COMPUWARE CORPORATION CODE COVERAGE 17.02 PAGE 1


REPORT SELECTION CRITERIA
REPORT SELECTED: PROGRAM LEVEL REPORT (" MERGED>" DENOTES MULTIPLE SYSTEM(S)/MODULE(S))
REPORT REQUEST-> SYSTEM: TEST301 TEST ID: * USER ID: ALL LOAD MODULE: CWXTCOB PROGRAM: ALL
COMBINE DEBUG/NODEBUG: YES
COBOL PROCEDURE DIVISION ONLY: YES
SELECT VERBS EXECUTED: GT 005%
SELECT CRITICAL VERBS EXECUTED: GT 005%
REPOSITORIES: ACMJET0.XV17.REPOSIT
ACMNDF0.XV31.REPOSIT
ENTQA.XW.V30.REPOS
DDIO OVERRIDES: XV.XV31S1.DDIO
ACMNDF0.XV17.DDIO
CRITICAL STATEMENT MASK: DATE
STARTING IN COLUMN 01 ENDING IN COLUMN 80 WORD MATCH=N
EXCLUDE STATEMENT MASK: DISPLAY
STARTING IN COLUMN 01 ENDING IN COLUMN 80 WORD MATCH=N
START EXCLUDE BLOCK MASK: 000-MAINLINE
STARTING IN COLUMN 01 ENDING IN COLUMN 72
END EXCLUDE BLOCK MASK: ENDHERE
STARTING IN COLUMN 01 ENDING IN COLUMN 72
09/22/2015 COMPUWARE CORPORATION CODE COVERAGE 17.02 PAGE 2
SYSTEM: TEST301 TEST ID: * USER ID: ALL LOAD MODULE: CWXTCOB PROGRAM: ALL
LOAD PROGRAM COMPILE COMPILE VERBS BRANCHES
SYSTEM TEST ID USER ID MODULE DATE TIME OPT DEBUG L/T EXEC TOTAL EXEC TOTAL
TEST301 SIMPLE ACMJET0 CWXTCOB CWXTCOB 06/06/2015 12:31:47 N N CT 68% 193 62% 40
*** CRITICAL FILTER TOTALS: 70% 10 0% 0
*** EXCLUDE FILTER TOTALS: 75% 151 67% 34
*** NET COVERAGE TOTALS: 45% 42 33% 6

TEST301 SIMPLE ACMJET0 CWXTCOB CWXTDATE 04/10/2012 07:43:04 N N CT 63% 19 56% 16
*** CRITICAL FILTER TOTALS: 100% 1 50% 2
*** EXCLUDE FILTER TOTALS: 63% 19 56% 16
*** NET COVERAGE TOTALS: 0% 0 0% 0

Annotated Listing
An example of an annotated listing hardcopy batch report is shown in Figure 3-5 on page
3-9 through Figure 3-9 on page 3-13. This report details results down to the line level for
one or more programs. It includes actual numbers and percentages of verbs and branches
executed as well as the number and percentage of filtered verbs and branches if filters
were established before the report was generated. This report is split into two sections: an
annotated summary and an annotated listing.

The ANNOTATED SUMMARY section provides the compile date and time for each
program and indicates whether compiler optimization was used. DEBUG MODE indicates
whether results were obtained while using debugging procedures or during normal non-
debugging testing. This is important because the use of certain debugging commands can
alter the natural flow of execution in a program.

The ANNOTATED LISTING section of the report shows the source code of the selected
program or programs with flags for each line indicating whether or not it was executed
and, if so, how many times.
3-8 Xpediter/Code Coverage Mainframe User/Reference Guide

Table 3-1 describes the meaning of each of the source line flags that are used in Code
Coverage annotated listings.

Table 3-1. Annotation Flags


Flag Description
E Executed: The machine code corresponding to this source line was executed.
Execution of the machine code at the offset shared by this source line occurred. The last source line
E*
sharing that offset was flagged E.
U Unexecuted: The machine code corresponding to this source line was not executed.
Execution of the machine code at the offset shared by this source line did not occur. The last source
U*
line sharing that offset was flagged U.
No execution or branching: The machine code corresponding to this conditional verb was not
B0
executed, and no branches were taken.
Statements under the true branch were executed. Note: If a true condition does not contain any
B1 executable statements, then B1 indicates that statements under the false branch were executed.
An example is when the true branch contains the statement NEXT SENTENCE.
Statements under the false branch were executed. Note: If a true condition does not contain any
B2 executable statements, then B2 indicates that statements under the false branch were not
executed. An example is when the true branch contains the statement NEXT SENTENCE.
Both branches taken: The machine code corresponding to this conditional verb, the machine code
B3
immediately following it, and the machine code not immediately following it were executed.
Executed without branching: An abnormal condition in which the machine code corresponding to
B4
this conditional verb was executed, but no branches were taken.
X The source line has been completely “optimized out” of the compiler output.
Generating Code Coverage Reports 3-9

Figure 3-5. Annotated Listing Code Coverage Report (First Portion)

07/20/2015 COMPUWARE CORPORATION CODE COVERAGE 17.02 PAGE 1


REPORT SELECTION CRITERIA
REPORT SELECTED: ANNOTATED LISTING
REPORT REQUEST-> SYSTEM: TEST301 TEST ID: ALL USER ID: ALL LOAD MODULE: CWXTCOB PROGRAM: CWXTCOB
COMBINE DEBUG/NODEBUG: YES
COBOL PROCEDURE DIVISION ONLY: YES
REPOSITORIES: ACMJET0.XV17.REPOSIT
ACMJET0.XV31.REPOSIT
DDIO OVERRIDES: XV.XV31S1.DDIO
ACMJET0.XV17.DDIO
CRITICAL STATEMENT MASK: DATE
STARTING IN COLUMN 01 ENDING IN COLUMN 80
EXCLUDE STATEMENT MASK: DISPLAY
STARTING IN COLUMN 01 ENDING IN COLUMN 80
START EXCLUDE BLOCK MASK: 7000-PRINT-REGION-REPORT.
STARTING IN COLUMN 01 ENDING IN COLUMN 80
END EXCLUDE BLOCK MASK: MOVE 10
STARTING IN COLUMN 01 ENDING IN COLUMN 80
07/20/2015 COMPUWARE CORPORATION CODE COVERAGE 17.02 PAGE 2
ANNOTATED SUMMARY
FOR CWXTCOB

PROGRAM: CWXTCOB
MODULE: CWXTCOB
SYSTEM: TEST301
TEST ID: SIMPLE
USER ID: ACMJET0
COMPILE DATE: 06/06/2015
COMPILE TIME: 12:31:47
COLLECTION ENGINE: XPEDITER/TSO
DEBUG MODE: NO
COMPILER LANGUAGE: COBOLII R4
OPTIMIZED: NO
ONE OR MORE COLLECTIONS HAD BRANCH COVERAGE DISABLED


------------------------------------------------------TOTAL COVERAGE----------------------------------------------------------------
EXECUTABLE VERBS: 193 VERBS EXECUTED: 133 VERB PERCENT COVERED: 68%
EXECUTABLE BRANCHES: 40 BRANCHES EXECUTED: 25 BRANCH PERCENT COVERED: 62%

------------------------------------------------------CRITICAL FILTER COVERAGE------------------------------------------------------
EXECUTABLE VERBS: 10 VERBS EXECUTED: 7 VERB PERCENT COVERED: 70%
EXECUTABLE BRANCHES: 0 BRANCHES EXECUTED: 0 BRANCH PERCENT COVERED: N/A

------------------------------------------------------EXCLUDE FILTER COVERAGE------------------------------------------------------
EXECUTABLE VERBS: 48 VERBS EXECUTED: 0 VERB PERCENT COVERED: 0%
EXECUTABLE BRANCHES: 4 BRANCHES EXECUTED: 0 BRANCH PERCENT COVERED: 0%

------------------------------------------------------NET COVERAGE (TOTAL COVERAGE minus EXCLUDE FILTERS) --------------------------
EXECUTABLE VERBS: 145 VERBS EXECUTED: 133 VERB PERCENT COVERED: 91%
EXECUTABLE BRANCHES: 36 BRANCHES EXECUTED: 25 BRANCH PERCENT COVERED: 69%

* Critical and exclude filters overlapped. See annotated report.

----------------------------------------------------LEGEND FOR ANNOTATION FLAGS-----------------------------------------------------
E=EXECUTED U=UNEXECUTED B0=CONDITIONAL NOT EXECUTED
B1=VERB IMMEDIATELY FOLLOWING CONDITIONAL EXECUTED B2=VERB NOT IMMEDIATELY FOLLOWING CONDITIONAL EXECUTED
B3=BOTH PATHS OF CONDITIONAL EXECUTED B4=CONDITIONAL WITH NO EXECUTED PATHS
07/20/2015 COMPUWARE CORPORATION CODE COVERAGE 17.02 PAGE 3
ANNOTATED LISTING
FOR CWXTCOB
LINE FLAGS ----------------------------------SOURCE---------------------------------------- FREQUENCY
344 PROCEDURE DIVISION USING PARMINFO.
345 0000-MAINLINE.
346 E PERFORM 9000-OPEN.
347 E PERFORM 9100-CHECK-PARM.
348 B1 IF GOOD-PARM
349 E PERFORM 9200-INIT
350 E PERFORM 8000-READ-INPUT
351 UNTIL RECORDS-READ = START-NUMBER
352 OR END-OF-FILE
353 E PERFORM 1000-PROCESS-DATA
354 UNTIL END-OF-FILE
355 E PERFORM 6000-PRINT-EMPLOYEE-REPORT
356 E MOVE 1 TO REGION-SUB
357 B2 IF END-OF-MONTH
358 U PERFORM 7000-PRINT-REGION-REPORT
359 UNTIL REGION-SUB > 4.
360 E PERFORM 9900-CLOSE.
361 E GOBACK.
362 *********
363 ********* DIFFERENT PROCESSING OCCURS BASED ON EMPLOYEE TYPE. THERE
364 ********* ARE 3 VALID EMPLOYEE TYPES. IF A RECORD IS READ CONTAINING
365 ********* A RECORD TYPE OTHER THAN H, S OR M, AN ERROR MESSAGE IS
366 ********* WRITTEN AND PROCESSING CONTINUES.
367 *********
368 1000-PROCESS-DATA.
369 B3 IF HOURLY
370 E PERFORM 2000-PROCESS-HOURLY
371 ELSE
372 B3 IF SALES
373 E PERFORM 3000-PROCESS-SALES
374 ELSE
375 B1 IF MANAGEMENT
376 E PERFORM 4000-PROCESS-MANAGEMENT
377 ELSE
378 U MOVE ' INVALID EMPLOYEE TYPE ' TO ERROR-LINE
379 U WRITE REPORT-RECORD FROM ERROR-LINE.
3-10 Xpediter/Code Coverage Mainframe User/Reference Guide

Figure 3-6. Annotated Listing Code Coverage Report (Second Portion)

380 E PERFORM 8000-READ-INPUT.


381 *********
382 ********* CALCULATE TYPE H (HOURLY) EMPLOYEE COMPENSATION. ANY
383 ********* EMPLOYEE WITH MORE THAN 40 HOURS RECEIVES OVERTIME COMPUTED
384 ********* AT 1.5 TIMES THEIR HOURLY RATE. ONCE EMPLOYEE COMPENSATION
385 ********* IS CALCULATED, IT IS STORED IN A HOLD TABLE. THE DATA IN
386 ********* THE HOLD TABLE IS USED FOR PRINTING THE EMPLOYEE COMPENSATION
387 ********* REPORT.
388 *********
389 2000-PROCESS-HOURLY.
390 E MOVE ZERO TO OT-AMOUNT.
391 B3 IF WA-EMP-HOURS GREATER THAN 40
392 E COMPUTE EMP-WAGES = WA-EMP-RATE * 40
393 E COMPUTE OT-HOURS = WA-EMP-HOURS - 40
394 E COMPUTE OT-AMOUNT = OT-HOURS * (WA-EMP-RATE * 1.5)
395 ELSE
396 E COMPUTE EMP-WAGES = WA-EMP-HOURS * WA-EMP-RATE.
397 E COMPUTE EMP-COMPENSATION = EMP-WAGES + OT-AMOUNT.
07/20/2015 COMPUWARE CORPORATION CODE COVERAGE 17.02 PAGE 4
ANNOTATED LISTING
FOR CWXTCOB
LINE FLAGS ----------------------------------SOURCE---------------------------------------- FREQUENCY
398 E ADD EMP-COMPENSATION TO GRAND-TOTAL-EMP.
399 E CALL 'CWXTDATE' USING END-OF-MONTH-SW *CRITICAL FILTER*
400 YRS-OF-SERVICE
401 TODAYS-DATE *CRITICAL FILTER*
402 WA-EMP-HIRE-DATE. *CRITICAL FILTER*
403 E PERFORM 5000-STORE-EMPLOYEE-DETAIL.
404 E SET HOLD-IX UP BY 1.
405 *********
406 ********* CALCULATE TYPE S (SALES) EMPLOYEE COMPENSATION. THE TOTAL
407 ********* SALES FOR THE EMPLOYEE IS PASSED TO THE CALLED PROGRAM WHICH
408 ********* CALCULATES COMMISSION. ONCE EMPLOYEE COMPENSATION IS
409 ********* RETURNED FROM CWXTSUBC, IT IS STORED IN A HOLD-TABLE. THE
410 ********* DATA IN THE HOLD-TABLE IS USED FOR PRINTING THE EMPLOYEE
411 ********* COMPENSATION REPORT.
412 *********
413 3000-PROCESS-SALES.
414 B1 IF WA-SALES-AMOUNT > 0
415 E ADD WA-SALES-AMOUNT TO REGION-SALES (WA-EMP-REGION)
416 E MOVE WA-SALES-AMOUNT TO CALC-SALES
417 E MOVE 0 TO CALC-COMMISSION
418 E MOVE 'S' TO EMP-TYPE
419 E CALL 'CWXTSUBC' USING EMP-TYPE,
420 CALC-SALES,
421 CALC-COMMISSION
422 ELSE
423 U MOVE 'UH-OH' TO REGION-COMMENT (WA-EMP-REGION).
424 E COMPUTE EMP-COMPENSATION = WA-SALES-SALARY +
425 CALC-COMMISSION.
426 E ADD EMP-COMPENSATION TO GRAND-TOTAL-EMP.
427 E CALL 'CWXTDATE' USING END-OF-MONTH-SW *CRITICAL FILTER*
428 YRS-OF-SERVICE
429 TODAYS-DATE *CRITICAL FILTER*
430 WA-EMP-HIRE-DATE. *CRITICAL FILTER*
431 E PERFORM 5000-STORE-EMPLOYEE-DETAIL.
432 E SET HOLD-IX UP BY 1.
433 *********
434 ********* PROCESS TYPE M (MANAGEMENT) RECORDS. THE MANAGER NAME AND
435 ********* SALARY ARE STORED IN A TABLE FOR USE DURING PRINTING OF THE
436 ********* REGIONAL SALES REPORT.
437 *********
438 4000-PROCESS-MANAGEMENT.
439 E MOVE WA-EMP-NAME TO REGION-MANAGER (WA-EMP-REGION).
440 E MOVE WA-MGMT-SALARY TO REGION-SALARY (WA-EMP-REGION).
441 *********
442 ********* SALES AND HOURLY EMPLOYEE DATA IS STORED IN A HOLD TABLE FOR
443 ********* PRINTING OF EMPLOYEE COMPENSATION REPORT. THE HOLD TABLE IS
444 ********* A TWO-DIMENSIONAL TABLE AND HOLDS DATA FOR A MAXIMUM OF 20
445 ********* EMPLOYEES.
446 *********
447 5000-STORE-EMPLOYEE-DETAIL.
448 E PERFORM 5100-SET-INDEX.
449 B1 IF VALID-REGION
450 E MOVE WA-EMP-NAME TO HOLD-NAME (REG-IX, HOLD-IX)
451 E MOVE REGION-ID (WA-EMP-REGION)
07/20/2015 COMPUWARE CORPORATION CODE COVERAGE 17.02 PAGE 5
ANNOTATED LISTING
FOR CWXTCOB
LINE FLAGS ----------------------------------SOURCE---------------------------------------- FREQUENCY
452 TO HOLD-REGION (REG-IX, HOLD-IX)
453 E MOVE WA-EMP-TYPE TO HOLD-TYPE (REG-IX, HOLD-IX)
454 E MOVE WA-EMP-HIRE-DATE TO HOLD-HIRE-DATE (REG-IX, HOLD-IX) *CRITICAL FILTER*
455 E MOVE YRS-OF-SERVICE TO HOLD-YEARS (REG-IX, HOLD-IX)
456 E MOVE EMP-COMPENSATION
457 TO HOLD-TOTAL (REG-IX, HOLD-IX)
458 B3 IF HOURLY
459 E MOVE EMP-WAGES TO HOLD-WAGES (REG-IX, HOLD-IX)
460 E MOVE OT-AMOUNT TO HOLD-OT (REG-IX, HOLD-IX)
461 ELSE
462 E MOVE WA-SALES-SALARY
463 TO HOLD-WAGES (REG-IX, HOLD-IX)
464 E MOVE CALC-COMMISSION
465 TO HOLD-COMM (REG-IX, HOLD-IX).
466 *********
467 ********* SET THE REGION INDEX BASED ON EMPLOYEE REGION ID AND
468 ********* SEQUENTIALLY INCREMENT HOLD INDEX WITHIN EACH REGION.
469 ********* THE EMPLOYEE COMPENSATION REPORT WILL BE GROUPED BY
Generating Code Coverage Reports 3-11

Figure 3-7. Annotated Listing Code Coverage Report (Third Portion)

470 ********* REGION. IF AN INVALID REGION IS FOUND, AN ERROR MESSAGE


471 ********* IS WRITTEN AND PROCESSING CONTINUES.
472 *********
473 5100-SET-INDEX.
474 E MOVE 'N' TO REGION-ERROR-SW.
475 B3 IF NORTH
476 E ADD 1 TO NORTH-COUNT
477 E SET HOLD-IX TO NORTH-COUNT
478 ELSE
479 B3 IF SOUTH
480 E ADD 1 TO SOUTH-COUNT
481 E SET HOLD-IX TO SOUTH-COUNT
482 ELSE
483 B3 IF EAST
484 E ADD 1 TO EAST-COUNT
485 E SET HOLD-IX TO EAST-COUNT
486 ELSE
487 B1 IF WEST
488 E ADD 1 TO WEST-COUNT
489 E SET HOLD-IX TO WEST-COUNT
490 ELSE
491 U MOVE 'Y' TO REGION-ERROR-SW.
492 B1 IF VALID-REGION
493 E SET REG-IX TO WA-EMP-REGION.
494 *********
495 ********* COMPENSATION DATA FOR HOURLY AND SALES EMPLOYEES ARE PRINTED
496 ********* TO THE EMPLOYEE COMPENSATION REPORT FROM THE HOLD TABLE.
497 *********
498 6000-PRINT-EMPLOYEE-REPORT.
499 E SET REG-IX TO 1.
500 E PERFORM 6100-PRINT-EMPLOYEE-DETAIL
501 VARYING HOLD-IX FROM 1 BY 1
502 UNTIL HOLD-IX > NORTH-COUNT.
503 E SET REG-IX TO 2.
504 E PERFORM 6100-PRINT-EMPLOYEE-DETAIL
505 VARYING HOLD-IX FROM 1 BY 1
07/20/2015 COMPUWARE CORPORATION CODE COVERAGE 17.02 PAGE 6
ANNOTATED LISTING
FOR CWXTCOB
LINE FLAGS ----------------------------------SOURCE---------------------------------------- FREQUENCY
506 UNTIL HOLD-IX > SOUTH-COUNT.
507 E SET REG-IX TO 3.
508 E PERFORM 6100-PRINT-EMPLOYEE-DETAIL
509 VARYING HOLD-IX FROM 1 BY 1
510 UNTIL HOLD-IX > EAST-COUNT.
511 E SET REG-IX TO 4.
512 E PERFORM 6100-PRINT-EMPLOYEE-DETAIL
513 VARYING HOLD-IX FROM 1 BY 1
514 UNTIL HOLD-IX > WEST-COUNT.
515 E WRITE REPORT-RECORD FROM BLANK-LINE.
516 E MOVE GRAND-TOTAL-EMP TO EMP-GRAND-TOTAL.
517 E WRITE REPORT-RECORD FROM EMP-TOTAL-DTL.
518 *********
519 ********* PRINT DETAIL LINES FOR EMPLOYEE COMPENSATION REPORT
520 *********
521 6100-PRINT-EMPLOYEE-DETAIL.
522 B3 IF EMP-LINE-COUNT GREATER THAN 55
523 E PERFORM 6200-PRINT-EMPLOYEE-HEADERS.
524 E MOVE HOLD-NAME (REG-IX, HOLD-IX) TO EMP-DTL-NAME.
525 E MOVE HOLD-REGION (REG-IX, HOLD-IX) TO EMP-DTL-REGION.
526 E MOVE HOLD-TYPE (REG-IX, HOLD-IX) TO EMP-DTL-TYPE.
527 E MOVE HOLD-HIRE-MM(REG-IX, HOLD-IX) TO EMP-DTL-HIRE-MM.
528 E MOVE '/' TO EMP-DTL-SLASH1.
529 E MOVE HOLD-HIRE-DD(REG-IX, HOLD-IX) TO EMP-DTL-HIRE-DD.
530 E MOVE '/' TO EMP-DTL-SLASH2.
531 E MOVE HOLD-HIRE-YY(REG-IX, HOLD-IX) TO EMP-DTL-HIRE-YY.
532 E MOVE HOLD-YEARS (REG-IX, HOLD-IX) TO EMP-DTL-YRS-OF-SERVICE.
533 E MOVE HOLD-WAGES (REG-IX, HOLD-IX) TO EMP-DTL-WAGES.
534 E MOVE HOLD-OT (REG-IX, HOLD-IX) TO EMP-DTL-OT.
535 E MOVE HOLD-COMM (REG-IX, HOLD-IX) TO EMP-DTL-COMM.
536 E MOVE HOLD-TOTAL (REG-IX, HOLD-IX) TO EMP-DTL-TOTAL.
537 E WRITE REPORT-RECORD FROM EMPLOYEE-DTL
538 AFTER ADVANCING 1 LINE.
539 E ADD 1 TO EMP-LINE-COUNT.
540 E MOVE SPACES TO EMPLOYEE-DTL.
541 *********
542 ********* PRINT HEADERS FOR EMPLOYEE COMPENSATION REPORT
543 *********
544 6200-PRINT-EMPLOYEE-HEADERS.
545 E MOVE PAGE-COUNT TO EMP-PAGE.
546 E MOVE DATE-YY TO EMP-RUN-YY. *CRITICAL FILTER*
547 E MOVE DATE-MM TO EMP-RUN-MM. *CRITICAL FILTER*
548 E MOVE DATE-DD TO EMP-RUN-DD. *CRITICAL FILTER*
549 E WRITE REPORT-RECORD FROM BLANK-LINE.
550 E WRITE REPORT-RECORD FROM BLANK-LINE.
551 E WRITE REPORT-RECORD FROM BLANK-LINE.
552 E WRITE REPORT-RECORD FROM EMPLOYEE-HDR1.
553 E WRITE REPORT-RECORD FROM BLANK-LINE.
554 E WRITE REPORT-RECORD FROM BLANK-LINE.
555 E WRITE REPORT-RECORD FROM EMPLOYEE-HDR2.
556 E WRITE REPORT-RECORD FROM EMPLOYEE-HDR3.
557 E WRITE REPORT-RECORD FROM BLANK-LINE.
558 E ADD 1 TO PAGE-COUNT.
559 E MOVE 9 TO EMP-LINE-COUNT.
3-12 Xpediter/Code Coverage Mainframe User/Reference Guide

Figure 3-8. Annotated Listing Code Coverage Report (Fourth Portion)

07/20/2015 COMPUWARE CORPORATION CODE COVERAGE 17.02 PAGE 7


ANNOTATED LISTING
FOR CWXTCOB
LINE FLAGS ----------------------------------SOURCE---------------------------------------- FREQUENCY
560 *********
561 ********* COMPENSATION DATA FOR MANAGEMENT EMPLOYEES IS PRINTED
562 ********* TO THE REGIONAL SALES REPORT. THE TOTAL SALES FOR THE
563 ********* REGION IS PASSED TO THE CALLED PROGRAM WHICH CALCULATES
564 ********* COMMISSION. THIS REPORT IS GENERATED AT END-OF-MONTH.
565 ********* STARTHERE
566 7000-PRINT-REGION-REPORT. *EXCLUDE FILTER*
567 B0 IF REG-LINE-COUNT GREATER THAN 55 *EXCLUDE FILTER*
568 U PERFORM 7100-PRINT-REGION-HEADERS. *EXCLUDE FILTER*
569 U MOVE SPACES TO REGION-DETAIL. *EXCLUDE FILTER*
570 U MOVE REGION-NAME (REGION-SUB) TO REG-DTL-REGION. *EXCLUDE FILTER*
571 U MOVE REGION-MANAGER (REGION-SUB) TO REG-DTL-MANAGER. *EXCLUDE FILTER*
572 U MOVE REGION-SALARY (REGION-SUB) TO REG-DTL-SALARY. *EXCLUDE FILTER*
573 U MOVE REGION-SALES (REGION-SUB) TO REG-DTL-SALES. *EXCLUDE FILTER*
574 U MOVE REGION-SALES (REGION-SUB) TO CALC-SALES. *EXCLUDE FILTER*
575 U MOVE REGION-COMMENT (REGION-SUB) TO REG-DTL-COMMENT. *EXCLUDE FILTER*
576 U MOVE 'M' TO EMP-TYPE. *EXCLUDE FILTER*
577 U CALL 'CWXTSUBC' USING EMP-TYPE, *EXCLUDE FILTER*
578 CALC-SALES, *EXCLUDE FILTER*
579 CALC-COMMISSION. *EXCLUDE FILTER*
580 U MOVE CALC-COMMISSION TO REG-DTL-COMM. *EXCLUDE FILTER*
581 U COMPUTE MGMT-COMPENSATION = CALC-COMMISSION + *EXCLUDE FILTER*
582 REGION-SALARY(REGION-SUB). *EXCLUDE FILTER*
583 U ADD MGMT-COMPENSATION TO GRAND-TOTAL-MGMT. *EXCLUDE FILTER*
584 U MOVE MGMT-COMPENSATION TO REG-DTL-TOTAL. *EXCLUDE FILTER*
585 U WRITE REPORT-RECORD FROM REGION-DETAIL. *EXCLUDE FILTER*
586 B0 IF REGION-SUB = 4 *EXCLUDE FILTER*
587 U WRITE REPORT-RECORD FROM BLANK-LINE *EXCLUDE FILTER*
588 U MOVE GRAND-TOTAL-MGMT TO MGMT-GRAND-TOTAL *EXCLUDE FILTER*
589 U WRITE REPORT-RECORD FROM MGMT-TOTAL-DTL. *EXCLUDE FILTER*
590 U ADD 1 TO REG-LINE-COUNT. *EXCLUDE FILTER*
591 U ADD 1 TO REGION-SUB. *EXCLUDE FILTER*
592 ********* ENDHERE *EXCLUDE FILTER*
593 ********* PRINT HEADERS FOR REGIONAL SALES REPORT *EXCLUDE FILTER*
594 ********* *EXCLUDE FILTER*
595 7100-PRINT-REGION-HEADERS. *EXCLUDE FILTER*
596 U MOVE PAGE-COUNT TO REG-PAGE. *EXCLUDE FILTER*
597 U MOVE DATE-YY TO REG-RUN-YEAR. *CRIT/EXC FILTER*
598 U MOVE DATE-MM TO REG-RUN-MONTH. *CRIT/EXC FILTER*
599 U MOVE DATE-DD TO REG-RUN-DAY. *CRIT/EXC FILTER*
600 U WRITE REPORT-RECORD FROM BLANK-LINE. *EXCLUDE FILTER*
601 U WRITE REPORT-RECORD FROM BLANK-LINE. *EXCLUDE FILTER*
602 U WRITE REPORT-RECORD FROM BLANK-LINE. *EXCLUDE FILTER*
603 U WRITE REPORT-RECORD FROM BLANK-LINE. *EXCLUDE FILTER*
604 U WRITE REPORT-RECORD FROM BLANK-LINE. *EXCLUDE FILTER*
605 U WRITE REPORT-RECORD FROM REGION-HDR1. *EXCLUDE FILTER*
606 U WRITE REPORT-RECORD FROM BLANK-LINE. *EXCLUDE FILTER*
607 U WRITE REPORT-RECORD FROM BLANK-LINE. *EXCLUDE FILTER*
608 U WRITE REPORT-RECORD FROM REGION-HDR2. *EXCLUDE FILTER*
609 U WRITE REPORT-RECORD FROM BLANK-LINE. *EXCLUDE FILTER*
610 U ADD 1 TO PAGE-COUNT. *EXCLUDE FILTER*
611 U MOVE 10 TO REG-LINE-COUNT. *EXCLUDE FILTER*
612 *********
613 *********
07/20/2015 COMPUWARE CORPORATION CODE COVERAGE 17.02 PAGE 8
ANNOTATED LISTING
FOR CWXTCOB
LINE FLAGS ----------------------------------SOURCE---------------------------------------- FREQUENCY
614 8000-READ-INPUT.
615 E READ EMPLOYEE-FILE INTO EMPLOYEE-WORK-AREA
616 AT END
617 E MOVE 'Y' TO EOF-SW.
618 E ADD 1 TO RECORDS-READ.
619 *********
620 *********
621 9000-OPEN.
622 E OPEN INPUT EMPLOYEE-FILE.
623 E OPEN OUTPUT REPORT-FILE.
624 *********
625 ********* VALID PARMS ARE BLANK OR 5 DIGIT NUMBER
626 *********
627 9100-CHECK-PARM.
628 B1 IF PARM-LTH = 5
629 B1 IF PARM-DATA IS NUMERIC
630 E MOVE PARM-DATA TO START-NUMBER
631 ELSE
632 U PERFORM 9800-BAD-PARM
633 ELSE
634 B0 IF PARM-LTH = 0
635 U MOVE 1 TO START-NUMBER
636 ELSE
637 U PERFORM 9800-BAD-PARM.
638 *********
639 *********
640 9200-INIT.
641 E MOVE 1 TO REGION-SUB.
642 E PERFORM 9300-INITIALIZE-REGION-TABLE
643 UNTIL REGION-SUB > 4.
644 E SET HOLD-IX TO 1.
645 E ACCEPT TODAYS-DATE FROM DATE. *CRITICAL FILTER*
646 *********
647 *********
648 9300-INITIALIZE-REGION-TABLE.
649 E MOVE SPACES TO REGION-MANAGER (REGION-SUB).
Generating Code Coverage Reports 3-13

Figure 3-9. Annotated Listing Code Coverage Report (Fifth Portion)

650 E MOVE SPACES TO REGION-COMMENT (REGION-SUB).


651 E MOVE 0 TO REGION-SALARY (REGION-SUB).
652 E MOVE 0 TO REGION-SALES (REGION-SUB).
653 E ADD 1 TO REGION-SUB.
654 *********
655 *********
656 9800-BAD-PARM.
657 U MOVE 'Y' TO PARM-ERROR-SW.
658 U MOVE ' PARAMETER LENGTH OR DATA IS INCORRECT '
659 TO ERROR-LINE.
660 U WRITE REPORT-RECORD FROM ERROR-LINE.
661 *********
662 *********
663 9900-CLOSE.
664 E CLOSE EMPLOYEE-FILE.
665 E CLOSE REPORT-FILE.
666 *********
667 *********
07/20/2015 COMPUWARE CORPORATION CODE COVERAGE 17.02 PAGE 9
ANNOTATED LISTING
FOR CWXTCOB
LINE FLAGS ----------------------------------SOURCE---------------------------------------- FREQUENCY
668 9999-RIP.
669 U DISPLAY ' ************ '. *EXCLUDE FILTER*
670 U DISPLAY ' * * '. *EXCLUDE FILTER*
671 U DISPLAY ' * T H I S * '. *EXCLUDE FILTER*
672 U DISPLAY ' * * '. *EXCLUDE FILTER*
673 U DISPLAY ' * I S * '. *EXCLUDE FILTER*
674 U DISPLAY ' * * '. *EXCLUDE FILTER*
675 U DISPLAY ' * D E A D * '. *EXCLUDE FILTER*
676 U DISPLAY ' * * '. *EXCLUDE FILTER*
677 U DISPLAY ' * C O D E * '. *EXCLUDE FILTER*
678 U DISPLAY ' ****************** '. *EXCLUDE FILTER*
3-14 Xpediter/Code Coverage Mainframe User/Reference Guide
4-1

Chapter 4.
Generating System Flow Reports Chap 4

This chapter explains how to generate System Flow reports from within the mainframe
component of Xpediter/Code Coverage. It also includes an example CICS report with an
explanation of the data found there.

Note: System Flow data shows the logical relationships between transactions and
programs, but is not intended to be a transaction trace. Consequently, if program
A calls program B multiple times during the execution of a transaction, only one
occurrence of this relationship will be reported.

System Flow Reports Screen


The System Flow Reports screen shown in Figure 4-1 is accessed by entering option 2 on
the Primary Menu. This screen is used to generate reports that detail the logical
relationships between transactions and programs during the execution of your CICS
transactions. A sample report with detailed descriptions is provided in Figure 4-2 on page
4-3.

Press Enter to process any information in the screen fields and submit the job to generate
a System Flow report. Use the END command (default PF3) to return to the Primary Menu
without generating a report.

Reports can be run in foreground or batch mode. If the reports are run in the foreground,
the output is directed to the terminal. When viewing of these foreground reports is
complete, a Report Disposition screen is displayed that gives you the option of deleting
the report, printing the report, or saving the report on disk. If the reports are run in
batch, the Job Information screen determines the attributes of the output.

Figure 4-1. System Flow Reports Screen

------------------------ SYSTEM FLOW 17.02 - REPORTS ----------- Row 1 of 2


Command ===> Scroll ===> CSR
Line Commands: Primary Commands:
I (Insert new report), SEtup , DEL (Delete), ACT (Activate),
D (Delete), A (Activate), SUS (SUSpend), SUBmit , Edit (JCL),
S (Submit), P (Suspend), RUN (Online report),
R (Run online report) END (Exit and save),
CANcel (Exit without saving)

CMD Status System name Test ID User ID
_ SUSPNDED XD* T* ACMJET0
_ ACTIVE SF XVST ________
******************************* Bottom of data ********************************

Line Commands
The line commands displayed in Figure 4-1 are defined as follows:

I Insert (add) a System Flow report request.

D Delete a System Flow report request.


4-2 Xpediter/Code Coverage Mainframe User/Reference Guide

A Activate a System Flow report that was previously suspended.

S Submit a System Flow report request for batch processing for this line.

P Suspend a System Flow report that was previously active.

R Enables a user to run a System Flow report request online, and then browse the output.

Primary Commands
SEtup
Modifies the global default values, including repository dataset(s) and jobcards.
DEL
Deletes all System Flow reports in the ISPF table and inserts one new request.
ACT
Marks all System Flow report requests active.
SUS
Marks all System Flow report requests as suspended (suspnded).
SUBmit
Submits a System Flow batch job using all entries marked active.
Edit
Creates JCL for batch processing and repositions you into ISPF edit.
RUN
Invokes the report program for processing all entries marked as active.
END
Exits the display and saves all changes.
CANcel
Exits the display without saving any changes.

Input Fields
CMD
Specifies one of the six available line commands next to the system name you want
to affect. See “Line Commands” on page 4-1 for details of each command that can be
entered in this field.
Status
A protected field indicating the active or suspended (suspnded) status of a repository
program report. This field cannot be edited.
System Name
Specifies the system name for which the System Flow report is to be generated. More
than one system name can be specified by using additional lines. This field is limited
to 15 characters in length and is subject to wildcard rules.
Test ID
Specifies the name of the test ID for which the System Flow report is to be generated.
This field is limited to 15 characters in length and is subject to wildcard rules.
Generating System Flow Reports 4-3

User ID
Specifies the user ID of user for which the System Flow report is to be generated. This
field is limited to eight characters in length and is subject to wildcard rules.

Sample System Flow Report


An example of a CICS System Flow hardcopy batch report is shown in Figure 4-2.

Figure 4-2. Sample System Flow Report

06/08/2015 COMPUWARE CORPORATION CODE COVERAGE 17.02 PAGE 1


REPORT SELECTION CRITERIA
REPORT SELECTED: SYSTEM FLOW REPORT
REPORT REQUEST-> SYSTEM: SF TEST ID: XVST USER ID: ALL
REPOSITORIES: ACMJET0.XVTC.REPOSIT

************************************************************
* ---- NOTICE ---- *
* SYSTEM FLOW REPORTING SHOWS THE LOGICAL RELATIONSHIPS *
* BETWEEN TRANSACTIONS AND PROGRAMS. IT DOES NOT REFELECT *
* REPETITIVE CALLS. *
************************************************************
06/08/2015 COMPUWARE CORPORATION CODE COVERAGE 17.02 PAGE 2
SYSTEM FLOW REPORT
FOR SYSTEM=SF TESTID=XVST USERID=ACMJET0
TRAN OR LOAD FROM LOAD TO ------COMPILE------ ------COLLECTION-------
PROGRAM MODULE SYSID ACTION PROGRAM MODULE SYSID LANGUAGE DATE TIME DATE TIME
-------- -------- ----- ------ -------- -------- ----- ---------- ---------- -------- ---------- ------------
TRN=XVTC C093 INITAL XVSTCDRV XVSTCDRV C093 ZOS COBOL 07/14/2014 08:18:47 06/07/2015 19:25:04.625
XVSTCDRV XVSTCDRV C093 STATIC XVSTINLE XVSTCDRV C093 HLASM 07/14/2014 08:13:00 06/07/2015 19:25:04.627
XVSTCDRV XVSTCDRV C093 LINK XVSTCX01 XVSTCX01 C093 ZOS COBOL 07/14/2014 08:18:41 06/07/2015 19:25:08.964
XVSTINCM XVSTCDRV C093 STATIC XVSTINLE XVSTCDRV C093 HLASM 07/14/2014 08:13:00 06/07/2015 19:25:04.628
XVSTINLE XVSTCDRV C093 STATIC XVSTINCM XVSTCDRV C093 HLASM 07/14/2014 08:13:00 06/07/2015 19:25:04.627
XVSTCX01 XVSTCX01 C093 LINK XVSTCX02 XVSTCX02 C093 ZOS COBOL 07/14/2014 08:18:35 06/07/2015 19:25:09.246
XVSTCX02 XVSTCX02 C093 LINK XVSTCX03 XVSTCX03 C093 ZOS COBOL 07/14/2014 08:18:30 06/07/2015 19:25:09.568
XVSTCX03 XVSTCX03 C093 LINK XVSTCX04 XVSTCX04 C093 ZOS COBOL 07/14/2014 08:18:24 06/07/2015 19:25:09.774
XVSTCX04 XVSTCX04 C093 LINK XVSTCX05 XVSTCX05 C093 ZOS COBOL 07/14/2014 08:18:18 06/07/2015 19:25:09.993
******************************** BOTTOM OF DATA ***********************************************************************************

System Flow Report Heading Explanations


The following are explanations of each of the columns in the System Flow report:

Report Selected
This indicates that this is a System Flow report.
Report Request
This reflects the system, test ID, and User ID of the report requested from the System
Flow reports screen. There will be one entry here for each report requested from the
System Flow Reports screen (Figure 4-1 on page 4-1).
Repositories
This reflects the Code Coverage repositories that were supplied on the Code Coverage
repositories screen. One to nine repositories may be listed here. If System Flow data
for the selected system name, test ID, and user ID is contained on more than one
repository, the data from all repositories will be combined into a single report. To
report on data from a single repository, specify only that repository on the Code
Coverage repositories screen and rerun the report.
Notice
This notice is meant to highlight that the System Flow reporting is not a transaction
trace. If repetitive calls are made to a calling program only the first occurrence of that
call will be reported. The notice will appear on page 1 of each report.
TRAN OR PROGRAM
For CICS transaction records, this will contain the literal TRN- followed by the 4-byte
transaction code (for example, TRN-XVTC). For program records, this will contain
the name of the calling program (CSECT).
4-4 Xpediter/Code Coverage Mainframe User/Reference Guide

LOAD MODULE
This is the load module that contains the calling program.
FROM SYSID
This is the 4-byte CICS system identification of the CICS region where the calling
program is executing.
ACTION
This field is the type of call that the calling program is using to invoke the called
program. The possible entries for the ACTION field are LINK for EXEC CICS LINK,
XCTL for an EXEC CICS XCTL, STATIC for a static call, DYNAM for a dynamic call,
or INITIAL for the first program collected in a CICS transaction.

Note: A program listed as INITIAL might not be the first program given control by
CICS when executing a transaction. This is because System Flow collection
masks on the Test Definition/Collection Specification screen can limit which
programs System Flow “sees” during collection for a transaction.

PROGRAM
This field is the called program (CSECT).
LOAD MODULE
This is the load module that contains the called program.
TO SYSID
This is the 4-byte CICS system identification of the CICS region where the called
program is executing.
LANGUAGE
This is the language of the called program. The language could be any language
supported by CICS.
COMPILE DATE/TIME
This is the compile date and time from the Compuware language processors of the
called program. Is it not required that a program have a Compuware source listing to
be collected for System Flow. Therefore the compile date and time in the report may
be blank.
COLLECTION DATE AND TIME
This field is the collection date and time of the System Flow record. This is expressed
as a Coordinated Universal Time, formerly known as Greenwich Mean Time (GMT).
5-1

Chapter 5.
Using Results Repository Utilities Chap 5

This chapter describes how to use each of the Xpediter/Code Coverage utilities. These
utilities allow you to create and delete entire Code Coverage results repositories or
individual repository members, import or export repository members, and merge records
from two repository datasets.

The Results repository utilities can be run as batch jobs or can be used interactively by
accessing the screens described in this chapter. Sample JCL is provided in the SLXVSAMP
members listed in Table 5-1.

Table 5-1. JCL for Results Repository Utilities


Member Name Utility Function
JCLCRERP Create a repository dataset
JCLDELRP Delete a repository dataset
JCLLST List repository members
JCLDEL Delete repository members
JCLEXP Export member(s) from repository to sequential dataset
JCLIMP Import sequential dataset member(s) into repository
JCLMERGE Merge member(s) from one repository into another
XVJCLCNV Process an input PDS and create an output PDS containing modified JCL

Note: For information about the member name for the JCL Flag Utility, refer to the
chapter entitled “Batch File Utility CWDDSUTL,” in the Compuware Shared Services
User/Reference Guide, MVS Version.

Utilities Menu
The Utilities menu shown in Figure 5-1 provides access to the various Code Coverage
utilities. This menu is displayed by entering option 2 on the Primary Menu (see “Primary
Menu” on page 1-2).

Figure 5-1. Utilities Menu

------------------------ CODE COVERAGE 17.02 - UTILITIES --------------------


OPTION ===>

1 REPOSITORY - Create and/or Delete a Repository
2 LIST/DELETE - List and/or Delete Repository member(s)
3 EXPORT - Export Repository member(s)
4 IMPORT - Import Repository member(s)
5 MERGE - Merge records between two Repository files
6 FLAG - Flag source listings differences
7 CONVERT - Convert JCL

C CICS - CICS Program Inventory Utility
M MAINTENANCE - Print maintenance report
5-2 Xpediter/Code Coverage Mainframe User/Reference Guide

Type 1 in the OPTION field and press Enter to create or delete a Code Coverage Results
Repository dataset. Refer to the “Repository Utility Screen” on page 5-2 for details.

Type 2 in the OPTION field and press Enter to view a list of repository members or delete
selected members. Refer to the “List/Delete Utility Screen” on page 5-4 for details.

Type 3 in the OPTION field and press Enter to export one or more repository members as
described in “Export Utility Screen” on page 5-13.

Type 4 in the OPTION field and press Enter to import repository members. Refer to the
“Import Utility Screen” on page 5-15 for details.

Type 5 in the OPTION field and press Enter to merge one or more repository members
into another repository dataset. Refer to the “Merge Utility Screen” on page 5-16 for
details.

Type 6 in the OPTION field and press Enter to select the flag that will create the batch job
to run the compare utility. Refer to the “Flag Utility Screen” on page 5-18 for details.

Type 7 in the OPTION field and press Enter to convert batch JCL for Code Coverage.
Refer to the “Convert JCL Utility Screen” on page 5-20 for details.

Type C in the OPTION field and press Enter to perform actions on the Program Inventory
file. Refer to the “CICS Program Inventory Maintenance Screen” on page 5-24 for details.

Type M in the OPTION field and press Enter to immediately print a report identifying the
release and maintenance applied to your Code Coverage system.

Repository Utility Screen


The Repository Utility screen shown in Figure 5-2 allows you to create and delete the
Xpediter/Code Coverage Results Repository datasets used to accumulate testing coverage
data. If in batch mode, a batch job using IDCAMS will be generated to do the actual
allocation or deletion of the dataset. This screen is accessed by entering option 1 on the
Code Coverage Utilities menu (Figure 5-1 on page 5-1).

You can also run a batch job to create or delete a Results Repository dataset. Sample JCL is
provided in SLXVSAMP members JCLCRERP and JCLDELRP.

Figure 5-2. Repository Utility Screen

---------------- CODE COVERAGE 17.02 - REPOSITORY UTILITY -------------------


COMMAND ===>

Commands: C (Create file) D (Delete file)

Repository File ===> ’ACMJET0.V17.REPOSIT’

Management Class ===> (optional)
Storage Class ===> (optional)
Volume ===> (optional)
Unit ===> (optional)

Space Units ===> CYL (CYL/MB)
Primary Quantity ===> 10

Edit JCL ===> NO_ (Yes/No)






Press ENTER to process or enter END command to terminate
Using Results Repository Utilities 5-3

Commands
The primary commands shown in Figure 5-2 are defined as follows:

C Creates a repository dataset.

D Deletes a repository dataset.

Input Fields
Repository File
Specifies the name of the dataset to be created or deleted. The name can be qualified
with quotes or unqualified. An unqualified name appears with your user ID as a
prefix. Ensure your site’s Code Coverage users have write access to the specified
dataset.
Management Class
Specifies the desired SMS management class. Only use this optional field or the
Storage Class field when creating an SMS managed dataset. When you use this field,
leave the Volume and Unit fields blank. The appropriate values for those fields will
be assigned by the system.
Storage Class
Specifies the desired SMS storage class. Only use this optional field or the
Management Class field only when creating an SMS managed dataset. When you use
this field, leave the Volume and Unit fields blank. The appropriate values will be
assigned by the system.
Volume
Specifies the volume serial number on which to allocate the repository dataset. You
can also specify a generic unit name. Only use this optional field only when creating
a non-SMS dataset. If you use the Management Class field or the Storage Class field
when creating an SMS managed dataset, then leave this field blank so that the system
will assign the appropriate value.
Unit
Specifies the generic unit name on which to allocate the repository dataset. If you
specify a unit name, a sequential dataset will be dynamically allocated to a volume
on that unit. This dataset will then be deleted and replaced by a VSAM dataset when
the IDCAMS batch job is run. Only use this optional field only when creating a non-
SMS dataset. If you use the Management Class field or the Storage Class field when
creating an SMS managed dataset, then leave this field blank so that the system will
assign the appropriate value.
Space Units
Specifies the primary space units for the dataset. A value must be entered when any
repository dataset is created or deleted. Valid values are cylinders (CYL) and
megabytes (MB). This field is required.
Primary Quantity
Specifies the number of primary space units to be allocated for the repository dataset.
This field is required. A valid space unit value must be entered when any repository
dataset is created. The default size is 10 cylinders, which provides enough space for
one or more systems totalling approximately 1000 programs of 800 executable
statements each. For estimating purposes, the size of each record is

(8 * number of executable verbs) + 160.


5-4 Xpediter/Code Coverage Mainframe User/Reference Guide

Edit JCL
Allows you to choose whether or not to edit the JCL. When you are in batch mode,
specify Yes to edit the JCL of the IDCAMS allocation or deletion job prior to
submittal. The default value is No. When you are in an online mode, No is
automatically displayed in this field as a default and you are prohibited from
entering a value.

List/Delete Utility Screen


The List/Delete Utility screen shown in Figure 5-3 and Figure 5-4 on page 5-5 allows you
to list individual members of the Xpediter/Code Coverage Results Repository dataset used
to accumulate testing coverage data. It also enables you to delete selected members that
are no longer needed. This screen is accessed by entering option 2 on the Code Coverage
Utilities menu (Figure 5-1 on page 5-1).

You can also run a batch job to list or delete Results Repository dataset members. Sample
JCL is provided in SLXVSAMP members JCLLST and JCLDEL.

Figure 5-3. List/Delete Utility Screen #1

---------------- CODE COVERAGE 17.02 - LIST/DELETE UTILITY -------------------


COMMAND ===>

Commands: D (delete), L or blank (list)

Repository File ===>
Type ===> (C = Code Coverage, F = System Flow)
System ===>
Test ID ===>
User ID ===>

Module ===>
Compile Date ===> ____ __ __ (YYYY or YY MM DD)
Compile Time ===> __ __ __ (HH MM SS)
More: +
Select by Date:
Last Updated Date ===> ____ __ __ (YYYY or YY MM DD)
Comparative Operator ===> (LT, LE, EQ, GT, or GE)

Code Coverage only: Program Name ===>
Debug ===> (Y/N or blank or * for both)


Press ENTER to process or enter END command to terminate
Using Results Repository Utilities 5-5

Figure 5-4. List/Delete Utility Screen #2

---------------- CODE COVERAGE 17.02 - LIST/DELETE UTILITY ------- End of data


COMMAND ===>

Commands: D (delete), L or blank (list)

Repository File ===>
Type ===> (C = Code Coverage, F = System Flow)
System ===>
Test ID ===>
User ID ===>

Module ===>
Compile Date ===> ____ __ __ (YYYY or YY MM DD)
Compile Time ===> __ __ __ (HH MM SS)
More: -
Debug ===> (Y/N or blank or * for both)

System Flow only: Object Type ===> (P=Pgm, X=Tran, blank or * = both)
Object Name ===>
CICS SYSID ===>
Call Type ===> (D = Dynamic, L = Link, X = XCTL
S = Static link, blank or * = all)

Press ENTER to process or enter END command to terminate

Commands
The primary commands shown in Figure 5-3 and Figure 5-4 are defined as follows:

D Deletes specified repository members.

L Lists the items in a repository. Leaving the COMMAND field blank will also list the items in a repository.

Input Fields
All input fields are described below. The Repository File field, Type field, and Compile
Date and Compile Time fields do not accept wildcards.

Repository File
Specifies the name of the Results Repository dataset for which the systems are to be
listed or deleted. If an L is entered in the COMMAND field and the System, Test ID,
and Module fields are left blank, the System Selection screen shown in Figure 5-5 on
page 5-7 will be displayed.
Type
Specifies the type of record to be processed. Select C for Code Coverage records or F
for System Flow records. This field does not accept wildcard characters.
System
Specifies the system to be accessed. If L is entered in the COMMAND field, a system
name is specified in the System field, and the other fields are left blank, the Test ID
Selection screen shown in Figure 5-6 on page 5-9 will be displayed. The System field
is restricted to 15 characters or less in length and can be wildcarded.
Test ID
Specifies the test ID to be accessed. This field can be wildcarded. If wildcarded, all
entries that match the criteria will be displayed on the Test ID Selection screen
shown in Figure 5-6 on page 5-9.
User ID
Specifies the name of a valid TSO or IMS user. The field is limited to 8 characters or
less in length and can be wildcarded.
5-6 Xpediter/Code Coverage Mainframe User/Reference Guide

Module
Specifies the module to be accessed. If L is entered in the COMMAND field and this
field specified, the Program Selection screen shown in Figure 5-7 on page 5-10 will be
displayed. The Module field is restricted to 8 characters or less in length and can be
wildcarded.
Compile Date
Specifies a compile date to narrow the accessing of the specified program to those
with a matching compile date.
Compile Time
Specifies a compile time to further narrow the accessing of the specified program to
those with a matching compile time.

Select by Date Fields


Last Updated Date
Specifies the last date on which the selected record was added or updated.
Comparative Operator
Specifies the comparison operator to use when choosing dates by which to select
records. Available operators are:

LT Less than. Choose records updated before, but not on, the date specified.

LE Less than or equal to. Choose records updated on or before the date specified.

EQ Equal to. Choose records updated on the exact date specified.

GT Greater than. Choose records updated after, but not on, the date specified.

GE Greater than or equal to. Choose records updated on or after the date specified.

Code Coverage Only Fields


Program Name
Specifies the program name (for Code Coverage only) to be accessed. If an L is
entered in the COMMAND field, a program name is specified in the Program field,
and the other fields are left blank, the Program Selection screen (Figure 5-7 on page
5-10) will be displayed with a list of systems that contain one or more programs
matching the specified name. This field is restricted to 8 characters or less in length.
Debug
Allows you to choose whether to include or exclude Code Coverage members
containing data captured while using debugging commands. Specify Y (Yes) to
include Code Coverage members or N (No) to exclude those members that include
data captured while using debugging commands. The contents of these members
may not necessarily reflect normal program execution.

System Flow Only Fields


Object Type
Specifies the calling object (for System Flow only) as a program or a transaction.
Select P for Program, X for Transaction. A blank or asterisk (*) specifies both. This
field is optional.
Object Name
Specifies the object name (for System Flow only) of the calling program or
transaction. This field is limited to 8 characters or less in length and is optional.
Using Results Repository Utilities 5-7

CICS SYSID
Specifies the ID of the CICS system that executed the System Flow. This field is
limited to 4 characters or less in length and is optional.
Call Type
Specifies the type of call (for System Flow only) made by the object (parent). Select D
for Dynamic, L for Link, X for XCTL, S for Static Link.A blank or asterisk (*) specifies
all choices. This single-character field is optional.

System Selection Screen


The System Selection screen shown in Figure 5-5 provides a list of systems in a
previously-specified Results Repository dataset for which Code Coverage data exists.
From this list of systems, you can then list or delete the members associated with them.
This screen is accessed from the List/Delete Utility screen (Figure 5-3 on page 5-4) when
no system name or a generic system name is specified in that screen’s System field.

Figure 5-5. System Selection Screen

-------- CODE COVERAGE 17.02 - LIST/DELETE UTILITY - SYSTEM SELECTION ----------


COMMAND ===> SCROLL ===> PAGE

Line command: D (Delete) Primary command: S (Select all)
S (Select) DEL (Delete all)
X (Exclude from list) EXC (Exclude all viewed)

Repository: ’ACMJET0.V17.REPOSIT’
Type: Code Coverage Program: TRIRPTA
Test ID: All Test IDs Compile Date: Any date
User ID: All User IDs Compile Time: Any time
Module: TRIMAINA Debug: Both Yes and No

Cmd ----System----- 8 selected system(s)
_ CODE COVERAGE
_ ACCOUNTING
_ INVENTORY viewed
_ LEGAL
_ PAYROLL
_ RA432 I/O ERROR
_ PAYABLES
_ RECEIVABLES
*** End of list ***

Line Commands
The line commands shown in Figure 5-5 are defined as follows:

D Deletes the member(s) associated with a particular system.

Displays the “Test ID Selection Screen” (Figure 5-6 on page 5-9) with a list of the modules in the
S
selected system.

X Removes (excludes) the system from the displayed list.

Primary Commands
The primary commands shown in Figure 5-5 are defined as follows:

Selects the step that transfers the user to the Test ID Selection screen and displays a list of all test
S
IDs that are associated with all systems listed on the System Selection screen.

DEL Selects the step that deletes all modules within all systems listed on the System Selection screen.
5-8 Xpediter/Code Coverage Mainframe User/Reference Guide

Selects the step that removes (excludes) all systems that have been marked viewed from the list
EXC
displayed on the System Selection screen.

Output Fields
Repository
The Results Repository dataset containing the listed systems.
Type
The category (System Flow or Code Coverage) of record to be processed.
Test ID
The names of one or more valid test IDs.
User ID
The names of one or more valid TSO, IMS, or CICS users.
Module
The module(s) within the listed systems that were specified on the List/Delete Utility
screen (Figure 5-3 on page 5-4).
Program
The name of the program to be accessed. This field is restricted to 8 characters or less
in length.
Compile Date
The compile date of the programs within the listed systems that were specified on
the List/Delete Utility screen.
Compile Time
The compile time of the programs within the listed systems that were specified on
the List/Delete Utility screen.
Debug
Indicates whether data gathered while using debugging commands is included.
System
The system or systems within the listed Results Repository dataset. The output is
limited to ’YES’, ’NO’, or ’Both Yes and No’.

Input Fields
Cmd
Specifies one of three available line commands next to the system you want to affect.
See “Line Commands” on page 5-7 for details of each command that can be entered
in this field.

Test ID Selection Screen


The Test ID Selection screen shown in Figure 5-6 on page 5-9 allows you to display the
test IDs contained within systems selected on the System Selection screen (Figure 5-5 on
page 5-7). From this screen, you can choose to delete test IDs within systems, select more
detail for a test ID, or exclude test IDs from the list. This screen can be accessed by
entering one of the following:

• a system on the List/Delete Utility screen


• a system and generic test ID on the List/Delete Utility screen
Using Results Repository Utilities 5-9

• an S (Select) command (line or primary) in the command field of the System


Selection screen (Figure 5-5 on page 5-7).

Pressing Enter will display the Test ID Selection screen. Access to the Test ID Selection
screen is granted because you have chosen not to select a system for deletion while using
the System Selection screen.

Figure 5-6. Test ID Selection Screen

-------- CODE COVERAGE 17.02 - LIST/DELETE UTILITY - TEST ID SELECTION --------


COMMAND ===> SCROLL ===> PAGE

Line command: D (Delete) Primary command: S (Select all)
S (Select) DEL (Delete all)
X (Exclude from list) EXC (Exclude all viewed)

Repository: ’ACME.TEST.H01ACM11.REPOSIT’
Type: System Flow
User ID: All User IDs Compile Date: Any date
Module: TRIMAINA Compile Time: Any time
Program: TRIRPTA Debug: Both Yes and No

Cmd ----System----- ----Test-ID---- 5 selected Test ID(s)
_ ACCOUNTING TEST # 4
_ INVENTORY TEST # 2
_ LEGAL LAWYERS
_ PAYROLL ANOTHER TEST
_ PAYROLL YET ANOTHER
************* End of List *************

Line Commands
The line commands shown in Figure 5-6 are defined as follows:

Deletes the members associated with a particular test ID contained within the system. If only one test
D
ID exists within the system, the system is also deleted.

Displays either the Program Selection screen (Figure 5-7 on page 5-10) if the type is Code Coverage
S
or the Object Selection screen (Figure 5-8 on page 5-11) if the type is System Flow.

X Removes the test ID from the displayed list.

Primary Commands
The primary commands shown in Figure 5-6 are defined as follows:

Displays either the Program Selection screen (Figure 5-7 on page 5-10) if the type is Code Coverage
S
or the Object Selection screen (Figure 5-8 on page 5-11) if the type is System Flow.

DEL Selects the step that deletes all modules within all systems listed on the Test ID Selection screen.

Selects the step that removes (excludes) all test IDs that have been marked viewed from the list
EXC
displayed on the System Selection screen.

Input Fields
Cmd
Specifies one of three available line commands next to the system you want to affect.
See “Line Commands” for details of each command that can be entered in this field.
5-10 Xpediter/Code Coverage Mainframe User/Reference Guide

Program Selection Screen (Code Coverage Only)


The Program Selection screen shown in Figure 5-7 provides a list of programs in the
previously specified Results Repository dataset, system, and module for which Code
Coverage data exists. You can delete individual programs, if desired, or use the Delete
(DEL) primary command to delete all programs listed on this screen. This screen is
accessed by entering the Select (S) command (line or primary) on the command line of
the Test ID Selection screen (Figure 5-5 on page 5-8).

Figure 5-7. Program Selection Screen

------- CODE COVERAGE 17.02 - LIST/DELETE UTILITY - PROGRAM SELECTION ---------


COMMAND ===> SCROLL ===> PAGE

Line command: D (Delete) Primary command: DEL (Delete all)
X (Exclude from list)
5 selected object(s)
Repository: ’ACMJET0.CC.RESULTS’

Cmd ----System----- ----Test ID---- -User ID- -Module- -Program- Comp-Date-
--Debug-- Comp-Time
_ ACCOUNTING_____ TEST # 4_______ ACMEVE0_ XVTTACNV PGM#8762 12/15/2008
Y 08:45:32
_ INVENTORY______ TEST # 2_______ ACMEVE1_ XVTTAPRS PGM#101_ 10/10/2009
Y 12:03:15
_ LEGAL__________ LAWYERS TEST___ ACMBOB0_ XVTTAPRS PGM#8762 12/17/2009
Y 06:45:30
_ PAYROLL________ TEST # 5_______ ACMBOB1_ XVTTALPO PRIVATE_ 12/15/2008
Y 18:25:04
_ PAYROLL________ ANOTHER TEST___ ACMJET0_ XVTTALRV PGM#8531 11/24/2009
Y 14:36:54



********************************* End of list ********************************

Line Commands
The line commands shown in Figure 5-7 are defined as follows:

D Deletes the members associated with a particular module.

X Removes the module from the displayed list.

Primary Commands
The primary command shown in Figure 5-7 are defined as follows:

DEL Selects the step that deletes all modules within all systems listed on the Program Selection screen.

Output Fields
Repository
The Results Repository dataset containing the listed modules.
System
The selected system within the listed Results Repository dataset. The system name
displayed in this field is limited to 15 characters or less in length.
Test ID
The name of one or more valid test IDs. The test ID displayed in this field is limited
to 15 characters or less in length.
Using Results Repository Utilities 5-11

User ID
The name of one or more valid TSO, IMS, or CICS users.
Module
The module or modules within the selected system.
Program
The program(s) within the listed modules.
Debug
Indicates whether data gathered while using debugging commands is included. The
optional entries displayed in this field are Y (Yes) or N (No).
Comp Date
The compile date of the program.
Comp Time
The compile time of the program.

Input Field
Cmd
Specifies one of two available line commands next to the program you want to affect.
See “Line Commands” on page 5-10 for details of each command that can be entered
in this field.

Object Selection Screen (System Flow Only)


The Object Selection screen shown in Figure 5-8 provides a list of System Flow objects in
a previously specified Results Repository. From this list you can delete members from the
Repository or exclude members from the list. This screen is accessed by entering one of
the following:

• a system and test ID on the List/Delete Utility screen


• an S (Select) command (line or primary) in the command field of the Test ID
Selection screen (Figure 5-6 on page 5-9).

Figure 5-8. Object Selection Screen

------- CODE COVERAGE 17.02 - LIST/DELETE UTILITY - OBJECT SELECTION ---------


COMMAND ===> SCROLL ===> PAGE

Line command: D (Delete) Primary command: DEL (Delete all)
X (Exclude from list)
71 selected objects(s)
Repository: ACME.TEST.H01ACM11.REPOSIT'

Cmd ----System----- ----Test ID---- User-ID -Module- -Parent- Parent-type
CICS-SYSID -Depend- Dep.-type
_ SF XDYS ACMJET0 N/A XDYS TRAN
C093 CWDYNSUB PGM
_ SF XDYS ACMJET0 CWCDDYNA CWCDDYNA PGM
C093 CWCDDYNB PGM
_ SF XDYS ACMJET0 CWCDDYNA CWCDDYNA PGM
C093 CWCDDYNC PGM
_ SF XDYS ACMJET0 CWCDDYNA CWCDDYNA PGM
C093 CWCDDYND PGM
_ SF XDYS ACMJET0 CWCDDYNA CWCDDYNA PGM
C093 CWCDDYNE PGM
_ SF XDYS ACMJET0 CWCDDYNA CWCDDYNA PGM
C093 CWCDDYNF PGM
_ SF XDYS ACMJET0 CWDYNSUB CWCDDYNA PGM
C093 CWCDDYNB PGM
5-12 Xpediter/Code Coverage Mainframe User/Reference Guide

Line Commands
The line commands shown in Figure 5-8 on page 5-11 are defined as follows:

D Deletes the individual System Flow record.

X Removes the individual System Flow record from the displayed list.

Primary Commands
DEL
Selects the step that deletes all System Flow records listed on the Object Selection
screen (Figure 5-8 on page 5-11).

Output Fields
Repository
The Results Repository dataset containing the listed objects.
System
The selected system within the listed Results Repository dataset. The system name
displayed in this field is limited to 15 characters or less.
Test ID
The selected test ID within the listed Results Repository dataset. The test ID name
displayed in this field is limited to 15 characters or less.
User ID
The user ID of the transaction executing when the System Flow record was collected.
Module
The load module name containing the program that was executing when the System
Flow record was collected.
Parent
System Flow records contain two segments, a parent segment and a dependent
segment. The parent segment can be thought of as the calling program (or
transaction) and the dependent segment can be thought of as the called program.
This field will contain the calling program name for program records (PGM) or the
CICS transaction ID for transaction records (TRAN).
Parent-type
This field will contain TRAN for parent transaction segments or PGM for parent
program segments.
CICS-SYSID
The CICS SYSIDNT of the CICS region where the System Flow record was collected.
Depend
System Flow records contain two segments, a parent segment and a dependent
segment. The parent segment can be thought of as the calling program (or
transaction) and the dependent segment can be thought of as the called program.
This field will contain the called program name.
Dep.-type
This field is the dependent segment type and will only contain PGM.
Using Results Repository Utilities 5-13

Input Field
CMD
Specifies one of two available line commands D or X. See “Line Commands” on page
5-12 for the details of each command that can be entered in this field.

Confirm Delete Screen


The Confirm Delete screen shown in Figure 5-9 is displayed when one or more program
members have been selected for deletion on the System Selection, Test ID Selection, or
Program Selection screen.

Figure 5-9. Confirm Delete Screen

------------------ CODE COVERAGE 17.02 - LIST/DELETE UTILITY ------------------


COMMAND ===>

PLEASE CONFIRM DELETE SELECTION
===============================



Repository File: ’ACMJET0.CC2.REPOSIT’
Type: Code Coverage
System: ACCOUNTING
Test ID: TEST # 4
User ID: ACMJET0
Module: XVTTACNV
Program Name: PGM#8762
Compile Date: Dec 15, 2009
Compile Time: 08:45:32
Debug: YES
Last Update Date: On or Before 01/01/2014


Press ENTER to confirm or enter END command to cancel delete

Press Enter to delete the member associated with the listed program. Use the END
command to cancel the delete process.

Export Utility Screen


The Export Utility screen shown in Figure 5-10 on page 5-14 allows you to export one or
more Code Coverage Results Repository members to a sequential dataset. That dataset
can then be imported into another Repository. This screen is accessed by entering option
3 on the Code Coverage Utilities menu (Figure 5-1 on page 5-1).

You can also run a batch job to export Results Repository dataset members. Sample JCL is
provided in SLXVSAMP member JCLEXP.
5-14 Xpediter/Code Coverage Mainframe User/Reference Guide

Figure 5-10. Export Utility Screen

------------------- CODE COVERAGE 17.02 - EXPORT UTILITY ----------------------


OPTION ===>

Repository File ===>
Type ===> C (C = Code Coverage, F = System Flow)
System ===> (Optional)
Test ID ===> (Optional)
User ID ===> (Optional)
Module ===> (Optional)
Program ===> (Optional)
Compile Date ===> ____ __ __ (Optional YYYY MM DD)
Compile Time ===> __ __ __ (Optional HH MM SS)
Debug (Y/N) ===> (Optional)

Export File ===>
New System Name ===> (Change all System names)
New Test ID ===> (Change all Test ID names)
New User ID ===> (Change all User ID names)


Press ENTER to process or enter END command to terminate

Press Enter to export the member specified. Enter the END command to cancel the export
process.

Input Fields
The input fields are described below. All fields except the Repository File, Type, Export
File, New System Name, New Test ID, and New User ID fields are subject to wildcard rules.
The excepted fields cannot accept wildcard characters.

Repository File
Specifies the repository dataset from which to export. The dataset previously
specified in the first position on the Repository screen (see Figure 2-3 on page 2-3) is
displayed as the default, but can be overtyped with any desired dataset name. This
field cannot accept wildcard characters.
Type
Specifies the type of record to be exported. Select C for Code Coverage records or F
for System Flow records. This field cannot accept wildcard characters.
System
Specifies the system to be accessed. This field is restricted to 15 characters or less in
length.
Test ID
Specifies a valid test ID. This field is restricted to 15 characters or less in length.
User ID
Specifies the name of a valid TSO, IMS, or CICS user. The field is limited to 8
characters or less in length.
Module
Specifies the module to be accessed. The Module field is restricted to 8 characters or
less in length.
Program
The name of the program to be accessed. This field is restricted to 8 characters or less
in length.
Using Results Repository Utilities 5-15

Compile Date
Specifies a compile date to narrow the accessing of the specified program to those
with a matching compile date.
Compile Time
Specifies a compile time to further narrow the accessing of the specified program to
those with a matching compile time.
Debug
Optionally specifies Y (Yes) to include repository members that contain data
captured while using debugging commands. The default is N (No). This field does not
apply to System Flow.
Export file
If exporting to an existing sequential dataset, specifies the dataset name. This field
cannot accept wildcard characters.
New System name
Optionally specifies a system name to replace the various system names of all the
members selected for export. This field cannot accept wildcard characters.
New Test ID
Optionally specifies the new test ID in the named system of the records to be
exported. This field cannot accept wildcard characters.
New User ID
Optionally specifies the new User ID contained in the named system to be exported.
This field cannot accept wildcard characters.

Import Utility Screen


The Import Utility screen shown in Figure 5-11 allows you to import into your Code
Coverage Results Repository a previously exported repository member. This screen is
accessed by entering option 4 on the Code Coverage Utilities menu (Figure 5-1 on page
5-1).

You can also run a batch job to import Results Repository dataset members. Sample JCL is
provided in SLXVSAMP member JCLIMP.

Figure 5-11. Import Utility Screen

------------------- CODE COVERAGE 17.02 - IMPORT UTILITY -------------------


OPTION ===>

Repository file ===> 'ACMJET0.SAMPLE.REPOSIT'
Import file ===>

Press Enter to import the member specified. Enter the END command to cancel the
import process.

Input Fields
Repository file
Specify the repository dataset to import into. The dataset previously specified in the
first position on the Repository screen (refer to Figure 2-3 on page 2-3) is displayed as
5-16 Xpediter/Code Coverage Mainframe User/Reference Guide

the default, but can be overtyped with any desired dataset name. Specify the target
repository for import.
Import file
Specify the sequential dataset to import into the designated repository.

Merge Utility Screen


The Merge Utility screen shown in Figure 5-12 allows you to copy one or more members
of an Xpediter/Code Coverage Results Repository dataset into another repository. It also
enables you to delete members that have been merged if they are no longer needed. This
screen is accessed by entering option 5 on the Code Coverage Utilities menu (Figure 5-1
on page 5-1).

You can also run a batch job to merge members from one Results Repository dataset into
another. Sample JCL is provided in SLXVSAMP member JCLMERGE.

Note: Unless otherwise specified, all fields on this screen accept wildcards.

Figure 5-12. Merge Utility Screen

-------------------- CODE COVERAGE 17.02 - MERGE UTILITY -------------------


OPTION ===>

From:
Repository file ===>
Type ===> C (C = Code Coverage, F = System Flow)
System ===> (Optional)
Test ID ===> (Optional)
User ID ===> (Optional)
Module ===> (Optional)
Program ===> (Optional)
Compile Date ===> ____ __ __ (Optional YYYY MM DD)
Compile Time ===> __ __ __ (Optional HH MM SS)
Debug (Y/N) ===> (Optional)

To:
Repository file ===>
New System name ===> (Change all system names)
New Test ID ===> (Change all Test ID names)
New User ID ===> (Change all User ID names)

Delete From records after merge ===> N (Y/N)

Press ENTER to process or enter END command to terminate

Press Enter to import the member(s) specified. Use the END command to cancel the
merge process.

Input Fields

From Area
These fields allow you to specify the repository member(s) to be merged.

Repository file
Specifies the repository dataset from which to merge members. Any previous value
entered is displayed as the default, but can be overtyped with any desired dataset
name. This field cannot accept wildcard characters.
Type
Specifies the type of record to be merged. Select C for Code Coverage records or F for
System Flow records. This field cannot accept wildcard characters.
Using Results Repository Utilities 5-17

System
Specifies the system to be accessed. This field is restricted to 15 characters or less and
cannot be left blank. If left blank, the message ENTRY REQUIRED is displayed.
Test ID
Specifies a valid test ID. This field is required and restricted to 15 characters or less in
length.
User ID
Specifies the name of a valid TSO, IMS, or CICS user. The field is limited to 8
characters or less in length. For unattended batch processing, this field will contain
XPTSO.
Module
Specifies the module to be accessed. The Module field is restricted to 8 characters or
less in length.
Program
The name of the program to be accessed. This field is restricted to 8 characters or less
in length.
Compile Date
Specifies a compile date to narrow the accessing of the specified program to those
with a matching compile date.
Compile Time
Specifies a compile time to further narrow the accessing of the specified program to
those with a matching compile time.
Debug
Optionally specifies whether or not to include repository members that contain data
captured while using debugging commands. Select Y (Yes) to include repository
members. The default is N (No). This field does not apply to System Flow.

To Area
These fields allow you to specify the repository dataset into which the selected
member(s) will be merged and offers you the option to change various characteristics of
the newly merged members.

Repository file
Specifies the repository into which the selected members are to be merged. The
dataset previously specified in the first position on the Repository screen (refer to
Figure 2-3 on page 2-3) is displayed as the default, but can be overtyped with any
desired dataset name. No wildcards can be used in this field.
New System name
Optionally specifies a system name to replace the various system names of all the
members selected for merging. System names are limited to 15 characters or less in
length. No wildcards can be used in this field.
New Test ID
Optionally specifies the new test ID in the named system of the records to be merged.
No wildcards can be used in this field.
New User ID
Optionally specifies the new User ID contained in the named system to be merged.
No wildcards can be used in this field.
5-18 Xpediter/Code Coverage Mainframe User/Reference Guide

Other Field
This field allows you to automatically delete merged members.

Delete From records after merge


Specifies whether or not the original repository members should be deleted after they
have been merged. Select Y to delete the original repository members after they have
been merged. The default is N (No).

Merge Utility Delete Confirmation Screen


The Merge Utility delete confirmation screen shown in Figure 5-13 appears when users
specify Y (Yes) in the Delete From records after merge field on the Merge Utility screen
(Figure 5-12 on page 5-16).

Figure 5-13. Merge Utility Screen

-------------------- CODE COVERAGE 17.02 - MERGE UTILITY -------------------


COMMAND ===>



PLEASE CONFIRM DELETE SELECTION
===============================


Repository File: ‘ACMJET0.C22.REPOSITA’
Type: Code Coverage
System: All systems
Test ID: WHOZ YER TEST
User ID: All User IDs
Module: All modules
Program Name: All programs
Compile Date: Any date
Compile Time: Any time
Debug: Both Yes and No


Press ENTER to process or enter END command to terminate

Press Enter to allow the action to be taken. Use the END command to cancel the delete
process.

Flag Utility Screen


The Flag Utility screen displayed in Figure 5-14 on page 5-19 allows you to compare two
versions of a source program independent of the compiler used. You can also compare
baseline and current source listing members for the creation of the flagged source listing
members. This screen is accessed by entering option 6 on the Code Coverage Utilities
menu (Figure 5-1 on page 5-1).

When the Flag Utility is used for comparison purposes, it creates a new source listing
member whose modified lines are tagged with an identifier. These members can be in
separate source listings or in the same source listing file. An error message will be issued
if a member is missing for any reason.

You can use the Flag Utility screen to provide the necessary input to create the control
cards for the Flag Utility by accessing multiple Flag Utility screens and completing the
required fields. You will be able to select multiple baseline members by completing a
separate Flag Utility screen for each pair of baseline and current programs.
Using Results Repository Utilities 5-19

Figure 5-14. Flag Utility Screen

-------------------- CODE COVERAGE 17.02 - FLAG UTILITY --------------


COMMAND ===>


Specify parameters:

Base DDIO dataset name ===>
Base listing number ===> (Required if program name blank)
Current DDIO dataset name ===>
Current listing number ===> (Required if program name blank)
Program name ===> (* = all)
Flagged DDIO dataset name ===>
User Identifier ===>
User Identifier start col ===> 73 (73 - 80)
Continue on error ===> YES (Yes/No)
Execution ===> RUN (Run/Simulate)
Execution mode ===> BATCH (Foreground/Batch)
Edit JCL ===> NO (Yes/No)




Press ENTER to process or enter END command to terminate

Input Fields
Base DDIO dataset name
Specifies the ddname of the source listing file that contains the baseline member(s).
If the current source listing file contains both the baseline and current members, this
DD statement is not required.
Base listing number
Specifies the listing number of the baseline member(s). This field can be left blank if
the program name is supplied. If the program name is not supplied then this field is
required.
Current DDIO dataset name
Specifies the ddname of the source listing file that contains the current member(s).
Current listing number
Specifies the listing number of the current source listing member. This member is
compared to the member specified in the Base listing number field. The flagged
results are written to the dataset specified in the Flagged DDIO dataset name field.
This field can be left blank if the program name is supplied. If the program name is
not supplied then this field is required.
Program name
Specifies the program name of the source listing member. Wildcard characters can be
entered. This field is limited to program names whose length is 8 characters or less. If
a program name is specified instead of base listing number and current listing
number, the members most recently written to both source listing files with the
specified program name are compared.
Flagged DDIO dataset name
Specifies the ddname of the source listing file for the tagged member. If the current
source listing file is to be used for the tagged member, you should not specify this
dataset name.
User Identifier
Specifies the user-defined identifier and its location. The first parameter is the ID
(User ID name) and the second parameter is the starting column position (limited
within columns 73-80). Both values must be enclosed in parentheses and separated
5-20 Xpediter/Code Coverage Mainframe User/Reference Guide

by a comma. The length of this field is limited to 8 characters. Example:


ID=(TOM,73).
User Identifier start col
Specifies the beginning and ending columns used for the source comparison. Both
values must be separated by a comma. The length of this field is limited to 5
characters.
Continue on error
Specifies whether the FLAG command is to continue if recoverable errors are detected
during execution. Select Y for YES or N for NO.
Execution
Specifies the execution of the FLAG command. Select R for RUN or S for SIMULATE.
When you enter RUN, the system creates a flagged source listing member and
produces a detailed report. Choosing SIMULATE will produce a detail report without
creating a new source listing member.
Execution mode
This field displays the words Foreground or Batch depending on your selection.
Edit JCL
Specifies whether you desire to edit the prepared JCL before submitting the job for
execution. Select Y for YES or N for NO.

Convert JCL Utility Screen


The Convert JCL Utility screen in Figure 5-15 on page 5-21 allows you to process an input
partitioned dataset (PDS) and then create an output PDS containing the modified and/or
expanded JCL. This screen is accessed by entering option 7 on the Code Coverage
Utilities menu (Figure 5-1 on page 5-1).

This utility takes normal application JCL and converts it to run Xpediter/TSO in
unattended batch mode for capturing Code Coverage statistics. Optionally, Test Data
Optimization (TDO) statistics can be collected. The utility then converts selected
members or, conversely, an entire input library to the new format, storing the converted
JCL in the output PDS or PDSE dataset.

Type the required data in each field as displayed and press Enter to proceed to the next
screen. When all required fields are entered, a batch job is submitted to execute the
Convert JCL Utility. The batch Convert JCL Utility runs under TSO in batch and will
require some adjustments during installation. Sample JCL is provided in SLXVSAMP
member XVJCLCNV.
Using Results Repository Utilities 5-21

Figure 5-15. Convert JCL Utility Screen

---------------- CODE COVERAGE 17.02 - CONVERT JCL UTILITY ----------------


Command ===>

"From" Dataset ===> 'ACMJET0.SAMPLE.REPOSIT'
Member ===> TEST (Blank for member list, "*" for all members)

"To" Dataset ===> 'ACMEVE1.SAMPLE.REPOSIT'

Remove all comments from converted JCL ===> N (Y=yes, N=no)
Replace like-named members ===> N (Y=yes, N=no)

Edit JOB statement override parameters ===> Y (Y=yes, N=no)
Enter/Edit Xpediter/TSO datasets ===> Y (Y=yes, N=no)
Edit JCL before submitting job ===> Y (Y=yes, N=no)

Repository Dataset ===> 'ACMJET0.SME25.REPOSIT'
System Name ===> INVENTORY
Test ID ===> TEST # 4
TDO Dataset ===>

Held MSGCLASS ===> X

Press ENTER to process or enter END command to terminate

Input Fields
"From" Dataset
Specifies the input JCL library. This library may be either a PDS or PDSE dataset. You
may enter the dataset name as unqualified or fully qualified with quotes. This field is
limited to 46 characters or less.
Member
Specifies the name of a specific member, an asterisk (*) for all members, or leave the
Member field blank. If blank, a member selection list is displayed when you press
Enter. This field is limited to 7 characters or less.
"To" Dataset
Specifies the output JCL library (either a PDS or a PDSE) that will contain new JCL for
Code Coverage. You must enter an already existing PDS/PDSE library. You may enter
the dataset name as unqualified or fully qualified with quotes. This field is limited to
46 characters or less.
Remove all comments from converted JCL
Specifies whether all comments must be removed from the converted JCL. Select Y
for Yes or N for No.
Replace like-named members
Specifies whether any duplicate members found in the output library will be
overwritten and replaced. Select Y for Yes or N for No.
Edit JOB statement override parameters
Specifies whether a new screen must be displayed that allows you to replace selected
portions of the job card in the application JCL. Select Y for Yes or N for No.
Enter/Edit Xpediter/TSO datasets
Specifies whether a new screen must be displayed to specify all datasets associated
with Xpediter (including the source listing files). Select Y for Yes or N for No.
Edit JCL before submitting job
Specifies whether you must edit JCL (in ISPF edit mode) that runs the batch Convert
JCL Utility prior to submitting your job. Select Y for Yes or N for No.
5-22 Xpediter/Code Coverage Mainframe User/Reference Guide

Repository Dataset
Specifies the name of the Code Coverage dataset designated for saving results. This
field is limited to 46 characters or less.
System Name
Specifies an arbitrary name used to differentiate results by application. This field is
limited to 15 characters or less.
Test ID
Specifies an additional name to subdivide results under system name. This field is
limited to 15 characters or less.
TDO Dataset
Optionally specifies the name of an existing physical-sequential, fixed-blocked, 80-
byte record dataset. If specified, TDO information will be collected along with Code
Coverage statistics. If not specified, only Code Coverage statistics will be collected.
(See Chapter 9, “Test Data Optimization” for more information.)
Held MSGCLASS
A message class that is defined at installation as a held class. It is used to hold the
output of a TYPRUN=SCAN job submission wherein the output can then be extracted
as part of the conversion process.

Convert JCL Utility Job Card Override Parameter Screen


The Convert JCL Utility Job Card Override parameter screen shown in Figure 5-16 creates
a job card and allows you to change the job class of the JCL you are converting. You may
change a single job class, or make a wholesale change of all job classes, whatever
conversion your environment may require. Multiple JOB CLASS parameters may be
entered in the Specify JOB CLASS parameter replacements below field(s). Potentially, 36
different parameters can be entered on this screen.

The Convert JCL Utility Job Card Override parameter screen is accessed from the Convert
JCL Utility screen (refer to Figure 5-15 on page 5-21). This screen is necessary because JCL
conversion is based on the premise that original JCL output will be submitted with
modified JOB statement parameters to achieve a pre-defined set of results.

Figure 5-16. Convert JCL Utility Job Card Override Parameter Screen

---------------- CODE COVERAGE 17.02 - CONVERT JCL UTILITY -------------------


Command ===>


Job name ===> ________
Job Account Nbr. ===> __________________________________________________
Job Account info ===> __________________________________________________
Programmer Name ===> __________________________________________________
Priority ===> _

Global Job Class ===> _ (Job class to be used on all Jobs)
OR
Specify JOB CLASS parameter replacements below:

CLASS A -> _ CLASS B -> _ CLASS C -> _ CLASS D -> _ CLASS E -> _ CLASS F -> _
CLASS G -> _ CLASS H -> _ CLASS I -> _ CLASS J -> _ CLASS K -> _ CLASS L -> _
CLASS M -> _ CLASS N -> _ CLASS O -> _ CLASS P -> _ CLASS Q -> _ CLASS R -> _
CLASS S -> _ CLASS T -> _ CLASS U -> _ CLASS V -> _ CLASS W -> _ CLASS X -> _
CLASS Y -> _ CLASS Z -> _ CLASS 0 -> _ CLASS 1 -> _ CLASS 2 -> _ CLASS 3 -> _
CLASS 4 -> _ CLASS 5 -> _ CLASS 6 -> _ CLASS 7 -> _ CLASS 8 -> _ CLASS 9 -> _

Press ENTER to process or enter END command to terminate
Using Results Repository Utilities 5-23

Input Fields
Job name
Specifies a job name that will replace all other job names. This field is limited to 8
characters or less.
Job Account Nbr.
Specifies a job account number that you will use to replace the first field of the job
account. This field is limited to 46 characters or less.
Job Account info
Specifies a job account name that you will use to replace the second field of the job
account. This field is limited to 46 characters or less.
Programmer Name
Specifies a programmer name that you will use to replace the programmer name field
in the job card. This field is limited to 46 characters or less.
Priority
Specifies the JES priority for your job. Enter a number from 1 and 9. This field is
limited to one character.
Global Job Class
Specifies the job class that you want used for all jobs. When you enter a value in this
field, all individual replacement job classes are ignored.
Specify JOB CLASS parameter replacements below:
Specifies job classes on an individual basis with a new value (not previously
specified). This new value will be ignored if a global job class is used.

Convert JCL Utility Datasets Screen


The Xpediter/TSO Convert JCL Utility Datasets screen shown in Figure 5-17 is accessed
from the Convert JCL Utility Job Card Override Parameter screen (refer to Figure 5-16 on
page 5-22).

Figure 5-17. Xpediter/TSO Convert JCL Utility Datasets Screen

----------- CODE COVERAGE 17.02 - CONVERT JCL UTILITY - DATASETS -------------


COMMAND ===>


Xpediter/TSO Datasets:
Test Script ===> ________________________________________________________

DDIO Datasets:
(1) ===> 'ACMJET0.SAMPLE.DDIO'_________________________
(2) ===> ______________________________________________
(3) ===> ______________________________________________
(4) ===> ______________________________________________
(5) ===> ______________________________________________
(6) ===> ______________________________________________
(7) ===> ______________________________________________
(8) ===> ______________________________________________
(9) ===> ______________________________________________

Include program DSN ===> ______________________________________________
Exclude program DSN ===> ______________________________________________

Press ENTER to process or enter END command to terminate
5-24 Xpediter/Code Coverage Mainframe User/Reference Guide

Input Fields
Test Script
Specifies the name of the script dataset. This can also be a program dataset with
member name in parentheses. This field is limited to 56 characters. Specifying this
field causes a DD statement for JCLXINCL to be included in the generated JCL.
DDIO Datasets
Specifies the name of the source datasets. Each one of these fields limited to 46
characters. Specifying this field causes a DD statement for JCLDDIO to be included in
the generated JCL.
Include program DSN
Specifies the name of the dataset that contains a list of programs to be included in
the JCL convert. This can also be a program dataset with member name in
parentheses. This field is limited to 56 characters. Trailing asterisks (*) may only be
used as wildcards for included programs at the end of this field, not in the middle.
An inclusion program entry takes precedence over exclusion program entries.
Specifying this field causes a DD statement for JCLINCL to be included in the
generated JCL.
Exclude program DSN
Specifies the name of the dataset that contains the list of programs to be excluded
from JCL convert. This can also be a program dataset with member name in
parentheses. This field is limited to 56 characters. Trailing asterisks (*) may only be
used as wildcards for excluded programs at the end of this field, not in the middle.
An inclusion program entry takes precedence over exclusion program entries.
Specifying this field causes a DD statement for JCLXEXCL to be included in the
generated JCL.

Include and Exclude Example


Assuming the exclude dataset contains the entries IEF*, IBM*, IEP*, and IKJ*, and the
include dataset contains the entries IEFOURS, IKJOUR, and IKJOTHER all selected jobs
executing programs IEFOURS, IKJOUR, and IKJOTHER will be converted to be code
covered. Any selected jobs executing other programs that begin with IEF, IBM, IEP, and
IKJ will not be converted for Code Coverage.

CICS Program Inventory Maintenance Screen


The CICS Program Inventory Maintenance screen allows users to perform actions on the
Program Inventory file. Access to the CICS Program Inventory Maintenance screen occurs
when users choose option C from the Utilities menu (see the “Utilities Menu” on page
5-1).

Use of the CICS Program Inventory Maintenance function requires that Program
Inventory datasets, application load libraries, and CICS source listing datasets were
specified in the Code Coverage “Defaults” (Code Coverage Option 0) CICS CODE
COVERAGE section.
Using Results Repository Utilities 5-25

Figure 5-18. CICS Program Inventory Maintenance Screen

-------- CODE COVERAGE 17.02 - CICS PROGRAM INVENTORY MAINTENA Row 1 to 3 of 3


Command ===> Scroll ===> PAGE

Line Cmds: CO (collect), C (copy), D (delete), EX (export), U (undo)
Primary Cmds: POPulate, COPY , EXPort, IMPort, END (process), UPDate,
CANcel, Refresh , Sort

Inventory file ===> 'ACMJET0.PGMINV.TEST'
Edit JCL ===> NO (Batch mode: Yes/No) More ->

CMD Module CSECT Compile Date/Time Lang/Opt Verbs Collect Status
-- -------- -------- ------------------- ----- ------ --- ----------
__ ASMPGM ADDOPER 2013/08/18 14:01:00 ASM/N 9 ON
__ ASMPGM ASMPGM 2013/08/18 14:01:00 ASM/N 46 ON
__ ASMPGM SUBOPER 2013/08/18 14:01:00 ASM/N 9 ON
******************************* Bottom of data ********************************

The Program Inventory Maintenance screen also scrolls right, allowing users to view the
source listing file and member associated with each chosen CSECT.

Figure 5-19. CICS Program Inventory Maintenance Screen, scrolled right

-------- CODE COVERAGE 17.02 - CICS PROGRAM INVENTORY MAINTENA Row 1 to 3 of 3


Command ===> Scroll ===> PAGE

Line Cmds: CO (collect), C (copy), D (delete), EX (export), U (undo)
Primary Cmds: POPulate, COPY , EXPort, IMPort, END (process), UPDate,
CANcel, Refresh , Sort

Inventory file ===> 'ACMJET0.PGMINV.TEST'
Edit JCL ===> NO (Batch mode: Yes/No) <- More

CMD Module CSECT Source Listing File Member
-- -------- -------- -------------------------------------------- -----------
__ ASMPGM ADDOPER XD.TEST.R77.CX800.SHRDIR1 ASMPGM
__ ASMPGM ASMPGM XD.TEST.R77.CX800.SHRDIR1 ASMPGM
__ ASMPGM SUBOPER XD.TEST.R77.CX800.SHRDIR1 ASMPGM
******************************* Bottom of data ********************************

Note: Excluded from the actions allowed from a batch job is the GENERATE command.
Equivalent functionality can be created using wildcard entries for COLLECT
statements.

Line Commands
The line commands displayed in Figure 5-18 are defined as follows:

CO Collect. Toggles the collection status on and off. The status message displayed is “COLL PEND”.

Copy. Marks records selected for copy to another program inventory file from the current one. The
C
status message displayed is “COPY PEND”.

Delete. Removes an entry From the inventory file and from the displayed table. The status message
D
displayed is “DEL PEND”.

Export. Marks the records selected for export to the export file from the current inventory file. The
EX
status message displayed is “EXPRT PEND”.

U Undo. Removes a pending action.


5-26 Xpediter/Code Coverage Mainframe User/Reference Guide

Primary Commands
POPulate
Adds members to the current CICS Program Inventory file. When issued, this
command displays the “Program Inventory Populate Popup Window” described on
page 5-31.
COPY
Copies records from one Program Inventory file to another. When issued, this
command displays the “Program Inventory File Copy Popup Window” described on
page 5-28.
EXPort
Extracts records from a Program Inventory file into a sequential dataset. When
issued, this command displays the “Program Inventory File Export Popup Window”
described on page 5-29.
IMPort
Moves records from a previously exported file to the current Program Inventory file.
When issued, this command displays the “Program Inventory File Import Popup
Window” described on page 5-30.
LEFT
Shifts the detail lines of the CICS Program Inventory Maintenance screen to the left
because the data on the screen exceeds 80 columns. The module and CSECT columns
are stationary and the data to the right of these columns shifts left.
LOCATE
The LOCATE command is used to position CICS Program Inventory Maintenance
display to the requested module. The format is LOCATE module name, where the
module name may be a complete name or a partial name. The LOCATE command may
be abbreviated as L. If the module name is omitted, the display is positioned at the
top of data. If the module name is an exact match of a module in the display, then
that module is positioned at the top of the display. If the module name contains a
partial module name, such as “LOCATE CW” (or if the module name cannot be
located in the display) then the display is positioned at the module preceding the
first module beginning with CW.
END
Processes the pending lines and indicates if updates were successfully processed, then
returns to the previous screen. All pending line commands are processed before
exiting the current screen.
UPDate
Updates the CICS Program Inventory maintenance file for pending deletes and
collection status changes. The UPDATE command may be abbreviated as UPD. If the
“Edit JCL” parameter is set to No, then the JCL is submitted automatically.
CANcel
Discards all pending lines and exits without processing.
Refresh
Reloads the inventory file directory displayed on the screen. The Refresh command
can be abbreviated R. Use this command any time the contents of the CICS Program
Inventory file changes (for example, after submitting a job to delete records or
change the collection status).
Using Results Repository Utilities 5-27

RIGHT
Shifts the detail lines of the CICS Program Inventory Maintenance screen to the right
because the data on the screen exceeds 80 columns. The module and CSECT columns
are stationary and the data to the right of these columns shifts right.
Sort
Allows sorting of the CICS Program Inventory Maintenance display using the
following syntax:

Sort <column name> (A/D)

where (A/D) represents either Ascending or Descending sorting order. The default is
Ascending. The following parameters can be used for the <column name>:

MODULE load module name (default)

CSECT CSECT name

COMPILE compile date and time

LANG programming language

VERBS number of verbs in program

COLLECT collection status

SOURCE source listing file

MEMBER source member name

If no parameter is given with the sort command, sorting defaults to the load module
name in ascending order. The Sort command can be abbreviated S.

Output Fields
Module
The CICS load module to be code covered.
CSECT
The control section (CSECT) within the load module to be covered.
Compile DATE/TIME
The date and time the CSECT was processed using Compuware’s listing processor.
Lang/Opt
The recorded value of the language compiler and whether or not it is optimized by
the compiler. Possible values are:

ASM/N the CSECT is Assembler and not optimized

CBL/N the CSECT is COBOL and not optimized

PLI/N the CSECT is PL/I and is not optimized

UND/N the CSECT’s language is undefined

CBL/Y the CSECT is COBOL and is optimized

PLI/Y the CSECT is PL/I and is optimized


5-28 Xpediter/Code Coverage Mainframe User/Reference Guide

Verbs
The number of verbs in the program.
Collect
Whether or not Code Coverage collection will be allowed.
Status
Whether or not a line command is pending execution.
Source Listing File
The Compuware source listing file containing the compiled listing for the CSECT.
Member
The member name in the Compuware source listing file for this CSECT.

Input Fields
Cmd
Specifies one of the available line commands next to the module you want to affect.
See “Line Commands” on page 5-25 for details of each command that can be entered
in this field.

Program Inventory File Copy Popup Window


The File Copy popup window shown in Figure 5-20 allows users to copy selected program
inventory members to another program inventory file. This window appears when users
execute the COPY primary command from the Program Inventory Maintenance screen
(see Figure 5-18 on page 5-25).

Figure 5-20. Program Inventory File Copy Popup Window

CICS PROGRAM INVENTORY FILE COPY



Copy to file ===>
Replace records ===>
Number of pending copy records ===>

Use the following fields to globally copy records using wildcards:
Module Name ===>
CSECT ===>
Compile Date ===>
Compile Time ===>

Press ENTER to Process or enter END command to Terminate

Input Fields
Copy to file
The name of the new Program Inventory file to which the selected records should be
copied. Defaults to the Inventory Copy file from the CICS Program Inventory
Datasets screen. Any valid CICS Program Inventory file may be entered here.
Changing this field on this screen does not change the “Inventory Copy” entry on
the CICS Program inventory Datasets screen.
Replace records
Whether or not duplicate members are to be replaced on the “copy to file.” A
member is considered to be a duplicate if the module, CSECT, and compile date and
time are equal. Valid values are YES, NO, and ALL:

YES Only existing members that match date and time will be overwritten.
Using Results Repository Utilities 5-29

NO Duplicate entries will not be overwritten. This is the default.

ALL Any matching member will be overwritten.

Number of pending copy records


The number of detail lines the user has entered a copy line command on prior to
entering the COPY primary command. Records with status “COPY PEND” plus any
other members indicated in the global copy section will be copied to the “copy to
file.”
Module Name
The desired module within the source file you wish to copy to the new Program
Inventory file. Trailing asterisks (*) may only be used as wildcards at the end of this
field, not in the middle.
CSECT
The CSECT within the desired source module that you are copying to the new
Program Inventory file. Trailing asterisks (*) may only be used as wildcards at the end
of this field, not in the middle.
Compile Date
The date on which the records to be copied were compiled. The date format is
CCYYMMDD (century, year, month, and day). If no compile date is entered, this field
defaults to an asterisk (*).
Compile Time
The time at which the records to be copied were compiled. The time format is
HHMMSS (hour, minute, and second). If no compile time is entered, this field defaults
to an asterisk (*).

Program Inventory File Export Popup Window


The File Export popup window shown in Figure 5-21 allows users to export selected
records to the export file from the current inventory file. This window appears when
users execute the EXPort primary command from the Program Inventory Maintenance
screen (see Figure 5-18 on page 5-25).

Figure 5-21. Program Inventory File Export Popup Window

CICS PROGRAM INVENTORY FILE EXPORT



Export to file ===>
Number of pending copy records ===>

Use the following fields to globally export records using wildcards:
Module Name ===>
CSECT ===>
Compile Date ===>
Compile Time ===>

Press ENTER to process or enter END command to terminate

Input Fields
Export to file
The name of the file to which the marked records should be exported. Any valid,
sequential export file may be entered here. Sample JCL is supplied in SMXDSAMP
member JCLCDEFE for creating an export dataset. Changing this field on this screen
does not change the “Inventory EXP” entry on the Program Inventory Datasets
5-30 Xpediter/Code Coverage Mainframe User/Reference Guide

screen. This field defaults to the “Inventory EXP” file from the Program Inventory
Datasets file.
Number of pending export records
The number of detail lines the user has entered an EXport line command on prior to
entering the EXPORT primary command. Records with status “EXPRT PEND” plus
any other members indicated in the global export section will be copied to the
“export to file.”
Module Name
The desired module within the source file you wish to export to the new Program
Inventory file. Trailing asterisks (*) may only be used as wildcards at the end of this
field, not in the middle.
CSECT
The CSECT within the desired source module that you are exporting to the new
Program Inventory file. Trailing asterisks (*) may only be used as wildcards at the end
of this field, not in the middle.
Compile Date
The date on which the records to be exported were compiled. The date format is
CCYYMMDD (century, year, month, and day). If no compile date is entered, this field
defaults to an asterisk (*).
Compile Time
The time at which the records to be exported were compiled. The time format is
HHMMSS (hour, minute, and second). If no compile date is entered, this field defaults
to an asterisk (*).

Program Inventory File Import Popup Window


The File Import popup window shown in Figure 5-22 allows users to move records from a
previously exported file to the current inventory file. This window appears when users
execute the IMPort primary command from the Program Inventory Maintenance screen
(see Figure 5-18).

Figure 5-22. Program Inventory File Import Popup Window

CICS PROGRAM INVENTORY FILE IMPORT



Import from file ===> ______________________________________________
Replace records ===> NO (Yes or No)

Use the following lines to globally import records using wildcards:
Module Name ===> *
CSECT ===> *
Compile Date ===> ____ __ __ (YYYY or YY MM DD)
Compile Time ===> __ __ __ (HH MM SS)

Press ENTER to Process or Enter END Command to Terminate

Input Fields
Import from file
The name of the previously exported file name from which the selected records
should be imported. Any valid, sequential export file may be entered here. Changing
this field on this screen does not change the “Inventory IMP” entry on the Program
Inventory Datasets screen. This field defaults to the “Inventory IMP” file from the
Program Inventory Datasets file.
Using Results Repository Utilities 5-31

Replace records
Whether or not duplicate members are to be replaced on the target import file. A
member is considered to be a duplicate if the module, CSECT, and compile date and
time are equal. Valid values are YES and NO. The default is NO.
Module Name
The desired module within the source file you are importing to the new Program
Inventory file. Trailing asterisks (*) may only be used as wildcards at the end of this
field, not in the middle.
CSECT
The CSECT within the desired source module that you are importing to the new
Program Inventory file. Trailing asterisks (*) may only be used as wildcards at the end
of this field, not in the middle.
Compile Date
The date on which the records to be imported were compiled. The date format is
CCYYMMDD (century, year, month, and day). If no compile date is entered, this field
defaults to an asterisk (*).
Compile Time
The time at which the records to be imported were compiled. The time format is
HHMMSS (hour, minute, and second). If no compile date is entered, this field defaults
to an asterisk (*).

Program Inventory Populate Popup Window


The Populate popup window shown in Figure 5-23 allows users to add members to the
current program inventory file. This window appears when users execute the POPulate
primary command from the Program Inventory Maintenance screen (see Figure 5-18).

Figure 5-23. Program Inventory Populate Popup Window

CICS PROGRAM INVENTORY POPULATE


Collect Replace Member
Module CSECT ON/OFF YES/NO/ALL (optional)
-------- -------- --- --- --------
________ ________ ON YES ________
________ ________ ON YES ________
________ ________ ON YES ________
________ ________ ON YES ________

Provide detailed messages ==> NO (Yes/No)

Press ENTER to Process or Enter END Command to Terminate

Input Fields
Module
The name of the load module that contains the CSECT that will be code covered. If
the Member field is used, then this field cannot contain wildcards.
CSECT
The name of the CSECT that will be code covered. If the Member field is used, then
this field cannot contain wildcards.
Collect ON/OFF
The collection status for one or more programs once you have designated which
programs you want Code Coverage to monitor. Valid values are ON and OFF. The
5-32 Xpediter/Code Coverage Mainframe User/Reference Guide

default is ON. If collection is set to OFF, Code Coverage data will not be collected for
the specified CSECT.
Replace YES/NO/ALL
Whether or not existing duplicate program entries in the target file should be
overwritten by values in the CICS Program Inventory file. A member is considered to
be a duplicate if the module, CSECT, and compile date and time are equal. Valid
values are YES, NO, and ALL. The default is NO.
Member
The member name of the source listing on the Compuware source listing file. This is
usually the same name as the CSECT name. This field cannot be wildcarded. If this
field is used, the module name and CSECT name must be provided without
wildcards.
Provide detailed messages
Specifies the detail of the messages created by the Populate utility. Valid values are
YES and NO. The default is NO. If this option is set to NO, a message will be
produced for each member indicated on this screen. If the option is set to YES, a
message will be created for each member read from the CICS application load
libraries specified. This option is only available in the batch mode because messages
produced by the populate utility are not shown in foreground mode unless an error
occurs.
6-1

Chapter 6.
Using Code Coverage with Optimized Programs Chap 6

This chapter discusses certain considerations that apply to the use of Xpediter/Code
Coverage with programs that have been compiled using an optimizing compiler.

Overview
When programmers are building applications, they tend to envision the program logic in
terms of the high-level language in which they plan to do the coding. The completed
source code is translated by a compiler into machine instructions, which are then
normally stored in a library as an executable load module. During execution of the
module, it can be difficult to tell whether the program was written in COBOL, Assembler,
PL/I, or some other language. One of the primary functions of Code Coverage is to map
those compiler-generated machine instructions back to the high-level language of the
source code in order to identify which parts of the application have been executed during
testing.

When Code Coverage collects data during program testing, it uses information obtained
from the compiler to relate the machine instructions back to their corresponding source
lines. If a non-optimizing compiler was used, there is typically a one-to-one relationship
between machine instructions and source lines. The output from an optimizing compiler,
however, may lack that one-to-one correspondence between source and machine code.
For this reason, when Code Coverage data is collected for a program that has been
compiled with an optimizing compiler, it can sometimes seem as though the results don’t
make sense. The following sections explain why this happens and the ways in which
Code Coverage attempts to clarify those results.

Optimization Benefits and Methods


A non-optimizing compiler individually translates each statement or verb into one or
more corresponding machine instructions. An optimizing compiler, however, examines
several source lines at one time, then builds a more efficient series of machine code
instructions. The resulting load module will exhibit better resource utilization. It may be
more compact, execute more quickly, or both.

Three of the more common optimization techniques compilers employ include:

1. Not generating machine code for a source line if it can never be reached or its
purpose has already been accomplished.
In this example,

100 MOVE 10 TO AMOUNT.


200 IF AMOUNT > 20
300 ADD 15 TO SURCHARGE.
400 MOVE 10 TO AMOUNT.

the compiler might decide that because line 200 will always evaluate to false, there is
no need to generate machine code for lines 200 and 300. In addition, it might decide
not to generate code for line 400, since the operation requested there was already
accomplished in line 100.
2. Merging operations from multiple source lines into a single machine instruction.
6-2 Xpediter/Code Coverage Mainframe User/Reference Guide

Consider the following source code:

100 01 OUTPUT-REC.
110 02 TYPE-CODE PIC XX.
120 02 CUST-NUM PIC X(5).
130 02 STATE PIC X(2). 
.
.
.
500 MOVE ’AA’ TO TYPE-CODE.
600 MOVE ’10331’ TO CUST-NUM.
700 MOVE ’IA’ TO STATE.

Instead of generating three machine instructions, the compiler could generate one
machine instruction to accomplish the assignments requested in lines 500 through
700.
3. Relocating all or part of the logic required to accomplish a source operation.
In the following example,

100 PERFORM UNTIL REC-SUB < 10


200 MOVE TABLE-VAL (REC-SUB) TO OUT-VALUE
300 MOVE CUR-DATE TO OUT-DATE
400 WRITE PRINT-LINE FROM OUT-LINE AFTER 1
500 ADD 1 TO REC-SUB
600 END-PERFORM.

it would be redundant to execute line 300 on each iteration of the perform loop, so
the compiler might relocate the machine code for that line prior to the machine code
for line 100.

When any of these optimization techniques are used, however, the one-to-one
correspondence between source instructions and machine code sequences is likely to
break down. The load module produced by an optimizing compiler may contain no logic
for some source instructions and multiple, identical instances of machine code for
others. In fact, the logical flow of the load module may bear little resemblance to that of
the original high-level language program.

Difficulties Caused by Optimization


When Code Coverage analyzes the execution of an optimized program, it faces the same
challenge as a programmer analyzing dump output after an abend: determining which
line of the source code was being executed. Relating a memory offset to a source line can
be nearly impossible when statements or verbs have been eliminated, moved, dissected,
or combined.

There are two reasons for this difficulty:

1. The optimization technique used by the compiler may appear to vary from line
to line or section to section.
Looking at the same example from above,

100 MOVE 10 TO AMOUNT.


200 IF AMOUNT > 20
300 ADD 15 TO SURCHARGE.
400 MOVE 10 TO AMOUNT.

it is practically impossible to predict what the compiled machine instructions will be.
Theoretically, line 100 is the only instruction that would be kept. But even though
the compiler doesn’t need to generate code for lines 200 through 400, it may:
– keep the IF logic for line 200 but eliminate line 300.
– suppress the generation of machine code for line 400.
Using Code Coverage with Optimized Programs 6-3

– not perform any optimization and instead generate distinctive code for each of
the four source lines.
2. The compiler produces almost no specific information on what was optimized
and how.
For example, when an optimizing compiler suppresses the generation of machine
code for a particular line of source code, it will do one of two things:
– Eliminate all references to the source line from its summary reports.
– Indicate that the underlying logic for the source line — which was never actually
generated — occurs at an offset shared with another source line.
It would seem reasonable to assume that when a source line is completely eliminated
from a compiler report, no code is generated for that line. But when two lines of
source code map to the same offset, it does not necessarily imply that the logic for
one of them was eliminated. In fact, those lines may be combined into a single
machine instruction that represents the logic of both source lines.

This inconsistency and lack of compiler information make it hard to illustrate the actual
logic flow or summarize execution coverage using the source program as a template.

Code Coverage Statistics


Xpediter/Code Coverage tracks executable COBOL verbs and branches, PL/I statements,
and Assembler instructions. Code Coverage defines an executable statement, verb, or
instruction as a source line for which underlying machine code has been generated by
the compiler and a branch as one of two paths taken for certain conditional verbs.
Therefore, you cannot determine with any certainty the number of executable verbs and
branches just by looking at a source code image, because the concepts themselves are by
definition tied to the machine code generated by a compiler.

In fact, the number of executable verbs derived from a source program can vary based on
the compiler used and the compile options chosen. If a non-optimizing compiler is used,
the traditional one-to-one correspondence between source verbs and machine code
sequences makes it easy to determine the number of verbs and branches by simply
counting them in the source code. With optimized code, however, a source line might
not have any underlying code and therefore wouldn’t be considered a verb by Code
Coverage. Conversely, the underlying code generated for a single line of source code
might be duplicated and exist at two distinct offsets. In that case, one source line would
be counted as two executable verbs, each with the potential to be executed or not.

Branch coverage statistics for optimized programs can also be confusing. Although a
conditional source line may have underlying machine code — implying that two
potential paths are included in the branch coverage tally — the compiler may have
generated machine code in such a way that only one path could ever be taken, no matter
what data passes through the program. In such cases, it is logically impossible to achieve
100% coverage.

With this in mind, you can see how a Code Coverage report might vary depending on the
compiler and compile options used. With a non-optimizing compiler, we might see
machine code generation similar to that shown in Table 6-1:

Table 6-1. Machine Code from Non-Optimizing Compiler


Source Line Machine Code Generated
100 MOVE 10 TO AMOUNT. D2016013D188
D5016013D18A
200 IF AMOUNT > 20
47D0B284
F273D2106022
300 ADD 15 TO SURCHARGE FA20D215C066
F3326022D215
6-4 Xpediter/Code Coverage Mainframe User/Reference Guide

Table 6-1. Machine Code from Non-Optimizing Compiler


Source Line Machine Code Generated
400 MOVE 10 TO AMOUNT. D2016013D188

For this portion of the program, the Code Coverage report would reflect four verbs and
one conditional with its two branches.

If optimization is employed during compilation, however, the output can be quite


different, as shown in Table 6-2:

Table 6-2. Machine Code from Optimizing Compiler


Source Line Machine Code Generated
100 MOVE 10 TO AMOUNT. D2016013D188
200 IF AMOUNT > 20 None
300 ADD 15 TO SURCHARGE None
400 MOVE 10 TO AMOUNT. None

For this portion of the program, the Code Coverage report would reflect just one verb
and no branches from conditionals.

Optimization, Inferences, and Annotation


Because an optimized load module may in no way resemble the flow and logic of its
original source code, annotated listings showing Code Coverage results for optimized
programs may often look peculiar. It can seem strange to see a single COBOL MOVE verb
marked as executed when the verbs immediately before and after it are marked
unexecuted.

How could this happen? With optimization, it may be due to the fact that the machine
instructions generated on behalf of that executed MOVE verb ended up nowhere near the
instructions generated for the surrounding unexecuted verbs.

In the Code Coverage annotated listing for a non-optimized program, every executable
source line is marked E (executed), U (unexecuted), or Bn (branch). To make listings for
optimized programs more readable, two special forms of annotation have been added to
designate lines of source code for which there is no directly related machine code in the
load module: the letter X and an asterisk (*). Even though such source lines are annotated
in the listing, they are excluded from counts and percentages in Code Coverage summary
reports. For detailed descriptions of the Code Coverage annotated listing flags, see Table
3-1 on page 3-8.

Source lines annotated with the letter X have been completely “optimized out” of the
compiler output. As discussed earlier, this may have been done because the compiler
concluded that the operation called for in that source line was redundant, that the line
was unreachable, or that its execution depended on a condition that would never occur.

An asterisk (*) designates a line of source code that has been “optimized out” but shares
an offset with another source line. The compiler doesn’t indicate whether logic to
support the source line’s operation was completely omitted from the load module or just
integrated with the machine code supporting another source line. It does, however,
provide an offset associated with the line.

When multiple verbs or statements share an offset, only the last one is included in the
Code Coverage summary counts and annotated as a standard verb or statement with an E
or U. Code Coverage infers that any other source lines with the same offset must have the
same execution status, so it marks them with the same E or U as the last statement and
adds an asterisk to indicate that they share a collective offset. A verb or statement
Using Code Coverage with Optimized Programs 6-5

annotated E* is associated with a collective offset, and the machine instruction at that
offset was executed. A verb or statement annotated U* also has a shared offset, but the
machine code at that offset was not executed.

Here is another example. If four MOVE verbs assign constants to contiguous fields, an
optimizing compiler might generate just one machine instruction to accomplish the
same thing. Assuming execution reached this instruction sequence, the annotated listing
produced by Code Coverage would look like this:

E* 500 MOVE ’11’ TO FIELD-1.


E* 600 MOVE ’ABC’ TO FIELD-2.
E* 700 MOVE ’X’ TO FIELD-3.
E 800 MOVE ’901’ TO FIELD-4.

All four lines share the same offset, and the machine code at that offset was executed.

Conclusion
Optimizing compilers introduce certain idiosyncrasies that can make Code Coverage
results difficult to understand. If you require a more direct representation of your
program’s execution, simply recompile it without optimization. It is generally preferable,
however, to perform testing on the actual load module that will eventually be moved
into production.

Even though an annotated listing may be confusing, it is important to remember that the
summarized counts and percentages reported by Xpediter/Code Coverage are an accurate
reflection of the executed load module structure. In fact, the Code Coverage annotated
listing can provide unique insights into areas of unreachable or unnecessary source code.
6-6 Xpediter/Code Coverage Mainframe User/Reference Guide
Part 2.
2 Using Xpediter/Code Coverage with
Xpediter/TSO and Xpediter/IMS
Xpediter/Code Coverage Mainframe User/Reference Guide
7-1

Chapter 7.
Using Code Coverage with Xpediter/TSO Chap 7

This chapter describes how to use Xpediter/Code Coverage with Xpediter/TSO, including
basic setup and specific Code Coverage related options. This chapter also provides a
detailed explanation about how Code Coverage data is collected.

Note: All the procedures in this and subsequent chapters assume that Code Coverage
has been properly installed and configured in accordance with the Compuware
Installer Mainframe Products SMP/E Installation Guide and the Xpediter/Code Coverage
Installation Guide.

Installation Requirements
Before Code Coverage can be used under Xpediter, the following steps must be performed
by the Xpediter/TSO installer:

1. The proper Code Coverage features must be enabled in Xpediter/TSO.


If you are uncertain whether the features are enabled, execute the XPLIBDEF CLIST
with a parameter of 'INSTALL'. (Refer to the Xpediter/TSO and Xpediter/IMS Installation
Guide.) On the Xpediter/TSO Product Features screen (Figure 7-1), verify that the
proper Code Coverage Support options (Basic Code Coverage Support and/or IMS
Code Coverage Support) are set to Y (Yes).

Figure 7-1. Xpediter/TSO Product Features Screen

COMPUWARE INSTALL ------------ PRODUCT FEATURES -----------------------------


COMMAND ===>

IBM SMS Active ===> Y Basic Code Coverage Support ===> Y
IBM Session Manager ===> Y IMS Code Coverage Support ===> Y
PANEXEC Load Module Support ===> Y DB2 Stored Procedure Support ===> Y
IBM DB2 ===> Y

Enhanced FIND Command ===> Y
XPEDITER/IMS ===> Y
CICS Connection ===> Y
File-AID for MVS ===> Y (N=No, Y=English, J=Japanese)
File-AID for IMS ===> Y
File-AID for DB2 ===> Y
XPEDITER for DB2 Extension ===> Y
XPEDITER/DevEnterprise Support ===> Y


Message to Display on Primary Menu:


Install for Release Level 7.4

Press ENTER to process or enter END command to terminate

2. The CCNODE() parameter in the XPLIBDEF must be set to the Code Coverage high-
level qualifier.
If you prefer, you can concatenate the Code Coverage ISPF datasets to the
corresponding ISPLLIB, ISPPLIB, ISPMLIB, ISPSLIB, and SYSPROC DD statements in
the TSO LOGON PROC.
7-2 Xpediter/Code Coverage Mainframe User/Reference Guide

Collecting Code Coverage Data


Code Coverage data is collected by Xpediter/TSO. The results of verbs and branches
tested will be written to a Code Coverage Repository.

Preparing for Code Coverage Capture


In order to collect Code Coverage data, a repository dataset and source listing members
must exist. Information explaining how these two items are conceived and developed in
Xpediter/TSO appears later in this chapter.

Define the Repository


1. Refer to Chapter 5, “Using Results Repository Utilities” of this manual and use the
CREATE command to create a repository file.
2. Specify the optional fields displayed in Figure 7-2.
Refer to the instructions in Chapter 5, “Using Results Repository Utilities” of this
manual to assist you in determining which fields are necessary to complete your job.

Figure 7-2. Xpediter/Code Coverage Repository Utility Screen (TSO)

---------------- CODE COVERAGE 17.02 - REPOSITORY UTILITY ------------


COMMAND ===>

Commands: C (Create file) D (Delete file)

Repository File ===> ’OYAA.TEST.INV3OYAA.REPOSIT’

Management Class ===> (optional)
Storage Class ===> (optional)
Volume ===> (optional)
Unit ===> (optional)

Space Units ===> CYL (CYL/MB/REC/TRK)
Primary Quantity ===> 10

Edit JCL ===> NO Default for online submission





Press ENTER to process or enter END command to terminate

Defining the System Naming Convention


The system name allows you to group different Code Coverage results together. The name
you choose can be from one to fifteen characters in length. The system name allows the
clustering of collected data by whatever criteria your requirements have pre-determined.
Refer to Figure 7-5 on page 7-7.

Note: The system name cannot contain an asterisk (*) as this is used as a wildcard.

Creating a Source Listing Dataset


1. Choose one of the following two methods to allocate a source listing dataset:
– Refer to the Compuware Shared Services (CSS) User/Reference Guide MVS Version for
information on how to create a source listing dataset.
Using Code Coverage with Xpediter/TSO 7-3

– Use the Xpediter/TSO DDIO File Facility and refer to any of the Xpediter/TSO and
Xpediter/IMS User Guides for information about allocating source listing datasets.
2. After you have created your source listing dataset, create source listing members for
all application programs by compiling with CSS.
There are two ways to compile your application programs:
– Use the Xpediter/TSO Program Preparation Facility (as described in all
Xpediter/TSO and Xpediter/IMS User Guides).
– Run a CSS Batch Compile. Refer to the Compuware Shared Services (CSS) User/Reference
Guide MVS Version for information on using the CSS Language Processor (LP).

Completing the Collection of Code Coverage Data


After completing the steps listed in this chapter starting with “Installation
Requirements” on page 7-1, the corresponding Xpediter/TSO test screens will be
displayed and will contain one or more Code Coverage related fields. For example,
Xpediter/TSO option 2 (Debug programs interactively under TSO) will generate the
screen displayed in Figure 7-3.

Figure 7-3. TRIMAIN Test Screen

Profile: TRIMAIN ------ XPEDITER/TSO - STANDARD (2.1) -----------------------


COMMAND ===>

COMMANDS: SEtup (Display Setup Menu)
PROFile (Display Profile List)
TEST SELECTION CRITERIA:

Program ===> TRIMAIN
Entry Point ===>
Load Module ===>

Initial Script ===>
Post Script ===>

PARM ( Caps = YES ) ===>

File List/JCL Member ===> 'XPEDITER.TSO.R74.SAMPLIB(TRIJCL)'
Preview Files? ===> NO
Code Coverage Test? ===> YES (YES, NO, TDO)
Is This a DB2 Test? ===> NO Plan ===> System ===>

Press ENTER to process or enter END command to terminate

Note that Code Coverage Test? ===> appears on this interactive test screen. Similarly,
when you have converted the JCL, option 3 (Debug programs interactively under batch)
will produce a screen comparable to the screen displayed in Figure 7-4.
7-4 Xpediter/Code Coverage Mainframe User/Reference Guide

Figure 7-4. Xpediter/TSO Select Job Step Screen

----------------------- XPEDITER/TSO - SELECT JOB STEP ----- Row 1 to 1 of 1


COMMAND ===> SCROLL ===> PAGE

Line Commands: Primary Commands:
I - Interactive testing Edit - Display converted selected steps
U - Unattended testing END - Exit without processing
IC - Interactive Code Coverage RUN - Submit and connect
IT - IC with Test Data Optimize SEtup - Setup work datasets
UC - Unattended Code Coverage SUBmit - Convert selected steps and submit
UT - UC with Test Data Optimize STatus - Display status of submitted job(s)

Dataset: 'XPEDITER.TSO.R74.SAMPLIB(TRIJCL)'

PROGRAM INITSCR POSTSCR STEPNAME PROCNAME PROCSTEP EXEC PGM
----------------------------------- -----------------------------------------
__ TRIMAIN_ ________ ________ RUNPROG_
******************************* Bottom of data ********************************

Note that new optional line commands have been added to the Xpediter/TSO Select Job
Step screen. These changes are detailed as follows:

• IC - Interactive Code Coverage


• IT - IC with Test Data Optimize
• UC - Unattended Code Coverage
• UT - UC with Test Data Optimize

Note: See Chapter 9, “Test Data Optimization” for more details on TDO.

The Line Commands and Primary Commands of this screen are defined as follows:

Line Commands
I - Interactive testing
Selects the step to run in interactive mode.
U - Unattended testing
Selects the step to run in unattended mode.
IC - Interactive Code Coverage
Selects the step to run in interactive mode (with Code Coverage active).
IT - Interactive Code Coverage with TDO
Selects the step to run in interactive mode (with Code Coverage and TDO active).
UC - Unattended Code Coverage
Selects the step to run in unattended mode (with Code Coverage active).
UT - Unattended Code Coverage with TDO
Selects the step to run in unattended mode (with Code Coverage and TDO active).

Note: If you are licensed to use Compuware’s Code Coverage product, options IC,
IT, UC, and UT are displayed on the Xpediter/TSO Select Job Step screen. It is
important that you become aware of some optional primary commands
which are not visible on the Select Job Step screen. Information regarding
these optional commands is provided in “Primary Commands” on page 7-5.
Using Code Coverage with Xpediter/TSO 7-5

Primary Commands
Edit
Accesses the ISPF edit facility. The JCL is automatically converted and displayed on
the ISPF edit screen. You can view and confirm the JCL conversion and make
additional modifications to the converted JCL. You can submit the JCL from the edit
screen using the RUN or SUBMIT command. Changes made to converted JCL will not
be saved when you use CANCEL or press PF3 (END) from the edit screen. Refer to
“Editing the JCL” on page 7-10 for more information.
END
Exits without converting the JCL, saving any modifications, or submitting the job,
and returns you to the Process JCL screen.
RUN
Converts the steps selected by the I, U, IC, and UC line commands to Xpediter/TSO
steps and submits the JCL. The terminal cannot be used while the job is running. If
the job is a long-running job, the Connect Status screen is displayed showing the job
status. When the job processes successfully, you are automatically connected to the
job steps selected to run in foreground mode and the Source screen is displayed.
If the JCL is already converted, the RUN command (with a DSNAME) can be entered
on any screen except an Xpediter test session screen. Refer to the Xpediter/TSO and
Xpediter/IMS Reference Manual for more information about the RUN command.
SEtup
Displays the Setup Menu from which you can select to view and change the job card
and library information, such as the source listing file (XPSL000n) and the SCRIPT
file (XINCLUDE).
SUBmit
Converts the steps selected by the I, U, IC and UC commands to Xpediter/TSO steps
and submits the job. While the job is running, you can continue using your terminal.
A job submitted with the SUBMIT command is not automatically connected. To
connect to a job submitted with the SUBMIT command, you must use the CONNECT
or STATUS command. Refer to “Connecting to a Job” on page 7-9.
STatus
Displays the status of a job. You can connect to the job directly from the Status
screen.
ICAll (Optional)
When entered as a Primary Command on the Job Step Selection screen, ICAll will
place the letters IC on all of the individual step selection lines. If you are testing with
Batch Interactive Code Coverage (Line Command IC), and are processing a JCL
stream with many steps, you will then be able to blank out all of the steps for which
you do not want Code Coverage.
UCAll (Optional)
When entered as a Primary Command on the Job Step Selection screen, UCAll will
place the letters UC on all of the individual step selection lines. If you are testing
with Batch Unattended Code Coverage (Line Command UC), and are processing a
JCL stream with many steps, you will then be able to blank out all of the steps for
which you do not want Code Coverage.

Field Definitions of the Select Job Step Screen


Dataset
This field is pre-filled with the dataset name of the JCL being processed.
7-6 Xpediter/Code Coverage Mainframe User/Reference Guide

PROGRAM
The name of the program to be tested. The program name does not necessarily match
the EXEC PGM name.
INITSCR
The member name of the script in the INCLUDE library specified on the Setup
screen. The INITSCR field can be typed over to specify a test script member which
can be processed at the beginning of a debugging session.
When using Xpediter/TSO, enter the member name of a test script if you want to
execute a predefined command stream at the beginning of the debugging session.
This member will be executed after the inclusion of the Site-wide script member
@@SITE@@, if defined.
STEPNAME
The job step name.
PROCNAME
The in-stream or cataloged procedure name.
PROCSTEP
The step name within the called procedure.
EXEC PGM
The name of the EXEC program that is executed for the step. XPTSO if I (Interactive)
or IC (Interactive Code Coverage) was specified for the step. XPBATCH if U
(Unattended) or UC (Unattended Code Coverage) was selected for the step. The field
is left blank if the name is the same as the one entered in the PROGRAM field.

Interactive and Batch Test Requirements


In order for Code Coverage data to be collected, interactive tests require that the Code
Coverage Test? field be set to Y (Yes) or T (TDO). In addition, batch tests require the
entering of the IC, IT, UC, or UT line command. You must specify what Code Coverage
system name is to be used and to what Code Coverage Repository the collected data is to
be written at the end of the test.

For both interactive and batch tests, you can specify the appropriate Code Coverage
system name by first entering the SEtup command and selecting option C (Code
Coverage Setup options) from the SETUP menu. The Code Coverage Setup options screen
is similar to the screen displayed in Figure 7-5.
Using Code Coverage with Xpediter/TSO 7-7

Figure 7-5. Xpediter/Code Coverage Setup (for TSO) Options Screen

--------------------- XPEDITER/TSO - CODE COVERAGE --------------------------


COMMAND ===>

Repository DSNAME ===> 'ACMJET0.SAMPLE.REPOSIT'

System Name ===> SYSTEM 1 Test ID ===> TEST 1

Test Data Optimization Dataset: (DSNAME will be generated if blank)
DSNAME ===> TEST.XVTDOOUT

Data Class ===>
Space Units ===> TRK
Primary ===> 2 Disposition Options:
Secondary ===> 2 A (Append)
Storage Class ===> D (Delete)
Unit ===> K (Keep)
Volume ===> ? (Prompt)

Disposition After the Test ===> K (K or ?)

Disposition Before the Test ===> A (A, D, or ? Only if DSN specified)

Press ENTER to Process or Enter END Command to Terminate

On the Xpediter/Code Coverage Setup Options screen, you must enter the Code Coverage
Repository dataset name, the Code Coverage system name, and the Code Coverage test
ID name pertaining to the Code Coverage test. For more information on Test Data
Optimization (TDO) and its associated fields, refer to Chapter 9, “Test Data
Optimization”.

Input Fields
Repository DSNAME
Specifies the repository dataset name where Xpediter will write the Code Coverage
information. The Repository DSNAME field is limited to 46 characters or less in
length.
System Name
Specifies the Code Coverage system name for this test. This name can be any user-
specified name. This field is limited to 15 characters or less in length. They can be
any character except an asterisk (*), including embedded blanks, and the field is
automatically left-justified. The Code Coverage system name allows clustering of
collected data by whatever criteria you choose. It could be by application (such as
“PAYROLL” or “INVENTORY”), by department (for example, “PROGRAMMING,”
“MATERIALS,” or “ACCOUNTING”), or by arbitrary grouping (for example, “TEST
SET #01” or “TEST SET #02”).
Test ID
Specifies a Code Coverage Test Identification name to be added to the Code Coverage
test. This information is useful when reviewing test reports from Code Coverage. This
field is limited to 15 characters or less in length and cannot contain an asterisk (*).

Test Data Optimization Dataset Area


DSNAME
Specifies the XVTDOOUT dataset name where Xpediter will write the TDO
information. The dataset will be created if it does not already exist. The DSNAME
field is limited to 46 characters in length. If this field is left blank, Xpediter will
generate a DSNAME with the following format:

'userID.XPTDO.mmmdd.Thhmmss'
7-8 Xpediter/Code Coverage Mainframe User/Reference Guide

where mmm is a three-character abbreviation for the current month, dd is the current
date in the month, and hhmmss is the current time of day, in hours, minutes, and
seconds.
Data Class, Space Units, Primary, Secondary, Storage Class, Unit, Volume
Specifies the allocation parameters according to your site’s standards if the dataset
needs to be created.
Disposition After the Test
Specifies either of the following:

K Keep the dataset after the test is completed.


? After the test is completed, prompt for an action to be taken against the dataset.

Disposition Before the Test


Specifies one of the following:

A Append the new TDO information to the existing data in the dataset.
D Delete and recreate the current dataset.
? Before the test begins, prompt for an action to be taken against the dataset.

Defining the Collection Process


Xpediter/Code Coverage entails collecting two types of statistics in both optimized and
non-optimized environments.

• Verb Coverage statistics


• Branch Coverage statistics

The GEN option will be set to ON during a Code Coverage test to collect data for all
statements. These statements include translator-generated statements (for example, DL/I
or DB2) and all statements suppressed by the compiler (for example, COPY SUPPRESS or
PRINT NOGEN %NOPRINT). Requests to turn Code Coverage GEN OFF during a session
will be ignored. During an interactive test session, the appearance of the source to the
user will be different during a Code Coverage test. All normally suppressed statements
will be displayed.

Verb Coverage
Supported for COBOL, PL/I, and Assembler, Verb Coverage indicates whether or not each
unique verb was executed. Verb coverage is achieved by having Xpediter set special Code
Coverage breakpoints on all statements. When a breakpoint is reached, the data is
collected in a repository and the breakpoint is removed. These special Code Coverage
breakpoints are not presented to you while you are using Code Coverage and require no
interaction. You may still specify your own breakpoints. Those breakpoints will function
independently of the special Code Coverage breakpoints.

Branch Coverage
Branch Coverage, supported for COBOL only, indicates whether the next verb is intended
for execution or some other verb is intended for execution after each qualifying
condition statement.

The qualifying condition statements include IF, ON n, and WHEN. The collection of
branch coverage statistics is optional during a Code Coverage session. Frequency
information is carried into the repository for any COUNT command you issue.

Collection of Branch Coverage information is optional with Xpediter/TSO, and the


default setting is “No Branch Coverage.” To change the default for all users at your site
Using Code Coverage with Xpediter/TSO 7-9

requires that the site-specific default defined to Xpediter/TSO be changed to specify the
following:

CTLBRCOV=Y

For additional information on controlling Branch Coverage for a Code Coverage test with
Xpediter/TSO, refer to the description of JCLRA093 parameter CTLBRCOV in Appendix B
of the Xpediter/TSO and Xpediter/IMS Installation Guide.

Branch Coverage can be set ON or OFF for a single execution by including the SET
BRCOV ON/OFF command in the initial script invoked when the Code Coverage
collection takes place. The SET BRCOV command can also be specified in a site-wide
script.

Collection of Branch Coverage information can cause the Code Coverage collection
process to run longer since more detailed information is being collected. Xpediter/TSO
includes an optional SVC breakpoint processing technology that reduces the overhead
associated with collection of Branch and Frequency data. Refer to the Xpediter/TSO and
Xpediter/IMS Installation Guide for information on how to implement this breakpoint
technology.

Connecting to a Job
Two methods exist for connection to a job: the RUN command and the SUBMIT
command.

When you use the RUN command to submit the job, the steps that are selected for
interactive debugging are automatically displayed at your terminal.

When you use the SUBMIT command to submit the job, there are two ways to connect to
a job: the CONNECT command and the STATUS command.

CONNECT Command
Use the CONNECT command on any screen (except the source display) to connect a
VTAM terminal to a job submitted through Xpediter/TSO’s batch connect facility. You
can connect to a job with multiple steps or to a single step job. For information on the
CONNECT command syntax, refer to the Xpediter/TSO and Xpediter/IMS Reference Manual.

STATUS command
The STATUS command is used to display the Status screen containing a list of the jobs in
the system. The STATUS command can be entered from any screen. The ATTACH line
command on the Status screen is used to connect to a job and display the source of each
job step for which the I (Interactive), IC (Interactive Code Coverage), or IT (Interactive
Code Coverage with TDO) command was specified. A message is displayed notifying you
that the job step selected for testing is executing.

Connection Security Check


Connection can be made to any job, including production jobs, as long as your site
security grants the authority. The batch connect facility is shipped with a default security
exit routine that allows connection to a job if the JOBNAME, without the last character,
matches the TSO ID where the STATUS screen is accessed. When a connection cannot be
made, the messages CANNOT CONNECT....... or SECURITY CHECK FAILED....... are
issued.

The site installer can customize the security exit routine to tailor the security level for
certain groups or individuals. When an asterisk (*) is entered in the JOBNAME field on
the Status screen, all jobs that are waiting for connection or being tested under batch
connect are listed. System programmers are able to connect to a remote job and use the
facility as a help desk feature in debugging application programs.
7-10 Xpediter/Code Coverage Mainframe User/Reference Guide

Editing the JCL


There are two points at which the batch connect facility lets you edit your JCL.

1. Primary editing is available by entering the EDIT primary command on the Process
Execute JCL screen. An ISPF edit session is invoked and the specified JCL is displayed.
If your site security permits, changes will be saved to the original JCL when the edit
session ends.
2. Secondary editing is available by entering the EDIT primary command on the Select
Job Step screen. An ISPF edit session is invoked and a temporary copy of the JCL is
displayed. JCL statements for the steps selected for testing, using the I (Interactive),
IC (Interactive Code Coverage), IT (Interactive Code Coverage with TDO), U
(Unattended), UC (Unattended Code Coverage), or UT (Unattended Code Coverage
with TDO) line commands, are already converted when the edit screen is displayed.
After editing is complete, you can submit the job from this screen with the RUN or
SUBMIT command.

Note: Entering END (PF3) or CANCEL returns to the Select Job Step screen without
saving the changes. To save the converted JCL, use the ISPF CREATE
command and copy the contents to a dataset. The saved JCL can be
submitted at any time with the RUN or SUBMIT command.
8-1

Chapter 8.
Using Code Coverage with Xpediter/IMS Chap 8

This chapter describes how to use Xpediter/Code Coverage with Xpediter/IMS, including
basic Setup and specific Code Coverage related options. This chapter also provides a
detailed explanation about how Code Coverage data is collected.

Note: All the procedures in this and subsequent chapters assume that Code Coverage
has been properly installed and configured in accordance with the Compuware
Installer Mainframe Products SMP/E Installation Guide and the Xpediter/Code Coverage
Installation Guide.

Installation Requirements
Before Code Coverage can be used under Xpediter, the following steps must be performed
by the Xpediter/IMS installer:

1. The Basic Code Coverage Support features and the IMS Code Coverage Support
product features must be enabled in Xpediter.
If you are uncertain whether these features are enabled, execute the XPLIBDEF CLIST
with a parameter of ‘INSTALL’ (refer to the Xpediter/TSO and Xpediter/IMS Installation
Guide). On the Product Features screen (Figure 8-1), verify that the Code Coverage
Support options are set to Y (Yes).

Figure 8-1. Xpediter/IMS Product Features Screen

COMPUWARE INSTALL ------------ PRODUCT FEATURES -----------------------------


COMMAND ===>

IBM SMS Active ===> Y Basic Code Coverage Support ===> Y
IBM Session Manager ===> Y IMS Code Coverage Support ===> Y
PANEXEC Load Module Support ===> Y DB2 Stored Procedure Support ===> Y
IBM DB2 ===> Y

Enhanced FIND Command ===> Y
XPEDITER/IMS ===> Y
CICS Connection ===> Y
File-AID for MVS ===> Y (N=No, Y=English, J=Japanese)
File-AID for IMS ===> Y
File-AID for DB2 ===> Y
XPEDITER for DB2 Extension ===> Y
XPEDITER/DevEnterprise Support ===> Y


Message to Display on Primary Menu:


Install for Release Level 7.4

Press ENTER to process or enter END command to terminate

2. The CCNODE() parameter in the XPLIBDEF must be set to the Code Coverage high-
level qualifier.
If you prefer, you can concatenate the Code Coverage ISPF datasets to the
corresponding ISPLLIB, ISPPLIB, ISPMLIB, ISPSLIB, and SYSPROC DD statements in
the TSO LOGON PROC.
8-2 Xpediter/Code Coverage Mainframe User/Reference Guide

Collecting Code Coverage Data


Code Coverage data is collected by Xpediter/IMS. The results of Verbs and Branches
tested will be written to a Code Coverage Repository.

Preparing for Code Coverage Capture


In order to collect Code Coverage data, a repository dataset and source listing members
must exist. Information which explains how these two items are conceived and
developed in Xpediter/IMS is provided in this chapter.

Define the Repository


1. Refer to Chapter 4, “Repository Utility Screen” on page 5-2 and use the CREATE
command to create a repository file.
2. Specify the optional fields displayed in Figure 8-2. Refer to the instructions located in
Chapter 4, “Repository Utility Screen” on page 5-2 to assist you in determining
which fields are necessary to complete your job.

Figure 8-2. Xpediter/Code Coverage Repository Utility Screen

---------------- CODE COVERAGE 17.02 - REPOSITORY UTILITY ------------


COMMAND ===>

Commands: C (Create file) D (Delete file)

Repository File ===> ’OYAA.TEST.INV3OYAA.REPOSIT’

Management Class ===> (optional)
Storage Class ===> (optional)
Volume ===> (optional)
Unit ===> (optional)

Space Units ===> CYL (CYL/MB/REC/TRK)
Primary Quantity ===> 10





Press ENTER to process or enter END command to terminate

Define the System Naming Convention


The system name allows you to group different Code Coverage results together. The name
you choose can be from one to fifteen characters in length and cannot include asterisks
(*). The system name allows the clustering of collected data by whatever criteria your
requirements have pre-determined. Refer to Figure 8-5 on page 8-7.

Create a Source Listing Dataset


1. There are two methods which can be used to allocate a source listing dataset:
– Refer to Compuware Shared Services User/Reference Guide MVS Version for information
on how to create a source listing dataset.
– Use the Xpediter/IMS DDIO File Facility; refer to all/any of the Xpediter/TSO and
Xpediter/IMS User Guides for information about allocating source listing datasets.
Using Code Coverage with Xpediter/IMS 8-3

2. After you have created your source listing dataset, create source listing members for
all application programs by compiling with CSS. There are two ways to compile your
application programs:
– Use the Xpediter/TSO Program Preparation Facility (as described in all
Xpediter/TSO and Xpediter/IMS User Guides).
– Run a CSS Batch Compile. Refer to the Compuware Shared Services User/Reference
Guide MVS Version for information on using the CSS Language Processor (LP).

Completing the Collection of Code Coverage Data


After the steps listed in “Installation Requirements” on page 8-1 of this chapter have
been performed, the corresponding Xpediter/IMS test screens will be displayed and will
contain one or more Code Coverage related fields. For example, Xpediter/TSO option 2
(Debug programs interactively under TSO) for an IMS/BTS test will generate the screen
displayed in Figure 8-3.

Figure 8-3. BTS Test Screen

Profile: TRIIMSM --------- XPEDITER/TSO - BTS (2.4) -------------------------


COMMAND ===>

COMMANDS: SEtup (Display Setup Menu)
BTsin (Display BTSIN Menu)
PROFile (Display Profile List) DOwn (Scroll Down)
INTERCEPTS

PROGRAM TRANCODE INITSCR POSTSCR START MAX
===> ===> ===> ===> ===> ===>
===> ===> ===> ===> ===> ===>
===> ===> ===> ===> ===> ===>

BTSIN ===>
Program Type ===> DLI (DLI, BMP, DBB)

PARM Passing Option ===> STD (STD) Retain Breakpoints? ===> NO

File List/JCL Member ===> 'XPEDITER.TSO.R74.SAMPLIB(TRIIMSJ)'

Code Coverage Test? ===> YES (YES, NO, TDO) Unattended? ===> NO
Is This a DB2 Test? ===> NO System ===>

Press ENTER to process or enter END command to terminate

Note that Code Coverage Test? ===> appears on this interactive BTS test screen.
Similarly, the IMS/MPP test screen is comparable to the one displayed in Figure 8-4.
8-4 Xpediter/Code Coverage Mainframe User/Reference Guide

Figure 8-4. MPP Test Screen

Profile: TRIIMSM --------- XPEDITER/TSO - MPP (2.8) -------------------------


COMMAND ===>

COMMANDS: SEtup (Display Setup Menu)
INter (Display Intercepts)
PROFile (Display Profile List) DOwn (Scroll Down)

INTERCEPTS

PROGRAM TRANCODE INITSCR POSTSCR START MAX ------------ DATA ------------
> XPEDTRAN
>
>

IMS USERID ===> ACMJET0 Retain Breakpoints? ===> NO

NBA ===> 2 (Normal Buffer Allocation)
OBA ===> 3 (Overflow Buffer Allocation)

File List/JCL Member ===> 'XPEDITER.TSO.R74.SAMPLIB(TRIIMSJ)'
Code Coverage Test? ===> YES (YES, NO, TDO) Unattended? ===> NO
Is This a DB2 Test? ===> NO System ===>

Press ENTER to process or enter END command to terminate

Defined IMS Commands on the BTS and MPP Test Screens


The following commands are displayed on the BTS and MPP screens:

SEtup
Displays the Setup Menu from which you can select screens for specifying load
libraries, DDIO datasets, and so on.
BTsin
Required Command field for the BTS screen. Xpediter/TSO scans the BTSIN dataset
and searches for the program and transaction code to be debugged. An intercept is
established for each one found. The BTSIN dataset must be either a sequential dataset
or a member of a partitioned dataset. The BTSIN cards should not be modified.
INter
Displays the Intercepts screen showing you what IDs are logged on to Xpediter/IMS,
what programs are being used, and so on. Located on the MPP screen.
DOwn
Scrolls to a continuation MPP screen. From this screen, UP is available for returning
to the first debugging screen.
ALLOC
This command takes you to the File Allocation Utility (FAU) screens to create a file
allocation list. Your program may require this list for the debugging session.

Field Definitions of the BTS and MPP Test Screens


The fields displayed on the BTS and MPP test screens are:

PROGRAM
Required if TRANCODE is not specified. Used to identify which programs are to be
debugged by Xpediter/IMS. You can enter the load module name in this field, the
transaction code in the TRANCODE field, or supply values for both fields. If you
enter only the program name, all the transactions associated with that program will
be intercepted by Xpediter/IMS. If you enter only a transaction code, its associated
program is intercepted.
Using Code Coverage with Xpediter/IMS 8-5

Three programs or transaction codes can be specified on the MPP screen. If you want
to continue the list, you can scroll down to a second MPP Test screen. The last entry
on the previous page is displayed in the top row. Once the second screen is full, you
can scroll down to a third screen. Notice that on the second (and subsequent
screens), the UP command is available in addition to the DOWN command.
TRANCODE
Identifies which transactions are to be debugged by Xpediter/IMS. You can enter the
transaction code in this field or the load module name in the PROGRAM field, or
enter values for both fields.
This field is required if PROGRAM is not specified or if multiple transactions are
associated with the program.
INITSCR
Enter the member name of a test script if you want to execute a predefined command
stream at the beginning of the debugging session. This member will be executed after
the inclusion of the site-wide script member @@SITE@@, if defined.
POSTSCR
Enter the member name of a test script if you want to execute a predefined command
stream at the end of the debugging session.
START
The occurrence of the program invocation on which the intercept is to begin. Up to
four digits can be entered. By default, program intercept begins on the first
occurrence. When the program is intercepted, the debugging session is initiated and
the source is displayed.
MAX
Enter up to four digits to specify the maximum number of times the program
intercept is processed. If this field is left blank, the value defaults to an infinite
number. If you enter an EXIT command and there are still intercepts remaining,
those intercepts are ignored.
DATA
Specify up to 30 bytes of data from the IMS transaction you want to debug.
The DATA field is only active if IMS User ID/Data Value Intercept Support is enabled.
See the Xpediter/TSO and Xpediter/IMS Installation Guide for more details.

Note: This field cannot contain the , (comma) or ¢ (cent) characters.

Program Type
Required for BTS Test screen. The type of IMS program. The value is generally the
first parameter value passed to IMS in the JCL. The field can have any one of the
following values:

A BMP program is manually scheduled by the system operator and, typically, processes some
BMP
data that was held by IMS in a message queue.

A DBB program is processed in an offline DL/I batch processing region using ACB libraries
DBB
instead of PSB and DBD libraries.

A DL/I program is processed in an offline DL/I batch processing region using PSB and DBD
DLI
libraries.

These program types are retrieved from the PARM lists in the Setup option. Your
specific site options determine which program types are available on the screen.
8-6 Xpediter/Code Coverage Mainframe User/Reference Guide

PARM Passing Option


Required for BTS Test screen. Default values are prefilled for this field. The valid
PARM passing option is STD. If you specify STD (standard) when debugging an IMS
program, Xpediter/IMS passes the PARM string to the program unaltered.
IMS USERID
For an MPP test, specify the ID of the IMS user issuing the IMS transaction you want
to debug. If IMS User ID/Data Value Intercept Support is enabled, you can enter an
asterisk (*) to specify a generic match on any user ID.
The IMS USERID field is only active if either IMS User ID Support or IMS User
ID/Data Value Intercept Support is enabled. See the Xpediter/TSO and Xpediter/IMS
Installation Guide for more details.

Note: If Xpediter/Code Coverage is active, this field is also used to record the IMS
user ID in the Code Coverage Repository. If an asterisk is specified, the TSO
user ID will be recorded.

Retain Breakpoints?
If you want Xpediter to retain breakpoints from one iteration of an IMS or BTS
program or transaction to the next, enter YES in this field. Before breakpoints, after
breakpoints, counts, skips, traces, Code Coverage breakpoints, and when conditions
from the previous test iteration will be reapplied. Count values will accumulate
across iterations, but a count with a maximum execution limit will be converted to a
standard counter. Keeps and inserted lines are not retained.
The default is NO and will result in each iteration starting with only the standard
before and after breakpoints.
NBA
Required for the MPP Test screen. The Normal Buffer Allocation (NBA), up to two
digits. The default value is 0.
OBA
Required for the MPP Test screen. The Overflow Buffer Allocation (OBA), up to two
digits. The default value is 0.

Note: The NBA and OBA fields appear on the screen only if your site installer
indicated that your site uses Fast Path databases. The values are inserted in
the PARM string when the IMS region is attached.

File List/JCL Member


The dataset name that contains the file list, CLIST, or JCL. The File Allocation Utility
(FAU) preallocates files and databases processed by the program upon entry to the
debugging session. If the member name of a PDS is omitted, a member list is
displayed. If the dataset contains a CLIST, Xpediter/IMS immediately executes it and
begins the debugging session. If the dataset contains a file list or JCL, the FAU is
invoked to dynamically allocate the specified files before beginning the debugging
session.
Code Coverage Test?
Whether or not Xpediter/Code Coverage data should be collected for this test. Enter
YES to collect statistics without Test Data Optimization information. Enter TDO to
collect statistics and TDO information. The default value is NO. See Chapter 9, “Test
Data Optimization” for more information on TDO.
Unattended?
Whether or not to run the test in Unattended mode. Enter YES to run in Unattended
mode. The default value is NO. In unattended mode, after BTS gives control to the
application program, only Xpediter commands are processed in the Initial Script, the
Using Code Coverage with Xpediter/IMS 8-7

Post Script, and the Abend Script. Interactive Xpediter commands are not permitted
(from the terminal).
Is This a DB2 Test?
Whether or not this is a DB2 test. Enter YES if the program executes EXEC SQL
statements. The default is NO.
System
The DB2 subsystem name. The subsystem name depends on the release level of DB2
allocated to the DSNLOAD library specified in the Setup option. When testing DB2
under the BTS/DLI environment, you must define the DB2 subsystem name to BTS by
using the ./P statement as part of the BTSIN control cards.

IMS Test Screen Requirements


The Code Coverage Test? ===> again appears on the MPP interactive test screen (as
shown in Figure 8-4 on page 8-4). This example demonstrates that the Code Coverage
Test field must be set to Y (Yes) or T (TDO) for Code Coverage data to be collected. You
must specify which Code Coverage system name should be used and to what Code
Coverage Repository the collected data should be written at the end of the test.

To specify the appropriate Code Coverage system name, you must enter the SEtup
command and select option C (Code Coverage Setup options) from the SETUP menu. The
Code Coverage Setup options screen is similar to the screen displayed in Figure 8-5.

Figure 8-5. Xpediter/Code Coverage Setup (for IMS) Options Screen

--------------------- XPEDITER/TSO - CODE COVERAGE --------------------------


COMMAND ===>

Repository DSNAME ===> 'ACMJET0.SAMPLE.REPOSIT'

System Name ===> SYSTEM 1 Test ID ===> TEST 1

Test Data Optimization Dataset: (DSNAME will be generated if blank)
DSNAME ===> TEST.XVTDOOUT

Data Class ===>
Space Units ===> TRK
Primary ===> 2 Disposition Options:
Secondary ===> 2 A (Append)
Storage Class ===> D (Delete)
Unit ===> K (Keep)
Volume ===> ? (Prompt)

Disposition After the Test ===> K (K or ?)

Disposition Before the Test ===> A (A, D, or ? Only if DSN specified)

Press ENTER to Process or Enter END Command to Terminate

On the Xpediter/Code Coverage Setup Options panel, you must enter the Code Coverage
Repository dataset name, the Code Coverage system name, and the Code Coverage test
ID name pertaining to the Code Coverage test. Test Data Optimization (TDO) and its
associated fields are covered in Chapter 9, “Test Data Optimization”.

Input Fields
Repository DSNAME
Specifies the repository dataset name where Xpediter will write the Code Coverage
information. The Repository DSNAME field is limited to 46 characters or less in
length.
8-8 Xpediter/Code Coverage Mainframe User/Reference Guide

System Name
Specifies the Code Coverage system name for this test. This name can be any user-
specified name. This field is limited to 15 characters or less in length. They can be
any character except an asterisk (*), including embedded blanks, and the field is
automatically left-justified. The Code Coverage system name allows clustering of
collected data by whatever criteria you choose. It could be by application (such as
“PAYROLL” or “INVENTORY”), by department (for example, “PROGRAMMING,”
“MATERIALS,” or “ACCOUNTING”), or by arbitrary grouping (for example, “TEST
SET #01” or “TEST SET #02”).
Test ID
Specifies a Code Coverage Test Identification name to be added to the Code Coverage
test. This information is useful when reviewing test reports from Code Coverage. This
field is limited to 15 characters or less in length and cannot contain an asterisk (*).

Test Data Optimization Dataset Area


DSNAME
Specifies the XVTDOOUT dataset name where Xpediter will write the TDO
information. The dataset will be created if it does not already exist. The DSNAME
field is limited to 46 characters in length. If this field is left blank, Xpediter will
generate a DSNAME with the following format:

'userID.XPTDO.mmmdd.Thhmmss'

where mmm is a three-character abbreviation for the current month, dd is the current
date in the month, and hhmmss is the current time of day, in hours, minutes, and
seconds.
Data Class, Space Units, Primary, Secondary, Storage Class, Unit, Volume
Specifies the allocation parameters according to your site’s standards if the dataset
needs to be created.
Disposition After the Test
Specifies either of the following:

K Keep the dataset after the test is completed.


? After the test is completed, prompt for an action to be taken against the dataset.

Disposition Before the Test


Specifies one of the following:

A Append the new TDO information to the existing data in the dataset.
D Delete and recreate the current dataset.
? Before the test begins, prompt for an action to be taken against the dataset.

Defining the Collection Process


Xpediter/Code Coverage entails collecting two types of statistics in both optimized and
non-optimized environments.

• Verb Coverage statistics


• Branch Coverage statistics

The GEN option will be set to ON during a Code Coverage test to collect data for all
statements. These statements include translator-generated statements (for example, DL/I
or DB2) and all statements suppressed by the compiler (for example, COPY SUPPRESS or
PRINT NOGEN %NOPRINT). Requests to turn Code Coverage GEN OFF during a session
will be ignored. During an interactive test session, the appearance of the source to the
Using Code Coverage with Xpediter/IMS 8-9

user will be different during a Code Coverage test. All normally suppressed statements
will be displayed.

Verb Coverage
Supported for COBOL, PL/I, and Assembler, Verb Coverage indicates whether or not each
unique verb was executed. Verb coverage is achieved by having Xpediter set special Code
Coverage breakpoints on all statements. When a breakpoint is reached, the data is
collected in a repository and the breakpoint is removed. These special Code Coverage
breakpoints are not presented to you while you are using Code Coverage and require no
interaction. You may still specify your own breakpoints. Those breakpoints will function
independently of the special Code Coverage breakpoints.

Branch Coverage
Branch Coverage, supported for COBOL only, indicates whether the next verb is intended
for execution or some other verb is intended for execution after each qualifying
condition statement.

The qualifying condition statements include IF, ON n, and WHEN. The collection of
branch coverage statistics is optional during a Code Coverage session. Frequency
information is carried into the repository for any COUNT command you issue.

Collection of Branch Coverage information is optional with Xpediter/IMS and the


default setting is “No Branch Coverage.” To change the default for all users at your site
requires that the site-specific default defined to Xpediter/IMS be changed to specify the
following:

CTLBRCOV=Y

For additional information on setting the collection of Branch Coverage information


with Xpediter/TSO, refer to Appendix G of the Xpediter/TSO and Xpediter/IMS Installation
Guide.

Branch Coverage can be set ON or OFF for a single execution by including the SET
BRCOV ON/OFF command in the initial script invoked when the Code Coverage
collection takes place. The SET BRCOV command can also be specified in a site-wide
script.

Collection of Branch Coverage information can cause the Code Coverage collection
process to run longer since more detailed information is being collected. Xpediter/IMS
Release 6.5 and above include a new breakpoint processing technology that reduces the
overhead associated with collection of Branch and Frequency data. Refer to Steps 5 and
13 of the Xpediter/TSO and Xpediter/IMS Installation Guide for information on how to
implement this new breakpoint technology.
8-10 Xpediter/Code Coverage Mainframe User/Reference Guide
9-1

Chapter 9.
Test Data Optimization Chap 9

Whenever you have changes to program code, you can run one of Compuware’s
mainframe debuggers in conjunction with Code Coverage to make sure a significant
percentage of your program is still executing properly. Some users feed large volumes of
data into an application, hoping to achieve the desired percentage of statements
executed. It’s possible that not all of those input records are really necessary for a
thorough test. If you could identify the ideal subset of records that would most
thoroughly drive the different paths through a program, you could save all the wasted
time and resources consumed by testing with vast quantities of data.

Code Coverage’s Test Data Optimization (TDO) identifies records that are “active” when
statements are first marked executed. For programs in which the paths taken are
determined by data content on a current input record, TDO can help identify an
optimized subset of records that yield an acceptable execution percentage. Testing with
this subset of records can significantly reduce execution time and conserve resources.

Collecting TDO Information


TDO information can only be collected during an Xpediter/TSO or Xpediter/IMS test for
a program with Code Coverage active.

The TDO routines monitor native COBOL files (QSAM and VSAM) and IMS files only
within programs compiled with a COBOL II or later version of the COBOL compiler. You
can optionally exclude certain files from monitoring. As the test runs, each time a
statement is first executed, Code Coverage routines determine the current record of each
applicable file. At the end of the test, the record identification data is written to a
physical-sequential fixed-blocked file in the form of 80-byte control cards. The formats of
this information are suitable as input to a File-AID/MVS or File-AID for IMS utility which
can be used to extract the data. These utilities typically use relative record location or key
information to identify the records.

Enabling TDO for a Test


The Code Coverage screen shown in Figure 9-1 on page 9-2 is accessed by selecting
option C on the Xpediter/TSO Setup Menu.

The Repository DSNAME, System Name, and Test ID fields are essentially unchanged. All
fields below them are new and allow you to specify your preferences for TDO file
allocation.
9-2 Xpediter/Code Coverage Mainframe User/Reference Guide

Figure 9-1. Xpediter/TSO Code Coverage Screen

Profile: PROG01 ----- XPEDITER/TSO - CODE COVERAGE --------------------------


COMMAND ===>

Repository DSNAME ===> 'USER262.REPOSIT'

System Name ===> PAYROLL Test ID ===> TDO 1

Test Data Optimization Dataset: (DSNAME will be generated if blank)
DSNAME ===> TEST.XVTDOOUT

Data Class ===>
Space Units ===> TRK
Primary ===> 2 Disposition Options:
Secondary ===> 2 A (Append)
Storage Class ===> D (Delete)
Unit ===> K (Keep)
Volume ===> ? (Prompt)

Disposition After the Test ===> K (K or ?)

Disposition Before the Test ===> A (A, D, or ? Only if DSN specified)

Press ENTER to Process or Enter END Command to Terminate

New Input Fields


DSNAME
Specifies the XVTDOOUT dataset name where Xpediter will write the TDO
information. The dataset will be created if it does not already exist. The DSNAME
field is limited to 46 characters in length. If this field is left blank, Xpediter will
generate a DSNAME with the following format:

'userID.XPTDO.mmmdd.Thhmmss'

where mmm is a three-character abbreviation for the current month, dd is the current
date in the month, and hhmmss is the current time of day, in hours, minutes, and
seconds.
Data Class, Space Units, Primary, Secondary, Storage Class, Unit, Volume
Specifies the allocation parameters according to your site’s standards if the dataset
needs to be created.
Disposition After the Test
Specifies either of the following:

K Keep the dataset after the test is completed.


? After the test is completed, prompt for an action to be taken against the dataset.

Disposition Before the Test


Specifies one of the following:

A Append the new TDO information to the existing data in the dataset.
D Delete and recreate the current dataset.
? Before the test begins, prompt for an action to be taken against the dataset.

Requesting TDO for a Test


Test Data Optimization collection can be requested for TSO Interactive tests, or Batch
Connect Interactive or Unattended tests.
Test Data Optimization 9-3

For a TSO Interactive session, such as one originating from the Xpediter/TSO Standard
(2.1) screen, request TDO in the standard Code Coverage Test? field near the bottom of
the screen. If you specify TDO, Code Coverage and TDO information will be collected
during your test. If you specify YES, standard Code Coverage statistics will be gathered,
but no TDO data will be collected.

Figure 9-2. Xpediter/TSO Standard Environment Test Screen

Profile: PROG01 ------- XPEDITER/TSO - STANDARD (2.1) -----------------------


COMMAND ===>

COMMANDS: SEtup (Display Setup Menu)
PROFile (Display Profile List)
TEST SELECTION CRITERIA:

Program ===> PROG01
Entry Point ===>
Load Module ===>

Initial Script ===>
Post Script ===>

PARM ( Caps = YES ) ===>

File List/JCL Member ===> FAU(PROG0001)
Preview Files? ===> NO
Code Coverage Test? ===> TDO (YES, NO, TDO)
Is This a DB2 Test? ===> NO Plan ===> System ===>

Press ENTER to process or enter END command to terminate

Batch Connect tests can be started on the Select Job Step screen (Figure 9-3) with two
new options. Use the IT line command to request a Batch Connect Interactive test with
Code Coverage and TDO. Use the UT line command to request a Batch Connect
Unattended test with Code Coverage and TDO.

Figure 9-3. Xpediter/TSO Select Job Step Screen

----------------------- XPEDITER/TSO - SELECT JOB STEP ----- Row 1 to 2 of 2


COMMAND ===> SCROLL ===> PAGE

Line Commands: Primary Commands:
I - Interactive testing Edit - Display converted selected steps
U - Unattended testing END - Exit without processing
IC - Interactive Code Coverage RUN - Submit and connect
IT - IC with Test Data Optimize SEtup - Setup work datasets
UC - Unattended Code Coverage SUBmit - Convert selected steps and submit
UT - UC with Test Data Optimize STatus - Display status of submitted job(s)

Dataset: 'ACMJET0.BATCON.JCL(TRIM3D)'

PROGRAM INITSCR POSTSCR STEPNAME PROCNAME PROCSTEP EXEC PGM
----------------------------------- -----------------------------------------
__ IEBGENER ________ ________ RUNPROG
__ TRIM3D ________ ________ RUNPROG
******************************* Bottom of data ********************************

Excluding Files from TDO


You may know certain COBOL or IMS files in a test that would not be good candidates for
optimization. Excluding those files can save processing overhead and reduce the size of
the XVTDOOUT file.

Xpediter provides two methods of excluding files by specifying their DDNAMEs or


DBDNAMEs. In the first method, the specification is made in the Xpediter/TSO or
9-4 Xpediter/Code Coverage Mainframe User/Reference Guide

Xpediter/IMS site defaults macro ADSCPDEF. In ADSCPDEF, add a new keyword


specification CTLDDTDX as follows:

CTLDDTDX=(file1,file2,file3,file4,file5)

where file1, file2, etc. are the DDNAME or DBDNAME to be excluded.

Note: PTF XTD0034 must be applied to Release 7.4 of Xpediter to enable specification of
file exclusions in the ADSCPDEF macro.

The second method of excluding files from TDO replaces the macro file list with a set of
file specifications customized for a single test. Use the following SET command:

SET TDODDXCL file1 file2 ...

to specify from one to eight DDNAMEs/DBDNAMEs from your list of files to exclude.
Additional SET commands can be entered to specify up to 100 files. Any SET command
containing more than eight names will be truncated. The entire list will be ignored if the
SET command would cause the total number of specified files to exceed 100. For any file,
the command must be entered before the file is opened. The commands can be placed in
an initial script.

In both methods of files exclusion, you can terminate a file specification with a forward
slash (/) to match for any DDNAME of DBDNAME with a prefix identical to the
characters preceding the slash. For example, you could use the following command:

SET TDODDXCL INFI/

to exclude from TDO collection any DDNAME/DBDNAME whose name begins with the
characters INFI, such as INFILE1, INFILE12, INFINITY, etc.

Format of the XVTDOOUT dataset


When your test session is done, the XVTDOOUT file will contain 80-byte control-card
images you can use as input to File-AID/MVS or File-AID for IMS utilities. To interpret the
specific formats of the criteria-specification cards pertaining to these products, refer to
the Reference Manual for each product.

The TDO routines write a comment header at COBOL initialization time with the
following format:

*TDO: JOBNAME jobname STEPNAME stepname PROCSTEP procstep


*TDO: DATE mm/dd/yyyy TIME hh:mm:ss
*

where

jobname the jobname of the test session


stepname the stepname of the test session
procstep the procedure stepname of the test session
mm/dd/yyyy the date at COBOL initialization
hh:mm:yy the time of the COBOL initialization

This is followed by a series of control cards, grouped by file. Each grouping is separated
from the next by a card with a single asterisk in position one. The COBOL file
specifications precede the IMS file specifications. For sessions producing cards of both
types, the dataset will need to be divided manually, since they will each be input to a
distinct utility.

Note: GSAM file control cards are designed to be extracted by the File-AID/MVS utility,
not by File-AID for IMS.
Test Data Optimization 9-5

COBOL and GSAM Files


Each COBOL file grouping begins with a comment card with the following format:

*TDO: type ddspec <==> progname FD: fd-specification

where

type file type (QSAM, ESDS, KSDS, RRDS)


ddspec utility DDNAME specification ($$DD01, $$DD02, …)
progname COBOL PROGRAM ID
fd-specification name on the FD card in the FILE SECTION

Each IMS (GSAM) file grouping begins with a comment card with the following format:

*TDO: GSAM ddspec <==> progname DB: dbd-name

where

ddspec utility DDNAME specification ($$DD01, $$DD02, …)


progname COBOL PROGRAM ID
dbd-name the DBDNAME of the GSAM file

In these groupings, this comment will be followed by the cards that can be used with the
File-AID/MVS utility to subset the file.

IMS (non-GSAM) Files


Each IMS (non-GSAM) file grouping begins with a comment card with the following
format:

*TDO: IMS dbdtype <==> progname DB: dbd-name

where

dbdtype file type (HSAM, HISAM, SHSAM, SHISAM, HDAM, PHDAM, HIDAM, PHIDAM, PSINDEX)
progname COBOL PROGRAM ID
dbd-name the DBDNAME of the IMS file

In the grouping, this comment will be followed by the cards that can be used with the
File-AID for IMS utility to subset the file.
9-6 Xpediter/Code Coverage Mainframe User/Reference Guide
Part 3.
3 Using Xpediter/Code Coverage with
Xpediter/CICS
Xpediter/Code Coverage Mainframe User/Reference Guide
10-1

Chapter 10.
Using Code Coverage with Xpediter/CICS Chap 10

This chapter explains how to use Xpediter/Code Coverage with Xpediter/CICS and
includes the following sections:

• “Overview”
• “Preliminary Considerations”
• “CICS Code Coverage Transactions”
• Various screen descriptions
• “Line Commands”
• “Primary Commands”.

Note: All the procedures in this and subsequent chapters assume that Code Coverage
has been properly installed and configured in accordance with the Compuware
Installer Mainframe Products SMP/E Installation Guide and the Xpediter/Code Coverage
Installation Guide. The configuration procedure includes the creation of the CICS
Program Inventory dataset.

Overview
Using Code Coverage with Xpediter/CICS is a three-stage process:

• Program preparation
• Online data collection
• Reporting.

Each stage is discussed in greater detail below, and the entire process is illustrated in
Figure 10-1 on page 10-2.

Program Preparation
During the program preparation step, your programs are set up for Code Coverage
collection. In addition to the load module needed to execute any program in CICS, a
Compuware source listing member and a Code Coverage Program Inventory member are
also required.

Running the Compuware language processor creates the Compuware source listing
member. This step is also required to debug a program using source in Xpediter/CICS.
Creating a source listing member is discussed in greater detail in the Xpediter/CICS User's
Guide for the language being compiled.

In addition to the load module and source listing, Code Coverage in CICS requires that
an entry for the program/load module combination be added to the Code Coverage
Program Inventory file. This member is used to provide a correlation between the verbs
in a program and the generated machine instructions in the load module. This
accelerates Code Coverage collection in CICS. Adding a member to the Program
Inventory file is called “population” and can be accomplished in batch or by using the
ISPF Program Inventory Utility.
10-2 Xpediter/Code Coverage Mainframe User/Reference Guide

Figure 10-1. Xpediter/Code Coverage Process in a CICS Environment


Using Code Coverage with Xpediter/CICS 10-3

Online Data Collection


Code Coverage collection in CICS is a four-stage process:

1. Define the test criteria


2. Start the Code Coverage data collection
3. Execute the CICS transactions
4. Halt the Code Coverage collection.

Define the Code Coverage Test


The Code Coverage test name is defined using the Test Definition screen (Figure 10-2).
The test name is comprised of a system name and a test identifier.

Figure 10-2. Test Definition Screen

--------------- XPEDITER/Code Coverage - Test Definition (1) --------------C123


COMMAND ==> SCROLL ==> CSR
USERID: ACMJET0
Entry 1 of 4
Available Commands are highlighted:
(S) Specify Collection (H) Halt Collection (V) View Collection Activity
(SC) Start Code Coverage (SF) Start System Flow (SB) Start Both
(E) Extract Entry (ES) Extract System Next Full Extract:
(D) Delete Entry (DS) Delete System Current Time:
(B) Browse (A) Archive
Code System
CMD System Name Test Identifier Owner Status Coverage Flow
---- *************** *************** ******** -----------------------------
__ PAYROLL ACCOUNTING ACMJET0 Incomplete
__ PAYROLL ALL BUT JOE ACMJET0 Available
__ PAYROLL DEVELOPMENT ACMJET0 Incomplete
__ LAYROLL ONLY JOE ACMJET0 Available
__ _______________ _______________
__ _______________ _______________
__ _______________ _______________
__ _______________ _______________
__ _______________ _______________
__ _______________ _______________
PF1 Help PF3 End Extract All (Y/N): N

The Test Definition/Collection Specification screen (Figure 10-3 on page 10-4) is used to
specify which users, transactions, programs, and CSECTs should be collected during the
Code Coverage test. This screen can also optionally be used to validate that all required
elements (Program Inventory member, load module/program, and source listing) are
available within CICS before running the Code Coverage collection. The status of the test
on the Test Definition screen (Figure 10-2) will be shown as Available after definition
and before starting the test.
10-4 Xpediter/Code Coverage Mainframe User/Reference Guide

Figure 10-3. Test Definition/Collection Specification Screen

-- XPEDITER/Code Coverage - Test Definition/Collection Specification (1) --C123


COMMAND ===>
Userid: ACMJET0
System Name: PAYROLL Testid: ACCOUNTING Owner: ACMJET0
Status: Available User added
Available Line Commands: (D) Delete (V) Validate
--------------------- Include ------------------- | -------- Exclude --------
CMD User CMD User CMD User CMD User | CMD User CMD User
U _ ******** _ ________ _ ________ _ ________ | _ CARTMAN _ KENNY
S _ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
E _ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
R _ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
S _ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
_ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
_ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
_ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
_ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
Tran Program CSECT Tran Program CSECT | Tran Program CSECT
M _ **** ******** ******** _ ____ ________ ________ | _ SPIN SOUTH PARK
A _ ____ ________ ________ _ ____ ________ ________ | _ ____ ________ ________
S _ ____ ________ ________ _ ____ ________ ________ | _ ____ ________ ________
K _ ____ ________ ________ _ ____ ________ ________ | _ ____ ________ ________
S _ ____ ________ ________ _ ____ ________ ________ | _ ____ ________ ________
PF1 HELP PF3 EXIT PF4 Validate All

Start the Test


Enter the SC line command on the Test Definition screen (Figure 10-2 on page 10-3) to
start Code Coverage collection. The status of the test on the Test Definition screen is then
shown as Collecting.

Execute the CICS Transactions


In this stage, the user runs the transactions that will cause the programs specified on the
Test Definition/Collection Specification screen to be executed. Xpediter/Code Coverage
keeps track of what parts of each program are executed. When all the
transactions/programs have been run, Code Coverage collection can be halted.

Halt the Code Coverage Collection


Return to the Test Definition screen to halt the collection. After entering the H (Halt
Collection) line command, the status of the test on the Test Definition screen will
initially be shown as Quiescing, and then change to Available. A message will be
displayed indicating that data extraction is complete. This means that the Code Coverage
data has been written from CICS storage to the Code Coverage extract file. At this point
(by default), a batch job will be submitted that will write the Code Coverage data from
the CICS extract file to the Code Coverage repository. The process of writing the Code
Coverage data from the CICS extract file to the Code Coverage repository is known as
“hardening”.

Reporting
After the Code Coverage data has been written to the repository, it can be reported on.
On the mainframe, reporting is done using the ISPF Code Coverage reporting screen. This
process is described in Chapter 3, “Generating Code Coverage Reports”. On the
workstation, DevEnterprise provides powerful display, analysis, and report generating
functions that are described in the Xpediter/Code Coverage Workstation User/Reference Manual.
Using Code Coverage with Xpediter/CICS 10-5

Preliminary Considerations
Before Code Coverage can be used under Xpediter/CICS, several considerations must be
taken into account:

• A Program Inventory file must be created. This is normally done during Code
Coverage installation.
• The Program Inventory file must be populated with the names of all the programs for
which you want to collect data. You can use COLLECT control statements from
within the Populater to designate specific programs for Code Coverage monitoring,
or use the Program Inventory Utility to select covered programs. For more
information, refer to Chapter 12, “CICS Populater” and Chapter 13, “Program
Inventory Utility”.
• You must ensure the value of the Xpediter/CICS global parameter XDCC is set to YES
(the default).
• You must ensure the value of the Xpediter/CICS Code Coverage global parameters
XVCC and XVSC match the transaction codes which default to XVCC and XVSC.
• You must ensure the load library containing Xpediter/CICS has been added to the
DFHRPL concatenation. This loadlib is provided as XPED.CICS.LOAD.
• You must ensure the load library containing Code Coverage has been added to the
DFHRPL concatenation. The file name is SYS2.XPCOVER.V3R1M0.LOADLIB.
• You must ensure a DD statement for the Code Coverage Program Inventory dataset
XVTPGINV has been added to your site’s startup JCL. Do not define this file with
RDO.
• You must create an Extract dataset (XVTCEXTR) for the intermediary Code Coverage
data.
• Optionally, you can create a JCL Template dataset (XVTCEXTJ) that contains the JCL
to write the intermediary Code Coverage data to the Code Coverage repository.
• Optionally, you can create a Save Specifications dataset (XVTCSPEC) to provide an
archive for Code Coverage test definitions.

CICS Code Coverage Transactions


The CICS component of Xpediter/Code Coverage provides two transactions to gain
access to the product to define or view collection specifications. A user who has been
granted authority to use the XVCC transaction is considered to be a “Standard” user. A
user who has been granted authority to use the XVSC transaction is considered to be an
“Administrator” The demarcation between a “Standard” user and an “Administrator” is
noted in Table 10-1.

Table 10-1. Transaction Authority and Standard and Administrator Users


User Type XVCC XVSC Privileges
Access to all screens in the CICS component of Xpediter/Code Coverage.
Standard Yes No Deletion of records in the Specification Dataset is limited to records where
their userid matches the ownerid of the record.
All the same access as a “Standard” user but can delete any record in the
Administrator Yes Yes
Specification Dataset.

Accessing or Bypassing the Xpediter/Code Coverage Primary Menu


To access the Xpediter/Code Coverage Primary Menu:
10-6 Xpediter/Code Coverage Mainframe User/Reference Guide

• Type XVCC or XVSC on a blank CICS screen and press Enter; or


• Use the =C transfer command from within Xpediter/CICS.

To bypass the Xpediter/Code Coverage Primary Menu and directly access the Test
Definition screen:

• Type XVCC 1 or XVSC 1 on a blank CICS screen and press Enter; or


• Use the =C.1 transfer command from within Xpediter/CICS.

To bypass the Xpediter/Code Coverage Primary Menu and directly access the
Specification Archive screen:

• Type XVCC 2 or XVSC 2 on a blank CICS screen and press Enter; or


• Use the =C.2 transfer command from within Xpediter/CICS.

Interface Conventions
This section discusses the following Xpediter/CICS Code Coverage product conventions:

• Common screen fields


• PF key settings

Common Screen Fields


Each screen is identified on the top line by a title or a screen ID. You can navigate from
one Xpediter/CICS Code Coverage screen to another using the primary menu or screen
IDs (fast path).

Figure 10-4. Common Xpediter/Code Coverage Screen Elements for CICS

--------------- XPEDITER/Code Coverage - Test Definition (1) --------------C123


COMMAND ===> SCROLL ===> CSR 
Userid: ACMJET0

Figure 10-4 shows the screen areas and fields that are common across Xpediter/CICS
Code Coverage screen. Each area or field is described below.

Screen Title and ID


Each screen title and ID is unique. Specify the screen ID in the COMMAND field to
display that screen. For example, =1 displays the Test DEFINITION screen.
System ID
The SYSIDNT value for the current CICS region is conveniently displayed in the
upper-right corner of every screen.
COMMAND Field
Type primary commands and screen IDs in the COMMAND field. Some PF keys also
depend on the parameters that you enter in this field. Multiple primary commands,
separated by the current command delimiter (semicolon), can be entered at the same
time.
The HELP primary command cannot be entered together with other commands, and
multiple primary commands cannot be entered from the Code Coverage Help
facility.
SCROLL Field
Sets the scroll value for screens that permit scrolling.
Using Code Coverage with Xpediter/CICS 10-7

Userid Field
The CICS userid of the current user.

PF Key Settings
Xpediter/CICS Code Coverage uses PF keys for command shortcuts. For example, to
display HELP information about the DOWN command, type DOWN in the COMMAND
field and press PF1 (HELP).

The values for the PF keys are shown in Table 10-2. Not all PF keys are available on all
screens. Each Code Coverage screen will display the PF keys available at the bottom of
the screen.

Table 10-2. Program Function Key Settings


Function PF Keys Description Available on Screen
Help PF1 Invokes the Help system. All screens
Copyright PF2 Displays the Copyright/Trade Secrets text. Primary Menu
Exits from the current screen. Returns to the previous screen.
End PF3 All screens
If on the Primary Menu, exits the product.
Validate PF4 Validated specification criteria. Selected screens
RFIND PF5 Repeat action of previous FIND command. Help screens only
UP PF7 Scrolls backwards in currently displayed data. Selected screens
DOWN PF8 Scrolls forwards in currently displayed data. Selected screens

Xpediter/Code Coverage Primary Menu


The Xpediter/Code Coverage Primary Menu shows the name and screen number for each
functional area. Use this screen to transfer to a functional area. To access the primary
menu, type XVCC or XVSC on a blank CICS screen and press Enter, or use the =C
primary command from Xpediter/CICS.

Figure 10-5. Xpediter/Code Coverage Primary Menu

-------------- Xpediter/Code Coverage 17.02.00- Primary Menu --------------C123


COMMAND ===>
Userid:

1 TEST DEFINITION - Define/Control Collection Specifications
2 SPECIFICATION ARCHIVE - Access Specification Archive
X EXIT - Exit Xpediter/Code Coverage


For Online Technical Support refer to: http://frontline.compuware.com


NOTICE: Press PF2 to display the Copyright/Trade Secret Notice

To select an option from this screen you may:

• Enter the number or letter of the screen you wish to transfer to (or in the case of X,
exit the product) in the command line and press Enter.
• Tab to the field before the number or letter, type S, and press Enter.
• Enter SEL or SELECT in the command line, place the cursor on the line for the item
you wish to transfer to, and press Enter.
10-8 Xpediter/Code Coverage Mainframe User/Reference Guide

Test Definition Screen


The Test Definition screen (Figure 10-6) allows you to view the current status of all
system name and test identifier combinations defined for Code Coverage. It also allows
you to create new system name and test identifier entries. Entries are listed alphabetically
in system name and test identifier order. Access the Test Definition screen using option 1
from the Primary Menu (Figure 10-5 on page 10-7).

Figure 10-6. Test Definition Screen

--------------- XPEDITER/Code Coverage - Test Definition (1) --------------C123


COMMAND ==> SCROLL ==> CSR
USERID: ACMJET0
Entry 1 of 4
Available Commands are highlighted:
(S) Specify Collection (H) Halt Collection (V) View Collection Activity
(SC) Start Code Coverage (SF) Start System Flow (SB) Start Both
(E) Extract Entry (ES) Extract System Next Full Extract:
(D) Delete Entry (DS) Delete System Current Time:
(B) Browse (A) Archive
Code System
CMD System Name Test Identifier Owner Status Coverage Flow
---- *************** *************** ******** -----------------------------
__ PAYROLL ACCOUNTING ACMJET0 Incomplete
__ PAYROLL ALL BUT JOE ACMJET0 Available
__ PAYROLL DEVELOPMENT ACMJET0 Incomplete
__ LAYROLL ONLY JOE ACMJET0 Available
__ _______________ _______________
__ _______________ _______________
__ _______________ _______________
__ _______________ _______________
__ _______________ _______________
__ _______________ _______________
PF1 Help PF3 End Extract All (Y/N): N

Output Fields
USERID
The userID of the person accessing the screen.
Entry x of y
The current, top entry (x) and the total number of entries (y) available for display.
Available Commands
A list of line commands available for use on this screen. Valid commands for the
current Code Coverage state are highlighted. The actions of the various commands
are described in “Line Commands” on page 10-26.
Next Full Extract
The next time a full extract will occur. At that time, all system name and test
identifier combinations in Collecting status will have their collected data extracted
and optionally written (hardened) to the Code Coverage repository.
Current Time
The current time at which this screen was most recently displayed.
Owner
The userID of the person who created each system name and test identifier. If the
entry was created during product initialization by use of the DBPA input facility,
DBPA will be displayed in this field.
Using Code Coverage with Xpediter/CICS 10-9

Status
The current status of each system name and test identifier. Possible statuses are:

Insufficient inclusion and exclusion rules have been specified to make this system
Incomplete
name and test identifier available for collection.

Sufficient inclusion and exclusion rules have been specified for this system name and
Available test identifier. Collection may be started by using the SC (Start Code Coverage), SF
(Start System Flow), or SB (Start Both) commands on the Test Definition screen.

Collection of data for this system name and test identifier is being held due to an H
Quiescing
(Halt Collection) command being issued.

Collecting Collection of data for this system name and test identifier is currently in progress.

Code Coverage
Displays YES if the system name and test identifier have normal Code Coverage
collection active or NO if no Code Coverage collection is active. This field will only
display if the current status is Collecting.
System Flow
Displays YES if the system name and test identifier have System Flow collection
active or NO if no System Flow collection is active. This field will only display if the
current status is Collecting.

Input Fields
CMD
Allows entry of one of the line commands described in “Line Commands” on page
10-26.
Filters (Only available if Xpediter/CICS release 17.02 or above is installed)
In the separator line beneath the column names is a filter area that can be used to
reduce the number of detail lines displayed. The columns that can be filtered are
System Name, Test Identifier, and Owner. These filters are primed with asterisks.
Entering an asterisk (*) in any position wildcards that position. Entering anything
other than an asterisk means the corresponding position must match that character.
Filters remain in effect only as long as you remain in the Code Coverage screens. If
you exit Xpediter/Code Coverage by clearing the screen or using the =X primary
command, the filters will be reset to asterisks the next time you access the screens.
The product installer can configure Xpediter/Code Coverage to prime the Owner
filter with your userID by setting the global table parameter FILTDEFU=YES. If not, it
will be primed with asterisks. This parameter can also be set using global table
overrides.
The filters are shared by the Test Definition and Specification Archive screens.
System Name
Allows entry of a system name to be used for data collection. A TestID name must
also be specified. A system name may be used for several TestID names. This field is 1-
15 characters in length and may contain blanks but may not contain asterisks (the
wildcard character).
Once a system name and test identifier combination has been specified, the System
Name and Test Identifier fields become protected; you cannot change these fields for
an entry.
10-10 Xpediter/Code Coverage Mainframe User/Reference Guide

Test Identifier
Allows entry of a TestID name to be used for data collection. A system name must
also be specified. This field is 1-15 characters in length and may contain blanks but
may not contain asterisks (the wildcard character).
Once a system name and test identifier combination has been specified, the System
Name and Test Identifier fields become protected; you cannot change these fields for
an entry.
Extract All (Y/N)
Whether or not to cause data for all system name and test identifiers that are in a
collecting status to be extracted and written to the Code Coverage Repository. Enter
Y (Yes) allow extraction. The default value, N (No), bypasses extraction for all
collecting entries.

Program Function Keys


Displays the allowed program function keys and their related actions. The following
program function keys may be used when displayed:

HELP. Displays help information about this screen. When displaying help for this screen, fields that
PF1 are in high intensity (default color red) may be tabbed to. When the cursor is placed on a high
intensity (red) field, pressing Enter will cause additional help text to be displayed regarding a topic.

PF3 END. Allows you to exit from the displayed screen.

PF7 BACKWARD. If displayed, allows you to scroll backward in the currently displayed data.

PF8 FORWARD. If displayed, allows you to scroll forward in the currently displayed data.

Test Definition/Collection Specification Screen


The Collection Specification screen (Figure 10-7) gives users the ability to add inclusion
and exclusion rules for a given system name and test identifier combination. Inclusion
and exclusion rules both have Userid and Transaction, Program, or CSECT entries. These
entries can be used to tailor the system name and test identifier in order to collect
specific Code Coverage and System Flow data. Wildcard entries are allowed for all fields
in the inclusion and exclusion rules.

Note: When a transaction-program-csect combination matches both an include rule and


an exclude rule, if any part of the exclude rule is more specific than the include
rule, collection for that transaction-program-csect combination is not performed.
If the include mask and exclude mask are equal the collection is not performed.

Access this screen using the S (Specify Collection) line command on the Test Definition
screen. Access this screen in browse only mode (no updates can be made) using the B
(Browse) line command on the Test Definition screen.
Using Code Coverage with Xpediter/CICS 10-11

Figure 10-7. Collection Specification Screen

-- XPEDITER/Code Coverage - Test Definition/Collection Specification (1) --C123


COMMAND ===>
Userid: ACMJET0
System Name: PAYROLL Testid: ACCOUNTING Owner: ACMJET0
Status: Available User added
Available Line Commands: (D) Delete (V) Validate
--------------------- Include ------------------- | -------- Exclude --------
CMD User CMD User CMD User CMD User | CMD User CMD User
U _ ******** _ ________ _ ________ _ ________ | _ CARTMAN _ KENNY
S _ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
E _ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
R _ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
S _ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
_ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
_ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
_ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
_ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
Tran Program CSECT Tran Program CSECT | Tran Program CSECT
M _ **** ******** ******** _ ____ ________ ________ | _ SPIN SOUTH PARK
A _ ____ ________ ________ _ ____ ________ ________ | _ ____ ________ ________
S _ ____ ________ ________ _ ____ ________ ________ | _ ____ ________ ________
K _ ____ ________ ________ _ ____ ________ ________ | _ ____ ________ ________
S _ ____ ________ ________ _ ____ ________ ________ | _ ____ ________ ________
PF1 HELP PF3 EXIT PF4 Validate All

Output Fields
System Name
The system name portion of the system name and test identifier entry that is
displayed.
TestID
The test identifier portion of the system name and test identifier entry that is
displayed.
Userid
The userid of the person currently accessing the screen.
Status
The current status of the system name and test identifier entry that is displayed.
Statuses that may be displayed are:

Additional inclusion and exclusion rules need to be specified in order to make this
Incomplete
system name and test identifier available for collection.

This system name and test identifier has sufficient inclusion and exclusion rules
Available specified. Collection may be started by using the SC (Start Code Coverage), SF (Start
System Flow), or SB (Start Both) commands on the Test Definition screen.

Collection of data for this system name and test identifier is being halted due to an H
(Halt Collection) command being issued. Once all transactions being code covered by
Quiescing
this system name and test identifier have ended, the status will be changed to
available. Collection can be resumed using on of the start commands (SC, SF, or SB).

Collecting Collection of data for this system name and test identifier is currently in progress.

Owner
The userid of the person who created this system name and test identifier entry. If
this entry was created during product initialization by use of the DBPA input facility,
DBPA will be displayed.
10-12 Xpediter/Code Coverage Mainframe User/Reference Guide

Available Commands
A list of available line commands which can be used on this screen. Valid commands
will have the command highlighted, for example (D) Delete. The actions of the
various commands are described in “Line Commands” on page 10-26.

Input Fields
The Collection Specification screen is divided into two major area: the USERS area and
the MASKS area. Each major area is then divided into two subsections: the Include rules
and the Exclude rules. The Include rules are combined with the Exclude rules during data
collection to determine whether or not data will be collected. Inclusion and exclusion
rules allow for maximum granularity when attempting to collect data; however,
additional processing time is required to resolve the include and exclude rules at
execution time. See the Note text that appears following the “Test Definition/Collection
Specification Screen” on page 10-10.

Each of the fields in the USERS and MASKS area of the screen may be wildcarded by using
the * character. If a field lacks wildcard termination, an exact match on that field must
occur.

The USERS area of the Collection Specification screen lists the userid masks used to
determine if a specific or wildcarded user will participate in data collection. Thirty-six
entries are available for inclusion rules and eighteen entries are available for exclusion
rules.

The MASKS area of the Collection Specification screen lists Transaction, Program, or
CSECT masks used to determine if a specific or wildcarded combination will participate
in data collection. Ten entries are available for inclusion rules and five entries are
available for exclusion rules.

Input Fields in the USERS Screen Area


The following input fields are available in the USERS portion of the screen:

CMD Allows entry of one of the commands described in “Line Commands” on page 10-26.

Allows entry of an explicit or wildcarded userid. A userid of all asterisks means that all userIDs will
User
participate in the inclusion or exclusion rule.

Input Fields in the MASKS Screen Area


The following input fields are available in the MASKS portion of the screen. For a single
entry, all fields for that entry (Tran, Program, and CSECT) must be filled in:

CMD Allows entry of one of the commands described in “Line Commands” on page 10-26.

Allows entry of an explicit or wildcarded transaction identifier. A transaction identifier of all


Tran
asterisks means that all transaction ids will participate in the inclusion or exclusion rule.

Allows entry of an explicit or wildcarded program name. A program name of all asterisks
Program
means that all programs will participate in the inclusion or exclusion rule.

Allows entry of an explicit or wildcarded CSECT name. A CSECT name of all asterisks means
CSECT
that all CSECTs will participate in the inclusion or exclusion rule.
Using Code Coverage with Xpediter/CICS 10-13

Program Function Keys


Displays the allowed program function keys and their related actions. The following
program function keys may be used when displayed.

HELP. Displays help information about this screen. When displaying help for this screen, fields that
PF1 are in high intensity (default color red) may be tabbed to. When the cursor is placed on a high
intensity (red) field, pressing Enter will cause additional help text to be displayed regarding a topic.

PF3 END. Allows you to exit from the displayed screen.

VALIDATE ALL. Begins the process of validating each wildcarded program and CSECT
combination. The Collection Validation screen will be displayed for each combination up to a
PF4
maximum of 10 after pressing PF4. Once validation is complete, display returns to the Collection
Specifications screen.

Mask Examples
Mask entries are sorted based on Tran, Program, and CSECT field values, in that order,
with the most specific entries taking precedence over less specific ones.

Example 1
In the example shown in Figure 10-7 on page 10-11, all users will be included for data
collection, except for users CARTMAN and KENNY. If a transaction is executed by a user
other than CARTMAN or KENNY, then the MASKS section of the rules will be checked. If
users CARTMAN or KENNY have initiated a transaction, then no data collection will take
place for that explicit execution of the transaction.

Also in the example shown in Figure 10-7 on page 10-11, all transactions, programs, or
CSECTs will be included for data collection, except for CSECT PARK, in program SOUTH,
when initiated by transaction SPIN. Data will be collected if any user other than
CARTMAN or KENNY, who have been excluded by the USERS rules, executes any
transaction except for transaction SPIN, which invokes program SOUTH which executes
CSECT PARK in program SOUTH. If a user executes transaction SPIN, and CSECT PARK in
program SOUTH is executed by that transaction, all data except that data for CSECT
PARK will be collected.

Example 2
In Figure 10-8, the include mask would cause data to be collected for all programs
beginning with CW, but the more specific exclude mask would override it and prevent
collection for CSECT CWCDSUBA.
10-14 Xpediter/Code Coverage Mainframe User/Reference Guide

Figure 10-8. Precedence on the Collection Specification Screen Via XVCC Transaction

------------- XPEDITER/Code Coverage - Collection Specification -----------C123


COMMAND ===> Scroll ===> CSR
Userid: ACMJET0
System Name: MASK Testid: TEST IDENT ONE Owner: ACMJET0
Status: Available MASK ADDED.
Available Commands: (D) Delete (V) Validate
--------------------- Include ------------------- | -------- Exclude --------
CMD User CMD User CMD User CMD User | CMD User CMD User
U _ ******** _ ________ _ ________ _ ________ | _ ________ _ ________
S _ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
E _ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
R _ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
S _ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
_ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
_ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
_ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
_ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
Tran Program CSECT Tran Program CSECT | Tran Program CSECT
M _ **** CW****** ******** _ ____ ________ ________ | _ **** CW****** CWCDSUBA
A _ ____ ________ ________ _ ____ ________ ________ | _ ____ ________ ________
S _ ____ ________ ________ _ ____ ________ ________ | _ ____ ________ ________
K _ ____ ________ ________ _ ____ ________ ________ | _ ____ ________ ________
S _ ____ ________ ________ _ ____ ________ ________ | _ ____ ________ ________
PF1 Help PF3 End PF4 Validate All

Collection Validation Screen


The Collection Validation screen shown in Figure 10-9 displays the results of validating
the wildcarded program and CSECT masks entered on the Collection Specification screen
(see Figure 10-8). This screen lists each entry in the Program Inventory that matches the
criteria specified in the program and CSECT masks. The screen also displays a count of
entries passing the validation tests listed. Those tests passing the validation will be
highlighted.

Note: Although entries may pass validation tests, validation or its lack will not prevent
a mask from being accepted.

Figure 10-9. Collection Validation Screen

------------- XPEDITER/Code Coverage - Collection Validation -------------C123


COMMAND ===> Scroll ===> CSR
Userid: ACMJET0

System Name: MASK Testid: IDENT ONE Owner: ACMJET0
Status: Available MASK ADDED
Collection Matches: 00001 of 00004 Validating 01 of 01 masks

-------- Program ------- ------ Compile ------ --- Source ---- Coll
Module Lib Csect Inv Date Time Member Listing Status
------------------------ --------------------- --------------- ------------
CWDEMCB2 Y CWDEMCB2 Y 2003/04/23 15:23:00 CWDEMCB2 Y ON <---
CWDEMCB2 Y CWDEMO N 2003/10/10 10:10:09
CWDEMCB2 Y CWCDSNOC Y 2003/11/04 09:29:15 CWCDSNOC Y ON <---
CWDEMCB2 Y CWCDSUBA Y 2003/11/04 09:29:15 CWCDSUBA Y EXC
**END**
PF1 Help PF3 End PF4 Validate Next PF7 Backward PF8 Foward

Main Output Fields


Userid
The user ID of the user who is currently signed on.
System Name
The system name displayed on the Test Definition screen.
Using Code Coverage with Xpediter/CICS 10-15

Testid
The test identifier displayed on the Test Definition screen.
Owner
The owner ID displayed on the Test Definition screen.
Program/Csect
A program and CSECT combination entered on the Collection Specification screen.
Collection Matches
The number of program and CSECT combinations for which Code Coverage is
possible out of the total number of matching Code Coverage inventory members.
Because the status of a program and CSECT can change between validation and
collection, the number of matches does not guarantee coverage will occur.

Program Output Fields


Module
The name of any program that matches the mask specified on the Collection
Specification screen that exists in the program inventory. Programs are listed
alphabetically.
Lib
A flag indicating whether or not the program exists in the load library. Displays Y
(yes) if a program exists in the load library or N (no) if the program does not exist in
the load library. A load will be performed to obtain this information. The flag must
display Y for the entry to be included in the count of collection matches and for the
entry to be highlighted.
Csect
The CSECTs in the program that match the CSECT mask as obtained by scanning the
load module.
Inv
A flag indicating whether or not a program and CSECT combination exists in the
program inventory file and shows users possible CSECTs that may not be code
covered. Displays Y (yes) if a program exists in program inventory or N (no) if the
program and CSECT combination does not exist in program inventory. This flag must
display Y for the entry to be included in the count of collection matches and for the
entry to be highlighted.

Compile Output Fields


Date
The compile date from the CSECT in the load module.
Time
The compile time from the CSECT in the load module.

Source Output Fields


Member
The name of the source listing extracted from the program inventory.
Listing
A flag indicating whether or not the listing can be located in an source listing file
allocated to CICS. This flag must display Y for the entry to be included in the count
of collection matches and for the entry to be highlighted.
10-16 Xpediter/Code Coverage Mainframe User/Reference Guide

Other Output Fields


Coll Status
An indicator of the collection status for a particular program and CSECT
combination. Displays ON or OFF if specified in the program inventory. This
indicator must display ON for the entry to be included in the collection matches and
for the entry to be highlighted. Displays EXC (excluded) when an exclude, tran
program, and CSECT combination prevents Code Coverage. Displays UNS
(unsupported) if the program specified is written in an unsupported language.
Displays XDX when a program and CSECT mask combination matches an exception
displayed on the Xpediter Monitor Exceptions screen (9.4.1).
<--- (highlighting arrow)
The highlighting arrow (<---) at the right of highlighted entries indicates that a
particular entry on the Collection Validation screen has passed all validation tests.
The number of arrows displayed and the collection match count equal each other.

Program Function Keys


Displays the allowed program function keys and their related actions. The following
program function keys may be used when displayed.

HELP. Displays help information about this screen. When displaying help for this screen, fields that
PF1 are in high intensity (default color red) may be tabbed to. When the cursor is placed on a high
intensity (red) field, pressing Enter will cause additional help text to be displayed regarding a topic.

PF3 END. Allows you to exit from the displayed screen.

VALIDATE NEXT. Continues the process of validating each wildarded program and CSECT
combination started from the Collection Specification screen. The Collection Validation screen
PF4
shown here will be displayed for each program and CSECT combination up to a maximum of 10.
Once validation is complete, display returns to the Collection Specifications screen.

PF7 BACKWARD. If displayed, allows you to scroll backward in the currently displayed data.

PF8 FORWARD. If displayed, allows you to scroll forward in the currently displayed data.

All program function keys, including the Clear and Program Attention (PA) keys are
disabled except as noted. To leave this screen, you must use the PF3 or the PF4 keys, not
the Clear key. Using the PF4 key will exit the screen if there are no more entries to
validate.

Collection Activity Screen


The Collection Activity screen shown in Figure 8-8 allows XVCC or XVSC users to display
a list of all userids, programs, and CSECT executions for a given system and TestID for
which data has been collected since the last extract of data. If code has actually been
executed in a CSECT, it will be highlighted. If no code has been executed in a CSECT,
then it will display in normal intensity. The list will be displayed by Userid and Program.

Access this display-only screen using the V (View Collection) line command on the Test
Definition screen. No updates can be made from this screen. The screen consists of two
columns of data. If less than an entire screen of data is displayed, the left three columns
will be filled in first.
Using Code Coverage with Xpediter/CICS 10-17

Figure 10-10. Collection Activity Screen

---------------- XPEDITER/Code Coverage - Collection Activity -----------------



System Name: PAYROLL TestID: ACCOUNTING Owner: ACMJET0

Entry 1 of 36

Userid Program CSECT | Userid Program CSECT
---------------------------------|---------------------------------
ACMJET0 CWDYNSUB CWDYNSUB | ACMJET0 CWCDDYNC CWCDDYND
ACMJET0 CWDYNSUB CWCDDYNA | ACMJET0 CWCDDYNC CWCDDYNE
ACMJET0 CWDYNSUB CWCDDYNB | ACMJET0 CWCDDYNC CWCDDYNF
ACMJET0 CWDYNSUB CWCDDYNC | ACMJET0 CWCDDYNC CWCDDYNG
ACMJET0 CWDYNSUB CWCDDYND | ACMJET0 CWCDDYNF CWCDDYNF
ACMJET0 CWDYNSUB CWCDDYNE | ACMJET0 CWCDDYNF CWCDDYNG
ACMJET0 CWDYNSUB CWCDDYNF | ACMJET0 CWCDDYNG CWCDDYNG
ACMJET0 CWDYNSUB CWCDDYNG | ACMJET0 CWCDDYND CWCDDYND
ACMJET0 CWCDDYNB CWCDDYNB | ACMJET0 CWCDDYND CWCDDYNE
ACMJET0 CWCDDYNB CWCDDYNC | ACMJET0 CWCDDYND CWCDDYNF
ACMJET0 CWCDDYNB CWCDDYND | ACMJET0 CWCDDYND CWCDDYNG
ACMJET0 CWCDDYNB CWCDDYNE | ACMJET0 CWCDDYNE CWCDDYNE
ACMJET0 CWCDDYNB CWCDDYNF | ACMJET0 CWCDDYNE CWCDDYNF
ACMJET0 CWCDDYNB CWCDDYNG | ACMJET0 CWCDDYNE CWCDDYNG
ACMJET0 CWCDDYNC CWCDDYNC | ACMJET0 CWCDDYNA CWCDDYNA
PF1 Help PF3 End PF8 Forward

Output Fields
System Name
The system name portion of the system name and test identifier entry that is
displayed.
TestID
The test identifier portion of the system name and test identifier entry that is
displayed.
Owner
The userid of the person who created the system name and test identifier.
Entry x of y
Displays the top entry (x) of all the entries (y) that are available for display.
Userid
The userid of the person who ran the transaction that caused data to be collected for
this program and CSECT combination.
Program
Name of the program for which data is being collected.
CSECT
Name of the CSECT within the program for which data is being collected.

Program Function Keys


Displays the allowed program function keys and their related actions. The following
program function keys may be used when displayed.

HELP. Displays help information about this screen. When displaying help for this screen, fields that
PF1 are in high intensity (default color red) may be tabbed to. When the cursor is placed on a high
intensity (red) field, pressing Enter will cause additional help text to be displayed regarding a topic.

PF3 END. Allows you to exit from the displayed screen.


10-18 Xpediter/Code Coverage Mainframe User/Reference Guide

PF7 BACKWARD. If displayed, allows you to scroll backward in the currently displayed data.

PF8 FORWARD. If displayed, allows you to scroll forward in the currently displayed data.

Archiving Test Definitions


Users can save a specification in the Specification Dataset via the Archive (A) command
on the Test Definition screen.

Figure 10-11. Test Definition Screen with an Archived Specification Indicated

--------------- XPEDITER/Code Coverage - Test Definition (1) --------------C123


COMMAND ===> SCROLL ===> CSR
Userid: ACMJET0
Available Commands are highlighted:
Entry 1 of 4
(S) Specify Collection (H) Halt Collection (V) View Collection Activity
(SC) Start Code Coverage (SF) Start System Flow (SB) Start Both
(E) Extract Entry (ES) Extract System Next Full Extract: 11:13:02
(D) Delete Entry (DS) Delete System Current Time: 11:11:42
(B) Browse (A) Archive
Code System
CMD System Name Test Identifier Owner Status Coverage Flow
-----***************--***************---********-------------------------------
A_ PAYROLL ACCOUNTING ACMJET0 Incomplete
__ PAYROLL ALL BUT JOE ACMJET0 Available
__ PAYROLL DEVELOPMENT ACMJET0 Incomplete
__ PAYROLL ONLY JOE ACMJET0 Available
__ _______________ _______________
__ _______________ _______________
__ _______________ _______________
__ _______________ _______________
__ _______________ _______________
__ _______________ _______________
PF1 Help PF3 End Extract All (Y/N): N

Specifications are always saved with the current requesting userID as the owner of the
specification. If the specification already exists in the Specification Dataset, a screen
appears (Figure 10-12) asking if users wish to replace the older specification with the
newer.

Figure 10-12. Archiving Existing Specifications Via the Confirmation Screen

--------------- XPEDITER/Code Coverage - Test Definition (1) --------------C123


COMMAND ===> 
Userid: ACMJET0

System Name: MYSYSTEM
Test Identifier: MYSYSTEMIDENT
Creator: ACMJET0

This specification already exists in the Specification Dataset.

Press Enter to replace it or PF3 or CANCEL command to abort.

PF1 Help PF3 End

Specification Archive Screen


The Specification Archive file allows users to save and restore Code Coverage
specifications during new invocations of CICS or within a new CICS region, without
having to re-enter each test manually. Records defined by any owner may be archived
Using Code Coverage with Xpediter/CICS 10-19

from the Test Definition screen, but will be written to the Specification Archive file with
the requester’s userID as the owner in the key. When viewing the keys in the
Specification Archive screen, you can browse, load, or start any test, but you can only
delete your own records. If you are a superuser (able to execute the XVSC transaction)
you can delete any record.

The Specification Archive screen shown in Figure 10-13 allows users to browse the
Specification Dataset and optionally select a specification upon which to act. Access this
screen using option 2 on the Xpediter/Code Coverage Primary Menu.

Once on the Specification Archive screen, use the LOCATE command to position the
screen to a specific key or generic key. The XVTCSPEC file’s key is composed of a system
name, test ID, and owner. To locate a particular test ID, you must also include the system
name as in any generic key. If the value to be located contains any spaces, the entire key
or generic key must be enclosed in quotes.

Figure 10-13. Specification Archive Screen

------------ XPEDITER/Code Coverage - Specification Archive (2) -----------C123


COMMAND ===> SCROLL ===> CSR
Userid: ACMJET0
Entry 1 of 18
Available Commands are highlighted:
(B) Browse (SC) Start Coverage
(D) Delete (SF) Start System Flow
(L) Load (SB) Start Both
Code System
CMD System Name Test Identifier Owner Action Coverage Flow
---- *************** *************** ******** -----------------------------
__ ZIRCONIUMBASED CODECOVERAGE ACMJET0
**END OF DATA**








PF1 HELP PF3 EXIT

Output Fields
USERID
The userID of the person accessing the screen.
Entry x of y
The current, top entry (x) and the total number of entries (y) available for display.
Available Commands
A list of line commands available for use on this screen. The actions of the various
commands are described in “Line Commands” on page 10-26.
System Name
Displays the system name of the collection specification previously saved on the
Specification Archive file. The system name, TestID, and Owner form the key of that
record. This system name will be used for data collection if the chosen specification
is loaded or started.
Test Identifier
Displays the TestID name of the collection specification previously saved on the
Specification Archive File. The system name, TestID, and Owner form the key of that
10-20 Xpediter/Code Coverage Mainframe User/Reference Guide

record. This system name will be used for data collection if the chosen specification
is loaded or started.
Owner
Displays the Owner who saved this collection specification on the Specification
Archive file. The system name, TestID, and Owner form the key of that record. If the
specification is loaded or started, the userID of the person currently using this screen
will be propagated as the owner of the specification, not the userID of the person
who saved the specification as displayed in the key of the record. A user my browse,
load, or start any entry on the file regardless of the Owner who saved it.
Action
The current action resulting from the command entered on the last input screen for
each system name and test identifier. Possible actions are:

An error occurred trying to activate the current system name and test identifier
Add Failed combination. This message may be generated for the load command or any of the
start commands if the test specification is not active and an internal load is required.

The Delete command previously entered for this record has been cancelled on the
Del Cancel
delete confirmation screen.

The Specification record for this system name, test identifier, and owner has been
deleted from the Specification file. This message only appears if there are other
Deleted commands currently being processed on the same screen. If only deletion commands
exist and all are successful, the screen will be displayed with the deleted records
removed.

The system name and test identifier combination are currently in the system and may
Duplicate
not be loaded again. The combination may be started if the status is available.

The detailed specifications from this record have been entered into the current list of
test definitions with this system name and TestID. Regardless of the Owner in the
Loaded
record, the userID of the person actually performing the Load will be used as the
owner of the test definition.

Load Err The specification could not be entered into the current list of test definitions.

The specification has been loaded into the system and the start command successfully
Started issued. The Code Coverage and System Flow fields will reflect which start command
was issued.

The specification was unable to be started. Transfer to the Test Definition screen and
Start Err check the status to ensure the specification is available. If not, make the necessary
changes on the Test Definition screen and reissue the start command there.

Code Coverage
Displays YES if the system name and test identifier have just had normal Code
Coverage collection started or NO if the System Flow command was issued. This field
will only display immediately after a start command is entered (Start Coverage, Start
System Flow, or Start Both).
System Flow
Displays YES if the system name and test identifier have System Flow collection
active or NO if the Start Coverage command was issued. This field will only display
immediately after a start command is entered (Start Coverage, Start System Flow, or
Start Both).

Input Fields
CMD
Allows entry of one of the applicable line commands described in “Line Commands”
on page 10-26.
Using Code Coverage with Xpediter/CICS 10-21

Filters (Only available if Xpediter/CICS release 17.02 or above is installed)


In the separator line beneath the column names is a filter area that can be used to
reduce the number of detail lines displayed. The columns that can be filtered are
System Name, Test Identifier, and Owner. These filters are primed with asterisks.
Entering an asterisk (*) in any position wildcards that position. Entering anything
other than an asterisk means the corresponding position must match that character.
Filters remain in effect only as long as you remain in the Code Coverage screens. If
you exit Xpediter/Code Coverage by clearing the screen or using the =X primary
command, the filters will be reset to asterisks the next time you access the screens.
The product installer can configure Xpediter/Code Coverage to prime the Owner
filter with your userID by setting the global table parameter FILTDEFU=YES. If not, it
will be primed with asterisks. This parameter can also be set using global table
overrides.
The filters are shared by the Test Definition and Specification Archive screens.

Program Function Keys


Displays the allowed program function keys and their related actions. The following
program function keys may be used when displayed:

HELP. Displays help information about this screen. When displaying help for this screen, fields that
PF1 are in high intensity (default color red) may be tabbed to. When the cursor is placed on a high
intensity (red) field, pressing Enter will cause additional help text to be displayed regarding a topic.

PF3 END. Allows you to exit from the displayed screen.

PF7 BACKWARD. If displayed, allows you to scroll backward in the currently displayed data.

PF8 FORWARD. If displayed, allows you to scroll forward in the currently displayed data.

If this screen was entered through CICS, the Clear key exits the product. If this screen
was entered through Xpediter, the Clear key exits the user to the original point of entry
in Xpediter.

Confirm Test Deletion Screen


The Confirm Test Deletion screen appears when users request that test specifications be
deleted from the Archive Specification file.
10-22 Xpediter/Code Coverage Mainframe User/Reference Guide

Figure 10-14. Confirm Test Deletion Screen

------------ XPEDITER/Code Coverage - Specification Archive (2) -----------C123


COMMAND ===> SCROLL ===> CSR
Userid: ACMJET0

SYSTEM NAME: JSYS1
TEST IDENTIFIER: JSYS1
CREATOR: ACMJET0


Please confirm deletion of the above test from the XVTCSPEC file.

Press enter to delete test definition or PF3 or CANCEL command to abort.











PF1 HELP PF3 EXIT

Confirm the deletion of the Archive Specification file by pressing Enter to delete the test
definition screen.

Specification Archive/Browse Screen


The Specification Archive/Browse screen displays the detail specifications for a given
system name and test identifier (on the specification file) in browse-only form. Access
this screen using the Browse (B) command on the Specification Archive screen (see Figure
10-13 on page 10-19).

Figure 10-15. Specification Archive/Browse Screen

-------- XPEDITER/Code Coverage - Specification Archive/Browse (1) --------C123


COMMAND ===>
Userid: ACMJET0
System Name: ZIRCONIUMBASED Testid: CODECOVERAGE Owner: ACMJET0
Status:
Available Line Commands: None
--------------------- Include ------------------- | -------- Exclude --------
CMD User CMD User CMD User CMD User | CMD User CMD User
U _ ACMJET0 _ ________ _ ________ _ ________ | _ ________ _ ________
S _ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
E _ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
R _ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
S _ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
_ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
_ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
_ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
_ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
Tran Program CSECT Tran Program CSECT | Tran Program CSECT
M _ X*** CWDEMC** ******** _ X*** CWDEMP** ******** | _ X*** CWDEMCB2 CWDEMCB2
A _ ____ ________ ________ _ ____ ________ ________ | _ ____ ________ ________
S _ ____ ________ ________ _ ____ ________ ________ | _ ____ ________ ________
K _ ____ ________ ________ _ ____ ________ ________ | _ ____ ________ ________
S _ ____ ________ ________ _ ____ ________ ________ | _ ____ ________ ________
PF1 HELP PF3 EXIT
Using Code Coverage with Xpediter/CICS 10-23

General Output Fields


System Name
The system name portion of the system name and test identifier entry that is
displayed.
TestID
The test identifier portion of the system name and test identifier entry that is
displayed.
Userid
The userid of the person currently accessing the screen.
Status
The current status of the system name and test identifier entry that is displayed.
Statuses that may be displayed are:

Additional inclusion and exclusion rules need to be specified in order to make this
Incomplete
system name and test identifier available for collection.

This system name and test identifier has sufficient inclusion and exclusion rules
Available specified. Collection may be started by using the SC (Start Code Coverage), SF (Start
System Flow), or SB (Start Both) commands on the Test Definition screen.

Collection of data for this system name and test identifier is being halted due to an H
Quiescing (Halt Collection) command being issued. This status will change to Available after the
data is extracted.

Collecting Collection of data for this system name and test identifier is currently in progress.

Owner
The userid of the person who created this system name and test identifier entry. If
this entry was created during product initialization by use of the DBPA input facility,
DBPA will be displayed.

Program Function Keys


Displays the allowed program function keys and their related actions. The following
program function keys may be used when displayed.

HELP. Displays help information about this screen. When displaying help for this screen, fields that
PF1 are in high intensity (default color red) may be tabbed to. When the cursor is placed on a high
intensity (red) field, pressing Enter will cause additional help text to be displayed regarding a topic.

PF3 END. Allows you to exit from the displayed screen.

All program function keys, including the Clear and Program Attention (PA) keys are
disabled except as noted. To leave this screen, you must use the PF3 key, not the Clear
key.

XVSC Transaction
The XVSC transaction allows authorized users to delete tests from the specification file
even if they are not the owner. These deletions may be performed even if the user is
currently running the XVCC transaction.
10-24 Xpediter/Code Coverage Mainframe User/Reference Guide

XVSI Transaction
The Code Coverage CICS transaction XVSI will dynamically update the in-storage copy of
the XVTCGBL global table. The global overrides dataset (XVGBLINP) will be read as input
and the corresponding values will be replaced in XVTCGBL. Typically, only certain Code
Coverage users would be authorized to run the XVSI transaction. For more information
on the Xpediter/Code Coverage Global Override feature, please see Chapter 3, “Global
Parameters Table” of the Xpediter/Code Coverage Installation Guide. When the XVSI
transaction completes the following message will be displayed on the terminal issuing
the XVSI transaction:

Xpediter/Code Coverage Global Override processing has ended.

Refer to the console log and printed report for additional messages.

DBPA Keywords for Code Coverage and System Flow


Entries made on the Test Definition screen will exist only while Xpediter/CICS remains
active. More permanent entries may be defined using DBPA entries. Entries successfully
defined using DBPA will be displayed on the Test Definition screen. For general
information on the use of DBPA datasets, refer to the chapter entitled “Xpediter/CICS
Startup During CICS Initialization” in the Xpediter/CICS Installation Guide.

The DBPA keywords for creating entries for the Test Definition screen are defined in Table
10-3.

SYSTEM and TESTID are required keywords for every entry, but may be allowed to default
to values in the last valid entry. If an error is detected in an entry where SYSTEM and
TESTID are specified, the values are not saved as defaults for following entries. SYSTEM
and TESTID may be specified in a DBPA entry with no other keywords to establish default
values for following DBPA entries.

START keywords can be used to start collection of Code Coverage data, System Flow data,
or both. If a START keyword is specified, it must be the last entry for the TESTID. No
changes can be made to a test while data collection is actives

Table 10-3. Code Coverage and System Flow Keyword


Minimum
Keyword Default Value IM/XM IU/XU Start Comments
Abbreviation
Name of system being
SYSTEM= SY= Last valid name R* R* R*
defined or started.
TE= Name of test being
TESTID= or TI= Last valid name R* R* R*
TI= defined or started.
IM or XM
IM Specifies mask to be
Include Mask (No value) R N/A N/A
XM included or excluded.
eXclude Mask
TRANS= TR= **** O N/A N/A Used as mask.
PROGRAM= or PR=
******** O N/A N/A Used as mask.
PGM= PG=
CSECT= CS= ******** O N/A N/A Used as mask.
IU or XU
IU Identifies USER to be
Include User (No value) N/A R N/A
XU included or excluded.
eXclude User
USERID= US= ******** N/A R N/A Used as mask.
STARTCC Start Code Coverage
STARTCC or CC (No value) N/A N/A R
CC only.
Using Code Coverage with Xpediter/CICS 10-25

Table 10-3. Code Coverage and System Flow Keyword


Minimum
Keyword Default Value IM/XM IU/XU Start Comments
Abbreviation
STARTSF
STARTSF or SF (No value) N/A N/A R Start System Flow only.
SF
Start both Code
STARTBO
STARTBOTH or BO (No value) N/A N/A R Coverage and System
BO
Flow.
O=Optional, R=Required, N/A=Not Applicable
R*=SYSTEM and TESTID are required parameters for all entries, but can be allowed to default to the values
specified on the preceding entry. See “Example 2” on page 10-25.

DBPA Entry Examples


The following are examples of DBPA CC transactions. They use a variety of valid
abbreviations for demonstration purposes.

Example 1
Enter the following values to define tests for the PAYROLL system and keep Joe’s data
(ACCJOE) under a separate TESTID. Only collect data for program DATECONV if Joe is
the user.

DBPA CC SYSTEM=PAYROLL,TESTID=ONLY JOE,IM,TRANID=PAY*


DBPA CC SYSTEM=PAYROLL,TESTID=ONLY JOE,IU,USERID=ACCJOE
DBPA CC SYSTEM=PAYROLL,TESTID=ALL BUT JOE,XM,PROG=DATECONV
DBPA CC SYSTEM=PAYROLL,TESTID=ALL BUT JOE,IM,TRANID=PAY*
DBPA CC SYSTEM=PAYROLL,TESTID=ALL BUT JOE,IU,USERID=*
DBPA CC SYS=PAYROLL,TEST=ALL BUT JOE,XU,US=ACCJOE

Example 2
The following values are equivalent to the previous example. The values in this example
demonstrate the use of defaults for SYSTEM and TESTID. If SYSTEM or TESTID are not
specified, the last valid name is used as the default.

DBPA CC SYSTEM=PAYROLL,TESTID=ONLY JOE


DBPA CC IM,TRANID=PAY*
DBPA CC IU,USERID=ACCJOE
DBPA CC TI=ALL BUT JOE
DBPA CC XM,PROG=DATECONV
DBPA CC IM,TRANID=PAY*
DBPA CC IU,USERID=*
DBPA CC XU,US=ACCJOE

Example 3
If the following values are entered after the values from Example 1, the system will start
collecting System Flow data for ALL BUT JOE and to start collecting both Code Coverage
and System Flow data for ONLY JOE.

DBPA CC SY=PAYROLL,TI=ONLY JOE,STARTBOTH


DBPA CC SYSTEM=PAYROLL,TESTID=ALL BUT JOE,SF

Example 4
If the following values are entered to define a test the system will begin Code Coverage
for Joe and Jane, collect data for all programs, but exclude CSECT CWCDSUBA if it is
within program CWDEMCB2.
10-26 Xpediter/Code Coverage Mainframe User/Reference Guide

DBPA CC SYSTEM=J & J,TESTID=01/01/2001,IU,USERID=ACCJOE


DBPA CC SYSTEM=J & J,TESTID=01/01/2001,IU,USERID=SYSJANE
DBPA CC SYSTEM=J & J,TESTID=01/01/2001,IM
DBPA CC SYSTEM=J & J,TESTID=01/01/2001,XM,PGM=CWDEMCB2,CS=CWCDSUBA
DBPA CC SYSTEM=J & J,TESTID=01/01/2001,STARTCC

Line Commands
This section lists the line commands which can be used on the various CICS Code
Coverage screens. Valid commands listed on a screen will be highlighted; for example (S)
Specify Collection.

For several line commands, specifically those related to CICS Code Coverage and CICS
System Flow collection and termination, messages are generated to form an activity trail
of coverage. These messages are written to the transient data queue (LOGQ) as defined in
the Code Coverage global table XVTCGBLM. Messages have the following format:

XVTC3nnns date time applid userid action System Name=name TESTID=testid.

Each message is displayed on a single line, though formatting herein may have them
appear to wrap from line to line. Messages generated for the appropriate line commands
are detailed within each command’s description below.

A (Archive)
When entered on the Test Definition screen, allows users to save a system-tested
specification in the Specification Dataset. If the specification already exists in the
Specification Dataset, a screen appears asking if users wish to replace the older
specification with the newer (see “Test Definition/Collection Specification Screen” on
page 10-10 for more information). The archive requester’s userID becomes the Owner
used when the specifications record is created and written.

B (Browse)
When entered on the Test Definition screen, transfers to the Collection Specification
screen in browse mode. The inclusion and exclusion rules that apply to the
system/TestID can be viewed from this screen but cannot be modified.

When entered on the Specification Archive screen, transfers users to the Specification
Archive/Browse screen.

D (Delete)
When entered on the Test Definition screen for a system/TestID, the entry for the
system/TestID will be deleted. If the system/TestID is in Collecting or Quiescing status,
no delete will occur.

When entered on the Specification Archive screen for a system/TestID in Incomplete or


Available status, the record will be deleted from the Specifications file if the requester’s
userID matches the owner in the record or if the requester possesses superuser status. If
the user has the authority to issue the deletion, a confirmation screen appears for each
deletion requested (see “Confirm Test Deletion Screen” on page 10-21 for more
information).

DS (Delete System)
When entered for a system/TestID on the Test Definition screen in Incomplete or
Available status, all TestIDs within the system will be deleted. If a given TestID within the
system is in Collecting or Quiescing status, no delete will occur.
Using Code Coverage with Xpediter/CICS 10-27

E (Extract Entry)
When entered for a system/TestID on the Test Definition screen in Collecting status,
extraction of the collected data to the Code Coverage extract dataset (XVTCEXTR) will
commence. Assuming global parameter SUBMIT=YES (the default), a batch job will then
be submitted to write the data to the Code Coverage repository. When extraction is
complete, the status of the system/TestID will remain as Collecting. The following is an
example of the activity trail message generated for this command:

XVTC3001I 03 Nov 2003 10:24:42 H01AC093 UserID01 DATA EXTRACT COMPLETE for
System Name=xxxxxxxxxxxxxxx Testid=yyyyyyyyyyyyyyy.

Note: To extract the data for this system/TestID and simultaneously end the Code
Coverage test, use the HALT command.

ES (Extract System)
When entered for a system/TestID on the Test Definition screen in Collecting status,
extraction of the collected data to the Code Coverage extract dataset (XVTCEXTR) for all
TestIDs within the system will commence. Assuming global parameter SUBMIT=YES (the
default), a batch job will then be submitted to write the data to the Code Coverage
repository. When extraction is complete, the status of the system/TestID will remain as
Collecting. The following is an example of the activity trail message generated for this
command:

XVTC3001I 03 Nov 2003 10:24:42 H01AC093 UserID01 DATA EXTRACT COMPLETE for
System Name=xxxxxxxxxxxxxxx Testid=yyyyyyyyyyyyyyy.

H (Halt Collection)
When entered on the Test Definition screen causes the system/TestID to go into
QUIESCING status while the data being collected is extracted. Once all transactions being
code covered by this system/TestID have ended, the status will be changed to AVAILABLE.
Collection can be resumed by using one of the start commands (SC,SF, or SB). Examples
of the messages generated for this command appear as follows:

XVTC3001I 03 Nov 2003 10:24:42 H01AC093 UserID01 Code Coverage halted for
System Name=xxxxxxxxxxxxxxx Testid=yyyyyyyyyyyyyyy.

XVTC3001I 03 Nov 2003 10:24:42 H01AC093 UserID01 System Flow halted for
System Name=xxxxxxxxxxxxxxx Testid=yyyyyyyyyyyyyyy.

L (Load)
When entered on the Specification Archive screen, allows users to load a specification
into the current list of test definitions. User can load a specification even if they are not
the owner, but the active owner displayed will be their userID and not the owner ID in
the record.

S (Specify Collection)
When entered for a system/TestID on the Test Definition screen in Incomplete or
Available status, allows the authorized user to specify additional inclusion and exclusion
rules to apply. Transfer to the Collection Specification screen will occur.

SB (Start Both)
When entered for a system/TestID on the Test Definition screen in Available status,
collection of both Code Coverage and System Flow data will commence. Examples of the
messages generated for this command appear as follows:
10-28 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTC3001I 03 Nov 2003 10:24:42 H01AC093 UserID01 Code Coverage started for
System Name=xxxxxxxxxxxxxxx Testid=yyyyyyyyyyyyyyy.

XVTC3001I 03 Nov 2003 10:24:42 H01AC093 UserID01 System Flow started for
System Name=xxxxxxxxxxxxxxx Testid=yyyyyyyyyyyyyyy.

When entered on the Archive Specification screen, the test in the specification file will be
loaded and then started if it is in available status. If the system or text ID has already
been loaded or is currently active, it will not be started from this screen.

SC (Start Code Coverage)


When entered for a system/TestID on the Test Definition screen in Available status,
collection of Code Coverage data will commence. An example of the activity trail
message generated for this command appears as follows:

XVTC3001I 03 Nov 2003 10:24:42 H01AC093 UserID01 Code Coverage started for
System Name=xxxxxxxxxxxxxxx Testid=yyyyyyyyyyyyyyy.

When entered on the Archive Specification screen, the test in the specification file will be
loaded and then started if it is in available status. If the system or text ID has already
been loaded or is currently active, it will not be started from this screen.

SF (Start System Flow)


When entered for a system/TestID on the Test Definition screen in Available status,
collection of System Flow data will commence. An example of the activity trail message
generated for this command appears as follows:

XVTC3001I 03 Nov 2003 10:24:42 H01AC093 UserID01 System Flow started for
System Name=xxxxxxxxxxxxxxx Testid=yyyyyyyyyyyyyyy.

When entered on the Archive Specification screen, the test in the specification file will be
loaded and then started if it is in available status. If the system or text ID has already
been loaded or is currently active, it will not be started from this screen.

V (View Collection Activity or Validate)


When entered for a system/TestID on the Test Definition screen in Collecting status, will
cause a transfer to the Collection Activity screen (see above) where a list of programs and
CSECTs for which Code Coverage data is being collected will be displayed. This line
command functions different on the Collection Specification screen.

Specific to the Collection Specification screen, this command allows users to validate an
individual program and CSECT mask. This command is only active for generic include
masks. UserIDs (include or exclude) are not validated. Specific masks are validated by
default. Can be used to validate a single mask after making changes to the resources in a
mask.

Primary Commands
The following list details the primary commands that can be used with Xpediter/Code
Coverage CICS. Some commands are common throughout the CICS portion of the
product, while others are only active on selected screens. Use the HELP COMMANDS
primary command to obtain on-line help for all commands, or HELP xxxxxxxx, where
xxxxxxxx is the command name for specific help on the command (for example, HELP
DOWN will give you specific help regarding the DOWN command). Use the HELP HELP
command to obtain further help about the product and how to use the HELP facilities of
Xpediter/Code Coverage CICS.
Using Code Coverage with Xpediter/CICS 10-29

= (transfer)
The = command allows you to transfer directly from one screen to another. Because
Xpediter/Code Coverage features an ISPF-like menu structure, transfers can take place in
several ways.

The screen ID is displayed following the screen title on the first line of every screen. This
is the screen ID that should be entered following =.

Examples:

=1 Transfers to the Test Definition screen (1).

=2 Transfers to the Specification Archive screen (2).

=X Exits the product.

ALTSCRN (ALT)
The ALTSCRN command allows you to turn on or off the alternate screen size capability
for MOD 3, 4, and 5 display terminals. If an alternate screen size has been generated for
your CICS terminal definition, you can switch between your default screen size and the
alternate screen size by using the ALT command.

Note: Only the extra vertical size (rows) is used. Only 80 columns are displayed, even on
a MOD 5 display.

To reset from the alternate screen size back to the default screen size for your terminal,
use the OFF operand. If your terminal does not support alternate screen sizes or the CICS
terminal definition has not been defined with this option, this command has no effect. If
the ON operand has been entered, a switch to the alternate screen size occurs. The ON
operand is the default.

Note: No profile dataset is currently available for the product. Due to this restriction,
the setting for screen size cannot be saved when exiting the product. This means
that you will have to reissue the command when reentering the product either
from a blank screen or from Xpediter/CICS.

BOTTOM (BOT)
The BOTTOM command positions the display to the end of the data being viewed. The
last line of data available is displayed as the second to last line in the data area.

An indicator may be placed in the last line of the data area to show that this is the end or
bottom of the data. This command is equivalent to using the DOWN MAX command.
10-30 Xpediter/Code Coverage Mainframe User/Reference Guide

CANCEL (CAN)
The CANCEL command is available on selected screens and will cancel the action
requested.

COLS (COL)
The COLS command functions on help screens. It will display a scale line as the first line
of help text displayed on the screen. This scale line can be used to correctly determine
the column number to use when using the FIND command to find a string beginning in
a particular column, or limiting the FIND command to search only in a range of columns.

The scale line disappears as soon as you leave this screen, either by following a hyperlink,
by using the END or EXIT commands, or transferring to another screen.

where:

ON causes the scale line to be displayed. This is the default if no parameter is supplied.

OFF removes the scale line from the display.

DOWN (DN)
The DOWN command scrolls forward through the data currently being displayed on the
screen. The DOWN command is assigned to the PF8 key.

The DOWN command is used in conjunction with a scrolling value. If no scrolling value
is entered on the command line, the default scrolling value is obtained from the scroll
field on the screen. The scrolling values allowed are: CSR, HALF, PAGE, MAX, or nnnn (a
decimal value in the range 1 to 9999).

The actions performed by the different scrolling values are:

Scrolls forward through the data making the line of data where the cursor is currently
DOWN CSR positioned the top line of data. If the cursor is positioned outside of the data area, DOWN
CSR has the same effect as DOWN PAGE.

DOWN HALF Scrolls forward through one half of the number of lines of scrollable data.
Using Code Coverage with Xpediter/CICS 10-31

Makes the last line of data available the second from the last line displayed. An indicator
DOWN MAX may be placed in the last line of the data area to show that this is the end or bottom of
the date. This command may be abbreviated as BOT or BOTTOM.

Scrolls forward through n lines of data, where n is the number of lines of scrollable data
DOWN PAGE
on the screen.

DOWN nnnn Scrolls forward through the data nnnn lines. nnnn is a decimal value from 1 to 9999.

END
The END command ends the current function. It will return you to the previous screen. If
you are at the highest level screen, it will return you to the primary menu. If you are on
the primary menu, using the END command will exit the product. The END command is
assigned to the PF3 key.

Example
You are currently on the Test Definition/Collection Specification screen.

1. Using the END command transfers you to the Test Definition screen.
2. Using the END command from the Test Definition screen transfers you to the
Primary Menu screen.
3. Using the END command from the Primary Menu screen transfers you to CICS if you
entered the product from a blank screen, or back to Xpediter/CICS if you entered
from Xpediter/CICS.

EXIT
The EXIT command will perform in one of the following ways:

• If you entered the product directly from CICS, you will be returned to CICS.
• If you entered the product from Xpediter/CICS, you will be returned to the
Xpediter/CICS screen you were last on.

FIND (F)
The FIND command will position you to a string or area in the data currently being
displayed on the screen. This command is currently only available while displaying help
screens. The FIND command will only process the currently displayed help screen.

Examples
The following are examples of various FIND commands:

FIND XPED Find the next occurrence of string XPED (not case sensitive)

FIND X'E7D7C5C4' Find the next occurrence of hexadecimal string E7D7C5C4


10-32 Xpediter/Code Coverage Mainframe User/Reference Guide

FIND XPED FIRST Find the first occurrence of string XPED (not case sensitive)

FIND C'Xped' Find the next occurrence of string Xped (case sensitive) find-string.

find-string
The find-string defines the string that the FIND command will search for in the data
being displayed.

text-string
The text-string operand allows you to specify a character string that is to be searched for
in the data being displayed. The string is matched against any combination of case, i.e.
the string XPED is considered the same as xped or Xped. The format of a text string is:

string:
A string consists of EBCDIC displayable characters. If you use the string delimiters (' or ")
to delimit the string, you must use the same delimiter at the beginning and end. When
the string is located, the line of data where it was found becomes the top line of the data
displayed. If the string cannot be located, the current data being displayed remains on
the screen. To repeat the search, use the RFIND command.

The following are valid examples of searching for the string XPED:

'XPED'

"XPED"

T'XPED'

T"xped"

The following are invalid:

'XPED" delimiters are not matched

XPED' beginning delimiter (') not specified

XP'ED delimiter is contained in a non-delimited string

char-string
The char-string operand allows you to specify a character string that is to be searched for
in the data being displayed. The string is matched using the case it was entered in, e.g.
the find will be case-sensitive. A char-string is only valid if your terminal supports mixed-
Using Code Coverage with Xpediter/CICS 10-33

case input. If your terminal does not support mixed-case input, the string will be treated
as a text-string. The format of a character string is:

string:
A string consists of EBCDIC displayable characters. If you use the string delimiters (' or ")
to delimit the string, you must use the same delimiter at the beginning and end. When
the string is located, the line of data where it was found becomes the top line of the data
displayed. If the string cannot be located, the current data being displayed remains on
the screen. To repeat the search, use the RFIND command.

The following are valid examples of a character string:

C'XPED' Search for string XPED

C'XpeD' Search for string XpeD

The following are invalid:

C'XPED'' Delimiters are not matched

CXPED' Beginning delimiter (') not specified

CXP'ED Delimiter is contained in a non-delimited string

hex-string
The hex-string operand allows you to specify a hexadecimal string that is to be searched
for in the data being displayed. The format of a hexadecimal string is:

string:
A string consists of hexadecimal characters (0-9, A-F). If you use the string delimiters (' or
") to delimit the string, you must use the same delimiter at the beginning and end. When
the string is located, the line of data where it was found becomes the top line of the data
displayed. If the string cannot be located, the current data being displayed remains on
the screen. To repeat the search, use the RFIND command.

The following are valid examples of the hex string E7D7C5C4:

X'E7D7C5C4'

X"E7D7C5C4"

The following are invalid:

X'E7D7C5C4" Delimiters are not matched

XE7D7C5C4 No delimiters specified

X'E7D7C5I4' I is not a valid hexadecimal character


10-34 Xpediter/Code Coverage Mainframe User/Reference Guide

*
The asterisk (*) operand will cause the last string specified in a FIND or RFIND command
to be used.

find-direction
Normally the FIND command searches for the next occurrence of the specified string,
starting at the top of the displayed page if the cursor is outside the help text, or at the
cursor position if the cursor is within the help text.

NEXT
NEXT can be entered as an optional parameter with the FIND command. Because NEXT is
the default direction, however, it is not required. For example,

FIND XPEDITER NEXT

looks for the next occurrence of the term “Xpediter” within the data. A search for the
next occurrence of the text string will be made, starting at the beginning of the first line
displayed if the cursor is outside the help text, or at the cursor location if the cursor is
within the help text

If the string is found, the cursor is placed at the start of the string. If the RFIND primary
command is then used, searching will continue until the next occurrence is found, and
then the next, repeating until the bottom of the data is reached.

When part of the data is searched and the string is not found before the bottom of the
data is reached, a BOTTOM OF DATA message is displayed. Use the RFIND command to
continue searching, wrapping around from the bottom of the data to the top.

PREV
PREV can be entered as an optional parameter with the FIND command. For example,

FIND XPEDITER PREV

looks for the previous occurrence of the term “Xpediter” within the data. A search for the
previous occurrence of the text string will be made, starting at the end of the line
preceding the first line displayed if the cursor is outside the help text, or at the cursor
location if the cursor is within the help text.

If the string is found, the cursor is placed at the start of the string. If the RFIND primary
command is then used, searching backwards will continue until the string is found again,
or the top of the data is reached.

When part of the data is searched and the string is not found before the top of the data is
reached, a TOP OF DATA message is displayed. Use the RFIND command to continue
searching, wrapping around from the top of the data to the bottom.

FIRST
FIRST can be entered as an optional parameter with the FIND command. For example,

FIND XPEDITER FIRST


Using Code Coverage with Xpediter/CICS 10-35

looks for the first occurrence of the term “Xpediter” within the data. A search for the first
occurrence of the text string will be made, starting at the beginning of the first line of the
data.

If the string is found, the cursor is placed at the start of the string. If the RFIND primary
command is then used, searching will continue until the next occurrence is found, and
then the next, repeating until the bottom of the data is reached.

If the string is not found before the bottom of the data is reached, a message is displayed
indicating that the string was not found.

LAST
LAST can be entered as an optional parameter with the FIND command. For example,

FIND XPEDITER LAST

looks for the last occurrence of the term “Xpediter” within the data. A search for the last
occurrence of the text string will be made, starting at the end of the last line of the data
and continuing backwards until the string is found or the top of the data is reached.

If the string is found, the cursor is placed at the start of the string. If the RFIND primary
command is then used, backward searching will continue until the next to the last
occurrence is found, and then the third from the last, repeating until the top of the data
is reached.

If the string is not found before the top of the data is reached, a message is displayed
indicating that the string was not found.

ALL
ALL can be entered as an optional parameter with the FIND command. For example,

FIND XPEDITER ALL

looks for all occurrences of the term “Xpediter” within the data. A search for all of the
occurrences of the text string will be made, starting at the beginning of the first line of
the data and continuing to the bottom of the data.

If the string is found one or more times, the cursor is placed at the beginning of the first
occurrence. A message is displayed indicating the number of times the string was found.
If the RFIND primary command is then used, searching will continue until the next
occurrence is found, and then the next, repeating until the bottom of the data is reached.

If the string is not found before the bottom of the data is reached, a message is displayed
indicating that the string was not be found.

columns
You can limit the columns that are searched with the FIND command by entering a pair
of column numbers indicating the first and last column to be searched. The string will be
found if it is completely contained within the designated columns.
10-36 Xpediter/Code Coverage Mainframe User/Reference Guide

Examples

FIND THE 20 40 looks for the text string 'the' (case insensitive) in columns 20 through 40.

FIND Xpediter looks for the text string 'xpediter' (case insensitive) in columns 1 through 79.

looks for the character string 'Xpediter' (case sensitive) in columns 7 through
FIND C'Xpediter' 7 30
30.

looks for the character string 'Xpediter' (case sensitive) beginning in column 15
FIND C'Xpediter' 15
only.

If columns are not specified, the columns to be searched defaults to the entire line, i.e.
columns 1 through 79. If a single column is specified, the string must start in that
designated column.

HELP
The HELP command allows you to obtain text that describes the screen you currently are
on. You may enter HELP xxxxxxxx where xxxxxxxx is a primary command or a keyword. If
you enter a command following HELP, you will receive additional text describing the
syntax and actions of the command. If you enter a keyword (you may type HELP
KEYWORDS to obtain a list of keywords), you will receive additional text describing the
keyword. You may enter HELP HELP to obtain general information about the help
subsystems, including a tutorial on how to use the help subsystem. The HELP command
is associated with the PF1 key.

If a message is displayed in the message area of the screen (line 2 immediately following
the Userid: field), and the message is enclosed in plus signs, then pressing PF1 will give
you additional text about the message, including the cause and actions to take.

Example
If line 2 contains:

Userid: ACMJET0 ++++++++++++++ XVTC0131E Command not recognized ++++++++++++++

Pressing PF1 will get you the following help text:

XVTC0131E Command not recognized


Explanation: You entered a primary command that was not recognized.
System Action: The command you entered is redisplayed in the command line.
User Response: Use this link to get a list of valid primary commands and
reenter a valid primary command.
Module: XVTCMGR

LOCATE (LOC, L)
The LOCATE command positions the requested key or generic key at the top of the
screen. This command is currently only available on the Archive Specification screen.
Using Code Coverage with Xpediter/CICS 10-37

Generic keys will position to the first XVTCSPEC key that matches the generic key value.
If the key value contains spaces, it must be enclosed in single quotes. If no match is
found, the screen will be positioned to the next sequential key on the file.

Examples
LOCATE ABCSYST

L 'ABCSYST ATEST'

MENU (MEN)
The MENU command ends the current function and transfers to the Primary Menu
screen. While in Help, this command transfers you back to the highest level Help menu.

RFIND (RF)
The RFIND command (abbreviated as RF) can be used to repeat the last FIND command
that was entered. Since this command is sensitive to the current cursor position, it is
normally entered via the PF5 key which has been assigned to the RFIND command. This
command is currently only available when displaying help screens.

SELECT (SEL)
The SELECT command is available on the Primary Menu screen and can be used in
conjunction with the current cursor position to select an option on the menu. If you key
the SELECT command in the command field, move the cursor to the line containing one
of the menu options, and then press Enter, you will be transferred to the screen
associated with that menu option.

TOP
The TOP command positions you at the start of the data currently being displayed on the
screen. The first line of data available is displayed as the first line in the data area. This
command is equivalent to using the UP MAX command.
10-38 Xpediter/Code Coverage Mainframe User/Reference Guide

UP
The UP command scrolls you backward through the data currently displayed on the
screen. The UP command is associated with the PF7 key.

The UP command is used in conjunction with a scrolling value. The default scrolling
value is obtained from the scroll field on the screen unless overridden by entering a
temporary scrolling value on the command line. The scrolling values allowed are: CSR,
HALF, PAGE, MAX, or nnnn (a decimal value in the range 1 to 9999).

The actions performed by the different scrolling values are:

Scrolls backward through the data making the line of data where the cursor is currently
UP CSR positioned the bottom line of data. If the cursor is positioned outside of the data area, UP CSR
has the same effect as UP PAGE.

UP HALF Scrolls backward through one half of the number of lines of scrollable data.

Makes the first line of data available the top line displayed. This command may be abbreviated
UP MAX
as TOP.

Scrolls backward through the data n lines, where n is the number of lines of data that can be
UP PAGE
displayed on a screen.

UP nnnn Scrolls backward through the data nnnn lines.

VALIDATE (VAL)
The VALIDATE command is available the Test Definition/Collection Specification screen.
It will cause generic include masks for the specification to be validated.
11-1

Chapter 11.
Using System Flow with Xpediter/CICS Chap 11

This chapter explains how to use System Flow with Xpediter/CICS and includes the
following sections:

• “Overview”
• “Online Data Collection”
• “Reporting”
• “Preliminary Considerations”.
Notes:
1. All the procedures in this and subsequent chapters assume that Code Coverage has
been properly installed and configured in accordance with the Compuware Installer
Mainframe Products SMP/E Installation Guide and the Xpediter/Code Coverage Installation
Guide.
2. Xpediter/CICS 8.0 or above is required to collect System Flow data in CICS.

Overview
Using Xpediter/Code Coverage’s System Flow capability with Xpediter/CICS is a two-
stage process composed of the following:

• Online data collection


• Reporting.

Each stage is discussed in greater detail below, and the entire process is illustrated in
Figure 11-1 on page 11-2.

The program preparation steps normally necessary for Code Coverage collection are not
required for System Flow. Specifically, this means that the Compuware source listing and
Compuware program inventory files are not necessary to collect System Flow data.
11-2 Xpediter/Code Coverage Mainframe User/Reference Guide

Figure 11-1. Xpediter/Code Coverage’s System Flow Process in a CICS Environment

Online Data Collection


System Flow collection in CICS is a four-stage process:

1. Define the test criteria


2. Start the System Flow data collection
3. Execute the CICS transactions
4. Halt the System Flow collection.

Define the System Flow Test


The System Flow test name is defined using the Test Definition screen (Figure 11-2 on
page 11-3). The test name is comprised of a system name and a test identifier.
Using System Flow with Xpediter/CICS 11-3

Figure 11-2. Test Definition Screen

--------------- XPEDITER/Code Coverage - Test Definition (1) --------------C123


COMMAND ==> SCROLL ==> CSR
USERID: ACMJET0
Entry 1 of 4
Available Commands are highlighted:
(S) Specify Collection (H) Halt Collection (V) View Collection Activity
(SC) Start Code Coverage (SF) Start System Flow (SB) Start Both
(E) Extract Entry (ES) Extract System Next Full Extract:
(D) Delete Entry (DS) Delete System Current Time:
(B) Browse (A) Archive
Code System
CMD System Name Test Identifier Owner Status Coverage Flow
---- *************** *************** ******** -----------------------------
__ PAYROLL ACCOUNTING ACMJET0 Incomplete
__ PAYROLL ALL BUT JOE ACMJET0 Available
__ PAYROLL DEVELOPMENT ACMJET0 Incomplete
__ LAYROLL ONLY JOE ACMJET0 Available
__ _______________ _______________
__ _______________ _______________
__ _______________ _______________
__ _______________ _______________
__ _______________ _______________
__ _______________ _______________
PF1 Help PF3 End Extract All (Y/N): N

The Test Definition/Collection Specification screen (Figure 11-3) is used to specify which
users, transactions, programs, and CSECTs should be collected during the System Flow
test. Because System Flow is designed for analyzing applications, values specified in the
Tran, Program, and CSECT fields of the Include MASKS portion of the screen should be as
generic as possible. If a mask is too specific, the resulting System Flow report will give an
incomplete view of application activity. For the same reason, the use of Exclude masks
during System Flow testing is not recommended. The status of the test on the Test
Definition screen (Figure 11-2) will be shown as Available after definition and before
starting the test.

Figure 11-3. Test Definition/Collection Specification Screen

-- XPEDITER/Code Coverage - Test Definition/Collection Specification (1) --C123


COMMAND ===>
Userid: ACMJET0
System Name: PAYROLL Testid: ACCOUNTING Owner: ACMJET0
Status: Available User added
Available Line Commands: (D) Delete (V) Validate
--------------------- Include ------------------- | -------- Exclude --------
CMD User CMD User CMD User CMD User | CMD User CMD User
U _ ******** _ ________ _ ________ _ ________ | _ CARTMAN _ KENNY
S _ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
E _ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
R _ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
S _ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
_ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
_ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
_ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
_ ________ _ ________ _ ________ _ ________ | _ ________ _ ________
Tran Program CSECT Tran Program CSECT | Tran Program CSECT
M _ **** ******** ******** _ ____ ________ ________ | _ SPIN SOUTH PARK
A _ ____ ________ ________ _ ____ ________ ________ | _ ____ ________ ________
S _ ____ ________ ________ _ ____ ________ ________ | _ ____ ________ ________
K _ ____ ________ ________ _ ____ ________ ________ | _ ____ ________ ________
S _ ____ ________ ________ _ ____ ________ ________ | _ ____ ________ ________
PF1 HELP PF3 EXIT PF4 Validate All

Note: Unlike Code Coverage, the Collection Specification screen cannot be used to
validate that all required System Flow load modules and programs are available
within CICS before running the Code Coverage collection. This is because the
Code Coverage validate function requires a Program Inventory member and
11-4 Xpediter/Code Coverage Mainframe User/Reference Guide

Compuware source listings. These two elements are not required for System Flow
collection.

Start the Test


Enter the SF line command on the Test Definition screen (Figure 11-2 on page 11-3) to
start System Flow collection. The status of the test on the Test Definition screen is then
shown as Collecting.

Execute the CICS Transactions


In this stage, you run the transactions that will cause the programs specified on the Test
Definition/Collection Specification screen to be executed. Xpediter/Code Coverage’s
System Flow keeps track of what transactions and programs are executed. When all the
transactions/programs have been run, System Flow collection can be halted.

Halt the Code Coverage Collection


Return to the Test Definition screen to halt the collection. After entering the H (Halt
Collection) line command, the status of the test on the Test Definition panel will initially
be shown as Quiescing, then change to Available. A message will be displayed indicating
that data extraction is complete. This means that the System Flow data has been written
from CICS storage to the Code Coverage extract file. At this point (by default), a batch
job will be submitted that will write the System Flow data from the CICS extract file to
the Code Coverage repository. The process of writing the System Flow data from the CICS
extract file to the Code Coverage repository is known as “hardening”.

Reporting
After the System Flow data has been written to the repository, it can be reported on. On
the mainframe, reporting is done using the ISPF System Flow reporting panel. This
process is described in Chapter 4, “Generating System Flow Reports”.

Preliminary Considerations
Before the System Flow feature of Code Coverage can be used under Xpediter/CICS,
several considerations must be taken into account:

• You must ensure the value of the Xpediter/CICS global parameter XDCC is set to YES
(the default).
• You must ensure the value of the Xpediter/CICS Code Coverage global parameters
XVCC and XVSC match the transaction codes, which default to XVCC and XVSC.
• You must ensure the load library containing Xpediter/CICS has been added to the
DFHRPL concatenation. This loadlib is provided as XPED.CICS.LOAD.
• You must ensure the load library containing Code Coverage has been added to the
DFHRPL concatenation. The file name is SYS2.XPCOVER.V3R1M0.LOADLIB.
• You must create an Extract dataset (XVTCEXTR) for the intermediary Code
Coverage/System Flow data.
• Optionally, you can create a JCL template dataset (XVTCEXTJ) that contains the JCL
to write the intermediary Code Coverage/System Flow data to the Code
Coverage/System Flow repository.
• Optionally, you can create a Save Specifications dataset (XVTCSPEC) to provide an
archive for Code Coverage/System Flow test definitions.
Using System Flow with Xpediter/CICS 11-5

• The Test Definition screen (Figure 11-2 on page 11-3) or DBPA entries are used to
name and define an application system (SYSTEM) and individual tests (TESTID). For
more information on DBPA entries, see “DBPA Keywords for Code Coverage and
System Flow” on page 10-24. The Specification Archive screen (Figure 10-13 on page
10-19) may also be used to activate an archived specification.
• It is possible to start the same test definition entries for both Code Coverage and
System Flow data collection. However, it may be more practical to define separate
tests. The high level overview of the application system provided by System Flow will
be most complete if you define the test broadly. The detailed view of program code
provided by Code Coverage may only be needed for a narrower subset of the
application system.

Note: Xpediter/CICS 9.4.1 entries, which cause specified programs to be excluded from
monitoring by Xpediter, will be honored by System Flow. No System Flow data
will be collected for any activity in an excluded program.
11-6 Xpediter/Code Coverage Mainframe User/Reference Guide
12-1

Chapter 12.
CICS Populater Chap 12

Code Coverage monitors the execution flow of a program or series of programs. To


improve performance in a CICS environment, a member for each program to be
monitored must be added to the Program Inventory file each time a program is compiled.
This populating of the Program Inventory file is performed by the CICS Populater.

In conjunction with Xpediter/CICS, the population and maintenance of the CICS


Program Inventory file have been extended to run as ISPF dialogs. The ISPF Program
Inventory Maintenance screen can be used in one of two modes: batch or foreground. In
batch mode, discussed in both this chapter and Chapter 13, “Program Inventory
Utility”, the JCL is created by the screen and can optionally be edited prior to being
submitted by the user. The user has the option of creating their own JCL or using the JCL
generated by this utility. In foreground mode, the functions requested are performed
interactively and the results returned to the user. See “CICS Program Inventory
Maintenance Screen” on page 5-24 for more information.

This chapter describes the JCL and control statements to use the CICS Program Inventory
Populater.

Job Control Statements


Sample JCL to run the Populater is provided in Xpediter/CICS SMXDSAMP member
JCLCPOP. This JCL is shown in Figure 12-1 on page 12-2 and includes detailed parameter
descriptions.

Note: The Populater Utility can be included as a step within your site’s standard
Compile/Shared Services Processor/Link JCL.
12-2 Xpediter/Code Coverage Mainframe User/Reference Guide

Figure 12-1. CICS Populater JCL (JCLCPOP)

//* YOUR JOB CARD HERE 


.
.
.
.
.
.
//*
//STEP1 EXEC PGM=XVTCPOP
//STEPLIB DD DISP=SHR,DSN=COMPWARE.cMXDnnn.SMXDOccL <== CHECK DSN
// DD DISP=SHR,DSN=COMPWARE.LCXnnn.SLCXLOAD <== CSS 8.0.0+
//*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//XVTPGINV DD DISP=SHR,DSN=XPEDITER.CICS.PGMINV <== CHECK DSN
//*
//DFHRPL DD DISP=SHR,DSN=... <== LOAD LIBRARIES TO BE SEARCHED
// DD DISP=SHR,DSN=...
//*
//SLSF001 DD DISP=SHR,DSN=... <== FROM 1-99 SLS DDIO FILE(S)
//SLSF002 DD DISP=SHR,DSN=...
//*
//EXCLUDES DD DISP=SHR,DSN=COMPWARE.cMXDnnn.SMXDSAMP(POPEXCL)
//*
//CONTROL DD * <= DESIRED CONTROL STATEMENTS
/*

EXEC Statement
The EXEC statement must run PGM=XVTCPOP. Coding PARM=FULL on your EXEC
statement will cause XVTCPOP to provide messages for every LMOD/CSECT in the
DFHRPL concatenation. If this parameter is not specified, only LMOD/CSECTs covered by
the DEFINE statements will result in messages being issued. This parameter is optional.

The DEFINE, REPLACE, or COLLECT control statements discussed in “CONTROL Card


Format” on page 12-4 can also be entered directly in the CICS Populater JCL by coding a
PARM= statement on your EXEC statement. There are two advantages to this approach.
First, it provides for JCL symbolic substitution. Second, it enables you to append an
XVTCPOP step to your standard compiler procedure. Because normal JCL syntax rules
apply and the DEFINE, REPLACE, or COLLECT statements contain imbedded spaces, the
statement must be enclosed in apostrophes. For example:

//STEP 1 EXEC PGM=XVTXPOP


// PARM=’DEFINE &LMOD,REPLACE ALL,COLLECT ON’

When the DEFINE, REPLACE, or COLLECT statements are supplied via JCL, the following
restrictions apply:

• The DEFINE statement is required but REPLACE and COLLECT are optional.
• No asterisk (*) wildcard characters can be included in the LMOD parameter.
• If REPLACE is not supplied, the value for REPLACE is forced to YES.
• If COLLECT is not supplied, the value for COLLECT is forced to ON.
• Only one DEFINE statement should be used. If multiple DEFINE statements are
coded, only the last one will be honored.
• The CONTROL dataset is ignored.
CICS Populater 12-3

DD Statements
A series of DD statements are used to specify parameters for the execution of the CICS
Populater.

SYSPRINT
SYSPRINT represents the report style output from XVTCPOP. It will contain
informational, warning, and error type messages. In some cases, error messages may be
written to the JES message log. Both output locations should be checked when
determining an error condition. SYSPRINT will generally be a JES SYSOUT dataset,
however to record SYSPRINT to a permanent dataset, use a 133-byte record length, a fixed
or fixed blocked record format, and ANSI carriage control. For example,
DCB=(RECFM=FBA,LRECL=133). Dataset blocksize (BLKSIZE) can be set to any desired
value.

DFHRPL
The DFHRPL concatenation contains the load modules that may be selected for Code
Coverage. This concatenation of datasets is normally a copy of the DFHRPL of a working
CICS region. It could also be coded manually or copied from some other JCL jobstream.

SLSF001 thru SLSF099


These datasets are valid source listing datasets containing output from the Compuware
Shared Services Language Processor. When selected, a member from these datasets will be
matched to a program found in the DFHRPL concatenation.

XVTPGINV
This DD names the Program Inventory file, which holds entries for eligible Code Covered
programs. This file is the primary output of XVTCPOP and the primary input to the CICS
Code Coverage collection process. XVTCPOP populates this dataset with program entries.

Before the Program Inventory dataset is populated, it must be formatted using the
FORMAT command in the Code Coverage Program Inventory Utility (XVTCUTIL).

EXCLUDES
This DD lists a series of load modules (LMODs) and CSECTs which are to be bypassed by
the XVTCPOP process. These LMODs and CSECTs may be programs with no associated
source listing members. A more typical use is to list IBM and OEM LMODs and CSECTs
for which Code Coverage does not need to be activated. This dataset must have an 80-
byte record length and a fixed or fixed blocked record format. For example,
DCB=(RECFM=FB,LRECL=80). Dataset blocksize (BLKSIZE) can be set to any desired value.

EXCLUDES Card Format


The LMOD statement controls exclusion at the load module level. For example, LMOD
DFH* would exclude all CICS modules from processing by XVTCPOP. The CSECT
statement controls exclusion at the CSECT level. For example, CSECT CEE* would
exclude all LE CSECTs from XVTCPOP processing.

CONTROL
This DD is used to list a series of LMODs and CSECTs to be included or limited in Code
Coverage monitoring. It serves as a positive selection criteria, as opposed to the negative
selection represented by the EXCLUDES dataset. Typically, you would identify by one or
more statements in this dataset the LMODs and CSECTs you want monitored by Code
Coverage. This dataset must have an 80-byte record length and a fixed or fixed blocked
12-4 Xpediter/Code Coverage Mainframe User/Reference Guide

record format. For example, DCB=(RECFM=FB,LRECL=80). Dataset blocksize (BLKSIZE)


can be set to any desired value.

CONTROL Card Format


The REPLACE statement is used to control whether existing Program Inventory members
should be overwritten. Valid parameters for this statement are YES, ALL, or NO. NO is the
default.

• YES means only existing inventory members will be replaced if their COMPILE
DATETIME stamp is the same as the current member being processed.
• ALL means all existing inventory members will be replaced regardless of their
COMPILE DATETIME stamp.
• NO means existing inventory members will not be replaced.

The DEFINE statement is used to control processing at the LMOD/CSECT level. This
statement may also be used to specify an source listing member name. There are three
positional parameters that can be used with the DEFINE statement. In positional order,
they are:

• LMOD name
• CSECT name
• source listing member name

For example, to set up Code Coverage monitoring of all load modules starting with PAY,
simply code DEFINE PAY* * in the CONTROL card dataset.

When a DEFINE statement names a specific source listing member, no wildcards are
allowed for any positional parameter. Specific LMOD and CSECT names must be
supplied.

The COLLECT control statement is used to control the initial collection status of a
program already added to the Program Inventory File. Valid values are ON and OFF. The
default is ON. OFF would result in no Code Coverage statistics being gathered for the
program. Setting initial collection status to ON causes immediate eligibility for Code
Coverage monitoring of the specified program.

Process Flow
The following sections describe the general flow of XVTCPOP.

EXCLUDES and CONTROL Card Processing


These two DD statements control the overall processing of XVTCPOP. This is where
individual LMODs and CSECTs may be excluded from or defined for further processing.

Items in the EXCLUDE dataset are bypassed entirely. Items may be excluded at the LMOD
or CSECT level. Typically, you would exclude IBM and OEM LMODs and CSECTs that
might be found in the DFHRPL concatenation of your load libraries. For example, you
can exclude all LMODs or CSECTs that start with CEE, DFH, DSH, IGZ, IKF, and others.

The CONTROL card dataset is used to specify items to be processed. This dataset also
controls whether or not existing Program Inventory members are to be overwritten. This
dataset is used to control the LMODs and CSECTs which are selected for Code Coverage
monitoring. In the following example of the use of the CONTROL DD, assume that
PROGRAM1, PROGRAM2, PROGRAM3, and PROGRAM4 were recently compiled, and the
new changes for these programs need to be populated to the Program Inventory:
CICS Populater 12-5

COLLECT OFF
DEFINE PROGRAM1
REPLACE ALL
DEFINE PROGRAM2
DEFINE PROGRAM3
COLLECT ON
DEFINE PROGRAM4

Each member of the Control Card is processed independently. Before the process begins,
COLLECT is set to ON and REPLACE is set to NO. In the example, PROGRAM1 is set to
COLLECT OFF, and no previous versions of the program will be deleted. This enables you
to use Code Coverage on the older versions of the program and, if desired, delete those
versions later. All previous versions of PROGRAM2 and PROGRAM3 will be deleted, and
COLLECT will remain set to OFF for both programs. Only the new versions of the
programs will be populated, and Code Coverage collection can be turned ON later.
PROGRAM4 is set to ON for collection, and all older versions of the program will be
deleted.

Positional parameters — as opposed to keyword — are used by both the EXCLUDE and
CONTROL datasets. These positional parameters may include an asterisk (*) wildcard
character. This wildcard can be used as a suffix to a value or as the entire value. For
example, DFH* would apply to all values which begin with DFH, but * alone would
match any value.

Additional Processing
When the EXCLUDES and CONTROL cards have been processed, the Populater
(XVTCPOP) will then perform the following processing:

• scan the DFHRPL concatenation to determine which load modules are to be


processed
• build a CSECT structure for each load module
• interrogate the source listing file(s)
• add programs to the Program Inventory file.
12-6 Xpediter/Code Coverage Mainframe User/Reference Guide
13-1

Chapter 13.
Program Inventory Utility Chap 13

Under CICS, programs to be monitored by Code Coverage must reside in a Program


Inventory file. The Program Inventory Utility allows you to manipulate your Program
Inventory by:

• formatting a Program Inventory file for use


• copying members from one Program Inventory file to another Program Inventory file
• deleting members
• exporting or importing members
• altering the collection status of members
• listing the contents of a Program Inventory file directory

In conjunction with Xpediter/CICS, the population and maintenance of the CICS


Program Inventory file has been extended to run as ISPF dialogs. The ISPF Program
Inventory Maintenance screen can be used in one of two modes: batch or foreground. In
batch mode, discussed in both this chapter and Chapter 12, “CICS Populater”, the JCL
is created by the screen and can optionally be edited prior to being submitted by the user.
The user has the option of creating their own JCL or using the JCL generated by this
utility. In foreground mode, the functions requested are performed interactively and the
results returned to the user. See “CICS Program Inventory Maintenance Screen” on page
5-24 for more information.

This chapter describes the JCL and control statements to use the CICS Program Inventory
Utility (XVTCUTIL).

Job Control Statements


Sample JCL to run the Utility is provided in Xpediter/CICS SMXDSAMP member
JCLCUTIL. This JCL is shown in Figure 13-1 and includes detailed parameter descriptions.

Figure 13-1. Program Inventory Utility JCL (JCLCUTIL)

//* YOUR JOB CARD HERE


.
.
.

.
.
.
//*
//STEP1 EXEC PGM=XVTCUTIL
//STEPLIB DD DISP=SHR,DSN= COMPWARE.cMXDnnn.SMXDOccL <== CHECK DSN
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//*
//XVTPGINV DD DISP=SHR,DSN=XPEDITER.CICS.PGMINV <== CHECK DSN
//CONTROL DD *
/*
13-2 Xpediter/Code Coverage Mainframe User/Reference Guide

EXEC Statement
The EXEC statement must run PGM=XVTCUTIL. Coding PARM=FULL on your EXEC
statement will cause XVTCUTIL to provide messages with more detail. This parameter is
optional.

DD Statements
A series of DD statements are used to specify parameters for the execution of Program
Inventory Utility.

SYSPRINT
SYSPRINT represents the report style output from XVTCUTIL. It will contain
informational, warning, and error type messages. In some cases, error messages may be
written to the JES message log. Both output locations should be checked when
determining an error condition.

SYSPRINT will generally be a JES SYSOUT dataset, however, to record SYSPRINT to a


permanent dataset, use a 133-byte record length, a fixed or fixed blocked record format,
and ANSI carriage control. For example, DCB=(RECFM=FBA,LRECL=133). Dataset
blocksize (BLKSIZE) can be set to any desired value.

XVTPGINV
This DD names the primary Program Inventory file, which is the main object of all
Program Inventory Utility commands.

XVTPGCPY
This DD names the target of the COPY command used to copy from one Program
Inventory to another. An example would be:

//XVTPGCPY DD DISP=SHR,DSN=ACME.ALT.PGMINV

Refer to “COPY” on page 13-5 for more details.

XVTPGEXP
This DD names the target of the EXPORT command used to extract program members
from a Program Inventory file. An example would be:

//XVTPGEXP DD DISP=SHR,DSN=ACME.EXPORT.PGMINV

See “EXPORT” on page 13-7 for more details. Sample JCL (JCLCDEFE) to define the
export file is supplied in SMXDSAMP.
Program Inventory Utility 13-3

Figure 13-2. JCLCDEFE Sample JCL

//* YOUR JOB CARD HERE


//* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
//*
//* CODE COVERAGE INSTALL STEP: JCLCDEFE
//*
//* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
//*
//* JCLCDEFE - IEFBR14 JCL TO ALLOCATE THE XPEDITER/CICS CODE COVERAGE
//* - PROGRAM INVENTORY EXPORT FILE.
//*
//* THE FOLLOWING JCL WILL ALLOCATE AN XPEDITER/CICS CODE COVERAGE
//* PROGRAM INVENTORY EXPORT FILE. SUPPLY THE STEPCAT, VOLSER, UNIT,
//* DSN, AND SPACE PARAMETERS. THIS JCL IS INTENDED AS AN EXAMPLE.
//* PLEASE CONSULT THE INSTALLATION GUIDE BEFORE RUNNING.
//*
//EXPORT EXEC PGM=IEFBR14
//EXPORT DD DSN=XV.PGMINV.EXPORT, <== CHECK DSN
// SPACE=(CYL,(5,5),RLSE), <== CHECK SPACE
// DCB=(RECFM=FB,LRECL=4160,BLKSIZE=24960),
// UNIT=SYSDA, <== CHECK VOLUME
// DISP=(NEW,CATLG)
//

XVTPGIMP
This DD names the source of the IMPORT command used to load program members into
a Program Inventory file. An example would be:

//XVTPGIMP DD DISP=SHR,DSN=ACME.EXPORT.PGMINV

See “IMPORT” on page 13-8 for more details.

CCCARDS
Insert this optional DD to name the dataset to be used as output from the GENERATE
command. For example:

//CCCARDS DD SYSOUT=*

If this dataset is other than a JES SYSOUT dataset, it must have an 80-byte record length
and a fixed or fixed blocked record format. For example, DCB=(RECFM=FB,LRECL=80).
Dataset blocksize (BLKSIZE) can be set to any desired value. Refer to the “GENERATE
Command” on page 13-7 for more details.

CONTROL
This DD contains one or more Code Coverage Program Inventory Utility commands
(control statements). Refer to “Program Inventory Utility Commands” on page 13-4 for
descriptions of the available commands. Each command is honored individually, which
means an error in one command will have no direct affect on a subsequent command.

CONTROL will normally be a JES SYSIN dataset, however to use an existing CONTROL
dataset, an 80-byte record length and a fixed or fixed blocked record format are required.
For example, DCB=(RECFM=FB,LRECL=80). Dataset blocksize (BLKSIZE) can be set to any
desired value.
13-4 Xpediter/Code Coverage Mainframe User/Reference Guide

Program Inventory Utility Commands


The following sections explain the various commands available when running the Code
Coverage Program Inventory Utility. These commands are coded as control statements in
the dataset named by the CONTROL DD statement.

CONTROL Statement Parsing


The FORMAT command requires keyword parameters. All other Program Inventory
Utility commands accept positional parameters. All parameters must fit in the first 72
columns of a single 80-byte record. Continuations are not supported.

Keyword parameters are coded keyword=value. The keyword may be a full or abbreviated
name.

Positional parameters can include an asterisk (*) wildcard character. This wildcard can be
used as a suffix to a value or as the entire value. For example, DFH* would apply to all
values which begin with DFH, but * alone would match any value.

The primary positional values are for LMOD, CSECT, and date and time stamp. Some
commands may require, or allow for, additional positional parameters. For example, the
COLLECT command allows for a value of ON or OFF as a fourth positional parameter.

FORMAT Command
A Program Inventory dataset must be formatted before it can be used by the CICS
component of Xpediter/Code Coverage. Its DCB attributes are RECFM=FBS, and the
LRECL and BLKSIZE must be equal. The BLKSIZE determines the size of a physical record
and will default to half-track blocking. The space allocation must allow enough primary
and secondary extents to cover the number of blocks to be formatted. The number of
blocks to be formatted is specified on a FORMAT command using the keyword parameters
described below.

Once you have formatted a Program Inventory, you cannot alter its space allocation
(number of TRKS or CYLS) or DCB attributes (RECFM, LRECL, or BLKSIZE). In order to
change DCB attributes, a Program Inventory must be re-allocated and formatted. If an
existing Program Inventory is reformatted, the dataset’s secondary allocation can be
utilized. Formatting an existing Program Inventory will erase all data in the dataset.

GROUPCNT
The GROUPCNT keyword parameter, abbreviated GC, is used to specify the number
of blocks which comprise an extent. For example, if GROUPCNT is 7, then space for
each program inventory member will be allocated in increments of 7 blocks. This
number must be between 7 and 31 (inclusive). The default is 7.
BLOCKS
The BLOCKS keyword parameter, abbreviated BLK, represents the number of physical
records to be formatted. The size of a physical record is specified by the DCB BLKSIZE
Program Inventory Utility 13-5

attribute. Regardless of the JCL SPACE allocation, only this number of BLKSIZE
records will be formatted. The default is 3000. When using a half-track blocking
factor, this default equates to 1500 tracks or 100 cylinders.
DIRENTS
DIRENTS (abbreviated DENT) specifies the minimum number of directory entries to
be allowed. The value specified should be greater than the maximum number of
programs to be tested with Xpediter/Code Coverage. The Program Inventory
directory is a pre-allocated, contiguous area within the Program Inventory file. This
number cannot be changed after the Program Inventory file has been formatted. The
default is 1500. Any reasonable value for the number of entries (i.e., a value not
exceeding the available blocks) can be specified.
AUTODELETE
AUTODELETE (abbreviated ADEL) optionally specifies that old members may be
deleted by the Populate Utility if space is needed to add a new member. If NO is
specified for AUTODELETE, the attempt to add the new member will fail. If YES is
specified for AUTODELETE, old members will be deleted until sufficient space is
available for the new member. All deletes are logged by the Populate Utility. The
default is YES.

COLLECT
Use the COLLECT command or the COLLECT control card in the Code Coverage CICS
Populater to set the collection status for your CICS programs.

Before Xpediter/Code Coverage can be used, the COLLECT command — or the COLLECT
control card in the Code Coverage Populater — must be used to designate which
programs you want Code Coverage to monitor. The COLLECT command sets the
collection status for one or more programs to either ON or OFF. When the Code Coverage
CICS Populater adds a program to the Program Inventory, the collection status for that
program is initially set to OFF by default.

The COLLECT command can include up to four optional positional parameters.

lmod
For lmod specify the name of the desired load module or an asterisk (*) wildcard
character.
csect
For csect specify the name of the desired CSECT within the specified load module or
an asterisk (*) wildcard character.
date/time stamp
Specify the desired compile date/time stamp in the format CCYYMMDDHHMMSS.
ON/OFF
The fourth positional parameter is used to specify collection status. Valid values are
ON and OFF. The default is ON.

COPY
The COPY command allows program entries to be copied from one Program Inventory
file to another. The source Program Inventory file is named by the XVTPGINV DD
13-6 Xpediter/Code Coverage Mainframe User/Reference Guide

statement. The target file for the COPY command is named by the XVTPGCPY DD
statement. The COPY command can include up to four optional positional parameters,
but must include at least one.

lmod
Specify the name of the desired load module or an asterisk (*) wildcard character.
csect
Specify the name of the desired CSECT within the specified load module or an
asterisk (*) wildcard character.
date/time stamp
Specify the desired compile date/time stamp in the format CCYYMMDDHHMMSS.
REPLACE
The fourth positional parameter, REPLACE, is used to specify whether an existing
duplicate program entry in the target file is to be overwritten. It can be abbreviated
REP. The default is to not overwrite an existing duplicate program entry.

Note: The EXPORT and IMPORT commands can be used to copy program members
between Program Inventory files on systems that do not share DASD. The
EXPORT command is used to create a sequential dataset that is transmitted to the
target system. The IMPORT command is then be used to load the selected
members from the transmitted sequential dataset into the target system’s
Program Inventory file.

DELETE Command
The DELETE command allows program entries to be removed from the Program
Inventory file. The DELETE command can include up to three optional positional
parameters, but must include at least one.

lmod
Specify the name of the desired load module or an asterisk (*) wildcard character.
csect
Specify the name of the desired CSECT within the specified load module or an
asterisk (*) wildcard character.
date/time stamp
Specify the desired compile date/time stamp in the format CCYYMMDDHHMMSS.
Program Inventory Utility 13-7

DIR Command
The DIR command builds a report of each program entry within a Program Inventory file
and writes it to the specified SYSPRINT location. The DIR command can include up to
three optional positional parameters.

lmod
Specify the name of the desired load module or an asterisk (*) wildcard character.
csect
Specify the name of the desired CSECT within the specified load module or an
asterisk (*) wildcard character.
date/time stamp
Specify the desired compile date/time stamp in the format CCYYMMDDHHMMSS.

GENERATE Command
The GENERATE command writes a series of COLLECT control statements to the dataset
named by the optional CCCARDS DD statement. The CCCARDS dataset may be used as
input to subsequent executions of the Program Inventory Utility by specifying it in the
CONTROL DD statement. The COLLECT control statements output by the GENERATE
command have no wildcards values and their collection status is ON. The GENERATE
command can include up to three optional positional parameters.

lmod
Specify the name of the desired load module or an asterisk (*) wildcard character.
csect
Specify the name of the desired CSECT within the specified load module or an
asterisk (*) wildcard character.
date/time stamp
Specify the desired compile date/time stamp in the format CCYYMMDDHHMMSS.

EXPORT
The EXPORT command allows program entries to be extracted from a Program Inventory
file into a sequential dataset. The source Program Inventory file is named by the
XVTPGINV DD statement. The XVTPGEXP DD statement names the target file for the
EXPORT command. The EXPORT command can include up to three optional positional
parameters, but must include at least one.

lmod
Specify the name of the desired load module or an asterisk (*) wildcard character.
13-8 Xpediter/Code Coverage Mainframe User/Reference Guide

csect
Specify the name of the desired CSECT within the specified load module or an
asterisk (*) wildcard character.
date/time stamp
Specify the desired compile date/time stamp in the format CCYYMMDDHHMMSS or
an asterisk (*) wildcard character.

Note: The EXPORT and IMPORT commands can be used to copy program members
between Program Inventory files on systems that do not share DASD. The
EXPORT command is used to create a sequential dataset that is transmitted to the
target system. The IMPORT command is then be used to load the selected
members from the transmitted sequential dataset into the target system’s
Program Inventory file.

IMPORT
The IMPORT command allows program entries to be loaded into a Program Inventory file
from an EXPORT sequential dataset. The XVTPGIMP DD statement names the source file
for the IMPORT command. The XVTPGINV DD statement names the destination Program
Inventory file. The IMPORT command can include up to four optional positional
parameters, but must include at least one.

lmod
Specify the name of the desired load module or an asterisk (*) wildcard character.
csect
Specify the name of the desired CSECT within the specified load module or an
asterisk (*) wildcard character.
date/time stamp
Specify the desired compile date/time stamp in the format CCYYMMDDHHMMSS or
an asterisk (*) wildcard character.
REPLACE
Specify whether an existing duplicate program entry in the target file is to be
overwritten. The default is to not overwrite an existing duplicate program entry.

Note: The EXPORT and IMPORT commands can be used to copy program members
between Program Inventory files on systems that do not share DASD. The
EXPORT command is used to create a sequential dataset that is transmitted to the
target system. The IMPORT command is then be used to load the selected
members from the transmitted sequential dataset into the target system’s
Program Inventory file.
A-1

Appendix A. Appendix A.

Code Coverage Messages App A

This appendix explains the various informational, error, and warning messages associated with
Xpediter/Code Coverage.

Console Message Format


Most messages written to the console are multi-line messages with a common format for the first
line:

pppppnnnns dd mmm yyyy hh:mm:ss aaaaaaaa

where

ppppp is the message prefix (XVTC or XVTT),

nnnn is the message number,

s is the message severity (I=Informational, E=Error, W=Warning),

dd mmm yyyy is the date the message was issued,

hh:mm:ss is the time the message was issued, and

aaaaaaaa is the VTAM applid of the CICS region issuing the message.

For example:

XVTC0011E 25 DEC 1998 15:51:08 ACMEC011

Because this first line has the same general format for most messages, it is not included in the
messages documented in this appendix.

Also in this appendix, message text that can vary is presented in italics. For example:

Module aaaaaaaa has an invalid module header.

TSO/ISPF Messages
XVTT1000E ERROR OPENING SYSPRINT

Module: XVTTAMNT, XVTTARPT, XVTTAHRD, XVTTAEXP, XVTTAANT


Explanation: An error occurred opening the SYSPRINT dataset.

User Response: Ensure a valid SYSPRINT DD card is present.

XVTT1001E ERROR LOADING XVTTAO2J. CHECK STEPLIB

Module: XVTTAMNT, XVTTARPT, XVTTAHRD, XVTTAEXP


Explanation: Required Code Coverage module XVTTAO2J could not be found.

User Response: Ensure that the STEPLIB contains the Code Coverage library.

XVTT1002E UNABLE TO FIND THE BEGINNING OF PTF LIST


Module: XVTTAMNT
A-2 Xpediter/Code Coverage Mainframe User/Reference Guide

Explanation: The required PTFLIST identification validation failed.

User Response: Contact Compuware Customer Support.

XVTT1003E XVTTAPTF MODULE NOT FOUND. CHECK STEPLIB


Module: XVTTAMNT

Explanation: A required Code Coverage module could not be found.

User Response: Ensure that the STEPLIB contains the Code Coverage library.

XVTT1004E ERROR LOADING XVTTAPGM. CHECK STEPLIB

Module: XVTTARPT

Explanation: A required Code Coverage module could not be found.

User Response: Ensure that the STEPLIB contains the Code Coverage library.

XVTT1005E ERROR LOADING XVTTAANT. CHECK STEPLIB


Module: XVTTARPT

Explanation: A required Code Coverage module could not be found.


User Response: Ensure that the STEPLIB contains the Code Coverage library.

XVTT1006E ERROR OPENING SYSIN


Module: XVTTARPT XVTTAEXP

Explanation: An error occurred while opening the SYSIN dataset.

User Response: Ensure a SYSIN DD card is present.

XVTT1007E ERROR READING SYSIN


Module: XVTTARPT
Explanation: An error occurred while reading the SYSIN dataset.

User Response: Ensure the SYSIN dataset is Fixed Block with Record length of 80.

XVTT1008E ERROR WRITING SYSPRINT


Module: XVTTARPT, XVTTAEXP, XVTTAANT

Explanation: An error occurred while writing to the SYSPRINT dataset.

User Response: Ensure the SYSPRINT dataset is Fixed Block with record length 133.

XVTT1009E ERROR LOADING XVTTARIO. CHECK STEPLIB


Module: XVTTAHRD and XVTTAEXP

Explanation: A required Code Coverage module could not be found.


User Response: Ensure that the STEPLIB contains the Code Coverage library.

XVTT1010E ERROR OPENING REPOSITORY DATASET

Module: XVTTAHRD and XVTTAEXP

Explanation: An error occurred while opening a Code Coverage repository dataset.

User Response: Ensure that XCOVER points to a valid Code Coverage repository.

XVTT1011E ERROR OPENING EXTRACT DATASET. DECIMAL ERROR CODE = XXXX


Module: XVTTAHRD

Explanation: An error occurred while opening the EXTRACT dataset. “XXXX” is the VSAM
error code in decimal.

User Response: Ensure that the EXTRACT DD is pointing to a valid extract file, used by
Xpediter/CICS.
Code Coverage Messages A-3

XVTT1012E REPOSITORY ENQUEUE FAILED

Module: XVTTAHRD
Explanation: An error occurred while trying to acquire an enqueue in a Code Coverage
repository.

User Response: Notify Compuware Customer Support.

XVTT1013E REPOSITORY LOGIC ERROR

Module: XVTTAHRD

Explanation: A logic error occurred writing the repository record.

User Response: Notify Compuware Customer Support.

XVTT1014E DD MISSING
Module: XVTTAHRD and XVTTAEXP

Explanation: A DD for the repository dataset is missing.

User Response: Add a DD for the XCOVER repository.

XVTT1015I EMPTY EXTRACT FILE


Module: XVTTAHRD
Explanation: The Extract file doesn’t contain any records to write to the repository.

User Response: None

XVTT1016I EXTRACT FILE HAS BEEN RESET

Module: XVTTAHRD
Explanation: The hardening utility has successfully written the extract records to the
repository, and it has removed the records from the Extract file.

User Response: None

XVTT1017I EXTRACT FILE HAS NOT BEEN RESET

Module: XVTTAHRD
Explanation: The hardening utility has completed and either a previous error occurred while
trying to harden a member, or the NORESET execution parm was specified.

User Response: Check for prior error messages in SYSPRINT.

XVTT1018E NO MEMBERS FOUND MATCHING THE SPECIFIED CRITERIA

Module: XVTTAHRD, XVTTAEXP, XVTTAANT


Explanation: No repository records were found matching the criteria you specified.

User Response: Change the criteria.

XVTT1019E INVALID REPOSITORY

Module: XVTTAHRD and XVTTAEXP

Explanation: The dataset specified by XCOVER is not a Code Coverage repository.


User Response: Change the XCOVER DD to point to a valid repository.

XVTT1020W INCOMPLETE RECORD. BYPASSED

Module: XVTTAHRD
Explanation: An extract header record was not followed by a detail record.

User Response: Contact Compuware Customer Support.

XVTT1021E ERROR RETREIVING CSS FOR XXXXXXXX DATED: MM/DD/YYYY HH:MM:SS IN


ZZZZZZZZZZZZZZZZZZZZ

Module: XVTTAHRD
A-4 Xpediter/Code Coverage Mainframe User/Reference Guide

Explanation: An error occurred retrieving CSS information for member XXXXXXXX in a


DDIO dataset specified by ZZZZZZZZZZZZZZZZZZZZ.
User Response: If the member has been moved to another DDIO, you must recollect the data
under Xpediter/CICS.

XVTT1022E ERROR IN REPOSITORY I/O MODULE

Module: XVTTAHRD and XVTTAEXP

Explanation: An error occurred within the repository I/O module (XVTTARIO).

User Response: Contact Compuware Customer Support.

XVTT1023E I/O ERROR IN REPOSITORY

Module: XVTTAHRD and XVTTAEXP


Explanation: An I/O error occurred processing the repository dataset.

User Response: Contact Compuware Customer Support.

XVTT1024E INVALID I/O PARAMETER. CONTACT COMPUWARE TECHNICAL SUPPORT

Module: XVTTAHRD and XVTTAEXP


Explanation: The repository I/O module was passed an invalid parameter.
User Response: Contact Compuware Customer Support.

XVTT1025E EXTRACT FILE IS NOT A VSAM ESDS

Module: XVTTAHRD

Explanation: The Extract file must be in the format of a VSAM ESDS.


User Response: Ensure that the XEXTRACT DD is pointing to a valid extract file.

XVTT1026E ERROR WRITING EXPORT DATASET

Module: XVTTAEXP
Explanation: An error occurred while writing to the Export dataset.

User Response: Ensure that the EXPORT DD is pointing to a valid export file.

XVTT1027E ERROR READING EXPORT DATASET

Module: XVTTAEXP

Explanation: An error occurred while reading the Export dataset.


User Response: Ensure that the EXPORT DD is pointing to a valid export file.

XVTT1028E GETMAIN FAILED. INCREASE REGION SIZE.


Module: XVTTAEXP and XVTTAANT

Explanation: A ’GETMAIN’ request failed.

User Response: Increase the region size.

XVTT1029E ERROR LOADING XVTXAPI. CHECK STEPLIB

Module: XVTTAANT
Explanation: A required Code Coverage module could not be found.

User Response: Ensure that STEPLIB contains the Code Coverage load library.

XVTT1030W CSS SOURCE ERR FOR: XXXXXXXX DATED HH:MM:SS MM/DD/YYYY

Module: XVTTAANT
Explanation: An error occurred retrieving CSS information for member “XXXXXXXX” dated
hh:mm:ss mm/dd/yyyy.
User Response: If the member XXXXXXXX has been moved to another DDIO, specify the
new DDIO dataset in the DDIO overrides within the setup screen.
Code Coverage Messages A-5

XVTT1031E ERROR OPENING REPOSITORY AND/OR DDIO DATASET(S)

Module: XVTTAANT
Explanation: An error occurred while opening either a repository or DDIO override dataset.

User Response: Ensure that the specified repository(s) and DDIO override datasets are valid.

XVTT1032E EXTRACT READ ERROR. DECIMAL FEEDBACK = XXXXXXXX

Module: XVTTAHRD

Explanation: An error occurred reading the extract file. The VSAM feedback in decimal is
“XXXXXXXX”.

User Response: Ensure the EXTRACT DD is a valid Code Coverage Extract dataset.

XVTT1033E CANNOT FIND CSECT RANGE FOR NNNNNNNN


Module: XVTTAHRD

Explanation: An error occurred finding the internal line number for an offset within CSECT
NNNNNNNN. The CSS External Symbol Dictionary (ESD) table does not contain an entry for
CSECT NNNNNNNN.

User Response: Contact Compuware Customer Support.

XVTT1034W NO MEMBERS FOR SYS: XXXXXXXXXXXXXXX MODULE: YYYYYYYY PROGRAM:


ZZZZZZZZ
Module: XVTTAANT
Explanation: A report request was made for system XXXXXXXXXXXXXX load module
YYYYYYYY and program ZZZZZZZZ, but nothing was found in the repository matching this
request.

User Response: Ensure the repository and selection criteria are correctly specified.

XVTT1035W BYPASSING CSS ERROR FOR XXXXXXXX DATED MM/DD/YYYY HH:MM:SS IN


YYYYYYYYYYYYYYYY
Module: XVTTAHRD
Explanation: An error occurred while accessing the DDIO member "XXXXXXXX" dated
mm/dd/yyyy hh:mm:ss in DDIO dataset "YYYYYYYYYYYYYYYY" and the Extract record does not
contain any verbs that were executed. Therefore, since this record does not contain any
worthwhile data, the record is simply bypassed.

User Response: None.

XVTT1036E INVALID PARM ON SYSIN


Module: XVTTAHRD

Explanation: SYSIN contains an unrecognized parameter.


User Response: Verify that the parameters in the SYSIN dataset are correct.

XVTT1037E MISSING REQUIRED SYSIN PARM

Module: XVTTAHRD

Explanation: SYSIN is missing a required parameter.

User Response: For DELETE requests, ensure that Program, Date, and Time are specified.

XVTT1038E ERROR LOADING XVTTADSC. CHECK STEPLIB


Module: XVTTAANT

Explanation: A required Code Coverage module could not be found.

User Response: Ensure that the STEPLIB contains the Code Coverage load library.
A-6 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTT1039E CODE: XXXX SSSSSSSS

Module: XVTTAANT
Explanation: An error occurred while attempting to retrieve data from a Code Coverage
repository dataset or DDIO file. The error code is XXXX, followed by SSSSSSSS, which is a
description of the error.

Return Code Meaning


X’0000’ Request successful
X’0008’ DDIO action unsuccessful, see XVXRCSS trace field
X’0009’ No data found processing DDIO request
X’000A’ DDIO dataset name equal to spaces
X’000C’ DDIO member name equal to spaces
X’000D’ Attempted to read DDIO dataset prior to open
X’000E’ DDIO member date-time not found in DDIO dataset
X’000F’ DDIO process failed, see XVXRCSS trace field
DDIO dataset failed dynamic allocation, see the XVXRCSS trace field:
X’0010’ bytes 0 and 1 of XVXRCSS=S99ERROR
bytes 2 and 3 of XVXRCSS=S99INFO
X’0012’ DDIO request for ESD entries, but source language is not Assembler
X’0020’ ID string, XVXEYE, not equal to ’XVX@’
X’0022’ Unable to open DDIO override datasets
X’0024’ Invalid function request, must equal to ’O’, ’C’, ’R’, ’E’, ’N’, ’V’, ’F’, or ’S’
X’0028’ Invalid validation string for shared work area
X’0030’ DDIO table does not exist for ESDs, refer to XVXRCSS trace field
X’0034’ No ESD entries found for Assembler source request
X’0038’ DDIO convert to token to CSECT failed, refer to XVXRCSS trace field
X’003C’ Invalid ESD range found, refer to XVXRCSS trace field
The Code Coverage application was invoked using a CSS release that was lower than
X’0040’
the CSS release that was used to compile the requested module.

User Response: Ensure that the repository and DDIO members required for the report still
exist in the appropriate dataset. For return code X'0040', make sure that the Code Coverage
application is invoked with the most recent CSS release installed at your site.

XVTT1040E LOGIC ERROR MERGING TO REPOSITORY: LENGTHS DID NOT MATCH, PREVIOUS
RECORD SKIPPED

Module: XVTTALRP
Explanation: A logic error was returned by the Repository I/O module while merging to the
repository.

User Response: Contact Compuware Customer Support.

XVTT1041E UNABLE TO ALLOCATE ANY REPOSITORY DATASETS

Module: XVTTAPGM

Explanation: Dynamic allocation was used to allocate the repository datasets specified in the
user profile. A non-zero return code was received from dynamic allocation for all repository
datasets.

User Response: Use the Setup command in the print utility to modify the list of repository
datasets and specify all datasets that are cataloged and accessible by the batch program.

XVTT1042W UNABLE TO ALLOCATE ONE OR MORE DATASETS

Module: XVTTAPGM
Explanation: Dynamic allocation was used to allocate the repository datasets specified in the
user profile. A non-zero return code was received from dynamic allocation for one or more
Code Coverage Messages A-7

repository datasets. The report continued with those repository datasets that were successfully
allocated.
User Response: Use the Setup command in the print utility to modify the list of repository
datasets and specify all datasets that are cataloged and accessible by the batch program.

XVTT1043E NO ENTRIES FOUND MATCHING THIS REQUEST

Module: XVTTAPGM

Explanation: No repository records were found matching the criteria you specified.

User Response: Modify your selection criteria.

XVTT1044E EMPTY DATASET-NO RECORDS AVAILABLE

Module: XVTTAPGM
Explanation: No valid Code Coverage collection has taken place in Xpediter.

User Response: You must run Xpediter/Code Coverage before you can generate a program,
system, or annotated report.

XVTT1045E NO SYSIN DATA


Module: XVTTADEL
Explanation: SYSIN parameters have not been provided for the LIST/DELETE utility. SYSIN is
either DUMMY or empty.
System Action: None
User Response: Provide SYSIN data and rerun the LIST/DELETE utility.

XVTT1046E NO VALID SYSIN DATA


Module: XVTTADEL
Explanation: Some parameters have been provided in the SYSIN DD of the LIST/DELETE
utility, but no request is valid.

System Action: None


User Response: Correct the SYSIN data and rerun the LIST/DELETE utility.

XVTT1047E SYNTAX ERROR IN ABOVE LINE


Module: XVTTADEL

Explanation: The previous SYSOUT DD line includes a copy of the SYSIN record with a
syntax error. The LIST/DELETE request including the syntax error is not processed.

System Action: None

User Response: Correct the SYSIN data and rerun the LIST/DELETE utility.

XVTT1048E KEYWORD DAY ALSO REQUIRES YEAR AND MONTH

Module: XVTTADEL

Explanation: The compilation date can be defined by the combination of these parameters:
MONTH, DAY and YEAR, or MONTH and YEAR, or YEAR. A single parameter of DAY is not
allowed.

System Action: None

User Response: Correct the SYSIN data and rerun the LIST/DELETE utility.

XVTT1049E KEYWORD MONTH ALSO REQUIRES YEAR

Module: XVTTADEL
Explanation: The compilation date can be defined by the combination of these parameters:
MONTH, DAY and YEAR, or YEAR, or MONTH and YEAR. Using the parameters: MONTH, or
MONTH and DAY, is not allowed.

System Action: None

User Response: Correct the SYSIN data and rerun the LIST/DELETE utility.
A-8 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTT1050E KEYWORD SEC ALSO REQUIRES HOUR AND MIN

Module: XVTTADEL
Explanation: The compilation time can be defined by the combination of these parameters:
HOUR, MIN and SEC, or HOUR, or HOUR and MIN. A single parameter of SEC is not allowed.

System Action: None

User Response: Correct the SYSIN data and rerun the LIST/DELETE utility.

XVTT1051E KEYWORD MIN ALSO REQUIRES HOUR

Module: XVTTADEL

Explanation: The compilation time can be defined by the combination of these parameters:
HOUR, MIN and SEC, or HOUR, or HOUR and MIN. Using the parameters: SEC, or SEC and
MIN is not allowed.

System Action: None

User Response: Correct the SYSIN data and rerun the LIST/DELETE utility.

XVTT1052E INVALID EXEC PARM


Module: XVTTADEL

Explanation: The optional EXEC PARM allows the user to change the default to 56 lines per
page for both SYSPRINT and SYSOUT. If specified, EXEC PARM must consist of numerical digits
which are higher than 18 and lower than 999.

System Action: None


User Response: Correct EXEC PARM and rerun the LIST/DELETE utility.

XVTT1053E REPOSITORY UPDATE ACCESS DENIED - AUTHORIZATION FAILED

Module: XVTTADEL

Explanation: The user is not authorized to update the contents of a Code Coverage
Repository dataset defined by the DSN of XCOVER DD.

System Action: None


User Response: Obtain the authority to update the Code Coverage Repository dataset.

XVTT1054E REPOSITORY READ ACCESS DENIED - AUTHORIZATION FAILED


Module: XVTTADEL

Explanation: The user is not authorized to access the Code Coverage Repository dataset as
defined by the DSN of XCOVER DD.

System Action: None


User Response: Obtain the authority to access the Code Coverage Repository dataset.

XVTT1055E MODULE XVTTASDL ABENDED WITH ZZZZ


Module: XVTTAMSG and XVTTCDEL (REXX code)

Explanation: The on-line LIST/DELETE utility abended with a system code of ZZZZ.

System Action: None


User Response: Save the accompanying dump and contact Compuware Customer Support.

XVTT1056E CSECT XVTTASDL ABENDED AT +XXXX WITH ZZZZ

Module: XVTTAMSG and XVTTCDEL (REXX code)


Explanation: The on-line LIST/DELETE utility abended in CSECT XVTTASDL with a system
code of ZZZZ at offset XXXX.

System Action: None

User Response: Save the accompanying dump and contact Compuware Customer Support.
Code Coverage Messages A-9

XVTT1057E MODULE XVTTAENQ ABENDED WITH ZZZZ

Module: XVTTAMSG, REXX code XVTTCDM, or XVTTCGO selecting module XVTTAENQ


Explanation: Code Coverage Startup module XVTTAENQ abended with a system code of
ZZZZ.

System Action: None

User Response: Save the accompanying dump and contact Compuware Customer Support.

XVTT1058E CSECT XVTTAENQ ABENDED AT +XXXX WITH ZZZZ

Module: XVTTAMSG, REXX code XVTTCDM, or XVTTCGO selecting module XVTTAENQ

Explanation: Code Coverage Startup module XVTTAENQ abended with a system code of
ZZZZ at offset XXXX.

System Action: None

User Response: Save the accompanying dump and contact Compuware Customer Support.

XVTT1059E COULD NOT FIND SLS MODULE. CHECK STEPLIB

Module: XVTTALRP
Explanation: A required Code Coverage module could not be found.

User Response: Ensure that the Compuware Shared Services (CSS) load library is allocated in
the STEPLIB DD card concatenation.

XVTT1060E COULD NOT FIND I/O MODULE. CHECK STEPLIB


Module: XVTTALRP

Explanation: A required Code Coverage module could not be found.


User Response: Ensure that the Code Coverage load library is allocated in the STEPLIB DD
card concatenation.

XVTT1061E ERROR ISSUING CSS - SLS INIT CALL

Module: XVTTALRP
Explanation: The initialization call to CSS has failed.
User Response: Contact Compuware Customer Support.

XVTT1062E ERROR ISSUING CSS - SLS OPEN CALL

Module: XVTTALRP
Explanation: The open call to CSS has failed.

User Response: Contact Compuware Customer Support.

XVTT1063E ERROR ISSUING CSS - SLS DESCLINE CALL


Module: XVTTALRP

Explanation: A request sent to CSS has failed.

User Response: Contact Compuware Customer Support.

XVTT1064E ERROR ALLOCATING DDIO0001 (SLS DD)

Module: XVTTALRP

Explanation: The Code Coverage Repository record points to a DDIO library. The allocation
for that DDIO library has failed.
User Response: Ensure that the DDIO library still exists. If it does, contact Compuware
Customer Support.

XVTT1065E ERROR FREEING DDIO0001 (SLS DD)

Module: XVTTALRP

Explanation: An error occurred while attempting to free DDIO0001.


A-10 Xpediter/Code Coverage Mainframe User/Reference Guide

User Response: This is only a problem if multiple reports were to be produced. If it occurs
frequently, contact Compuware Customer Support.

XVTT1066E DUPLICATE ERROR - SAME TIMESTAMP


Module: XVTTALRP

Explanation: Attempted to write the same record twice.

User Response: Contact Compuware Customer Support.

XVTT1067E ERROR IN REPOSITORY I/O MODULE

Module: XVTTALRP

Explanation: An unknown error code was returned by the Repository I/O module.

User Response: Contact Compuware Customer Support.

XVTT1068E LOGIC ERROR MERGING TO REPOSITORY: LENGTHS DID NOT MATCH, PREVIOUS
RECORD SKIPPED

Module: XVTTALRP

Explanation: A logic error was returned by the Repository I/O module while merging to the
repository.

User Response: Contact Compuware Customer Support.

XVTT1069E INVALID I/O PARAMETER. CONTACT COMPUWARE SUPPORT IMMEDIATELY

Module: XVTTALRP

Explanation: An invalid I/O parameter was returned by the Repository I/O module.
User Response: Contact Compuware Customer Support immediately.

XVTT1070E INVALID COMPONENT LEVEL FOR RECORD UPDATE

Module: XVTTAHRD
Explanation: An invalid component level record update was returned by the Repository I/O
module.
User Response: Contact Compuware Customer Support.

XVTT1071E ERROR ISSUING CSS - SLS SET VIEW CALL

Module: XVTTALRP
Explanation: An error was reported while issuing a CSS-SLS Set View call.

User Response: Contact Compuware Customer Support.

XVTT1072E NONSTANDARD PTF IDENTIFIER ENCOUNTERED

Module: XVTTAMNT

Explanation: Validation failed on a PTF number, or failed on the PTFLEND identifier.

User Response: Contact Compuware Customer Support.

XVTT1073E STORAGE NOT AVAILABLE - GETMAIN FAILED


Module: XVTTAHRD

Explanation: GETMAIN failed due to insufficient storage space.

User Response: Contact Compuware Customer Support.

XVTT1074E OBSOLETE REPOSITORY DATASET - CREATE NEW DATASET AND RERUN


Module: XVTTAHRD

Explanation: An attempt to access an obsolete repository dataset resulted in the failure of


your job to complete.

User Response: Create a new dataset and rerun the job. If the job fails, contact Compuware
Customer Support.
Code Coverage Messages A-11

XVTT1075E UPDATE OF REPOSITORY DATASET FAILED - MISSING SEGMENT

Module: XVTTAHRD
Explanation: An update of the repository dataset has failed. A segment is missing.

User Response: Contact Compuware Customer Support.

XVTT1076E XVTTAENQ DETECTED RC=XX CALLING ISPF "SERVICE" SERVICE

Module: XVTTAENQ

Explanation: None

User Response: Contact Compuware Customer Support.

XVTT1077E MISSING KEYWORD TYPE

Module: XVTTADEL
Explanation: None

User Response: Contact Compuware Customer Support.

XVTT1078E INCONSISTENT KEYWORD(S) WITH TYPE=C


Module: XVTTADEL
Explanation: None
User Response: Contact Compuware Customer Support.

XVTT1079E EITHER KEYWORD PGM OR KEYWORD TXN CAN BE SPECIFIED

Module: XVTTADEL

Explanation: An incorrect keyword is specified.


User Response: Contact Compuware Customer Support.

XVTT1080E EITHER KEYWORD DPGM OR KEYWORD DTXN CAN BE SPECIFIED FOR TYPE=F

Module: XVTTADEL
Explanation: An incorrect keyword is specified for TYPE=F.

User Response: Contact Compuware Customer Support.

XVTT1081E INCONSISTENT KEYWORD(S) WITH TYPE=F AND BOTH KEYWORD PGM AND
KEYWORD TXN ABSENT

Module: XVTTADEL
Explanation: An inconsistent keyword with TYPE=F is specified and another keyword is
absent.

User Response: Contact Compuware Customer Support.

XVTT1082E INCONSISTENT KEYWORD(S) WITH TYPE=F AND KEYWORD TXN

Module: XVTTADEL

Explanation: An inconsistent keyword with TYPE=F is specified with keyword TXN.

User Response: Contact Compuware Customer Support.

XVTT1083E REPOSITORY INCOMPATIBLE WITH CURRENT CODE COVERAGE RELEASE

Module: XVTTADEL

Explanation: The repository is incompatible with the current release of Code Coverage .
User Response: Contact Compuware Customer Support.

XVTT1084W INVALID PARAMETER VALUE FOUND. REMAINDER OF PARAMETER CARD SET TO


DEFAULT VALUES
Module: XVTTARPT
A-12 Xpediter/Code Coverage Mainframe User/Reference Guide

Explanation: An invalid parameter value has been found and the remaining parameter card
set values have been reset to the default values.
User Response: Contact Compuware Customer Support.

XVTT1085W INSUFFICIENT AUTHORITY TO DELETE RECORD(S) BY INSTALLATION RESTRICTION

Module: XVTTADEL

Explanation: An attempt to delete a record was denied because the user did not have
sufficient authority to delete it. This is an installation restriction on the repository dataset that
was used.

User Response: Contact your security administrator.

XVTT1086E ERROR LOADING XVTTASFR. CHECK STEPLIB.


Module: XVTTAFRP

Explanation: A required System Flow report module could not be found.

User Response: Ensure that the STEPLIB contains the Code Coverage library.

XVTT1087E ERROR LOADING XVTTANOT. CHECK STEPLIB.


Module: XVTTAFRP
Explanation: A required System Flow report module could not be found.

User Response: Ensure that the STEPLIB contains the Code Coverage library.

XVTT1088W NO MEMBERS FOR SYS: XXXXXXXXXXXXXXX TST: YYYYYYYYYYYYYYY USR:


ZZZZZZZZ

Module: XVTTASFR
Explanation: A System Flow report request was made for system: XXXXXXXXXXXXXXX
Testid: YYYYYYYYYYYYYYY and Userid: ZZZZZZZZ, but nothing was found in the repository
matching this request.

User Response: Ensure the repository and selection criteria are correctly specified.

XVTT5001E ABEND xxxx OCCURRED IN MODULE yyyyyyyy AT +zzz. PLEASE SAVE SYSABEND
DUMP AND CONTACT COMPUWARE.

Module: ADSIS320, ADSIS321

Explanation: An abend has occurred in a JCL convert program.


User Response: Contact Compuware Customer Support.

XVTT5002E xxxxxxxx DD STATEMENT PARAMETER nnnnnnnnnnnnnnn IS INCORRECT.

ADSIS320

Explanation: The DD statement identified in the message has a bad parameter.

User Response: Correct the JCL and run the convert again.

XVTT5003E xxxxxxxx DD STATEMENT PARAMETER nnnnnnnnnnnnnn IS MISSING OR BLANK.


Module: ADSIS320, ADSIS323

Explanation: The DD statement identified has a missing parameter.

User Response: Correct the JCL and run the convert again.

XVTT5004E UNKNOWN xxxxxxxx DD STATEMENT PARAMETER nnnnnnnnnnnnnnnn.

Module: ADSIS320

Explanation: The identified DD statement has a parameter that could not be parsed.

User Response: Correct the JCL and run the convert again.

XVTT5005E DUPLICATE OR CONFLICTING xxxxxxxx DD STATEMENT PARAMETER:


nnnnnnnnnnnnnnnnnnnn.

Module: ADSIS320
Code Coverage Messages A-13

Explanation: The identified DD statement has a parameter that has been repeated or
conflicts with another parameter.
User Response: Correct the JCL and run the convert again.

XVTT5006E SYNTAX ERROR IN xxxxxxxx DD STATEMENT.

Module: ADSIS320, ADSIS325, ADSIS333

Explanation: The identified DD statement has invalid parameters.

User Response: Correct the input JCL member and run convert again.

XVTT5007W NOT ALL REQUESTED MEMBERS COULD BE CONVERTED.

Module: ADSIS320

Explanation: One or more members could not be converted because of errors. Check log.
User Response: Check previous messages. Correct the JCL from the input members and run
convert again.

XVTT5008W NO MEMBERS HAVE BEEN CONVERTED.

Module: ADSIS320
Explanation: This message verifies that no members were written to the output dataset.
User Response: Check previous messages for explanation of why convert failed. Correct
errors and run JCL convert again.

XVTT5009I ALL REQUESTED MEMBERS HAVE BEEN CONVERTED.

Module: ADSIS320
Explanation: This message confirms that the JCL convert was successful on all members.
User Response: None.

XVTT5010I MEMBER(S) HAVE BEEN CONVERTED FROM PDS(E) xxxx.xxxxxx, INTO PDS(E)
yyyy.yyyyyyy.

Module: ADSIS320
Explanation: Informational message to denote the input and output libraries.

User Response: None.

XVTT5011I SUFFIX (R) INDICATES THAT OUTPUT PDS(E), MEMBER HAS BEEN REPLACED BY
CONVERTED ONE.

Module: ADSIS320
Explanation: One or more members already existed in the output dataset. Those members
which were replace are identified with the characters (R) following the name.
User Response: None

XVTT5012E DD STATEMENT xxxxxxxx IS EITHER MISSING OR REPRESENTS AN EMPTY DATASET.

Module: ADSIS325
Explanation: The DDNAME, XXXXXX is required for processing and was either omitted or is
empty.

User Response: Correct the JCL and run the convert job again.

XVTT5013E DD STATEMENT xxxxxxxx IS EITHER MISSING OR HAS IMPROPER CHARACTERISTICS.

Module: ADSIS320, ADSIS323, ADSIS334

Explanation: The required DD, xxxxxxxx was not found in the JCL or had the wrong record
format or record length.

User Response: Correct the JCL and run the convert job again.

XVTT5014E INCORRECT DISP PARAMETER OF DD STATEMENT xxxxxxxx.


Module: ADSIS323, ADSIS325, ADSIS326
A-14 Xpediter/Code Coverage Mainframe User/Reference Guide

Explanation: The DISP= parameter of DD statement xxxxxxxx had an unacceptable value.

User Response: Correct the JCL and run the JCL convert again.

XVTT5015E MEMBER NAME IS NOT ALLOWED IN DSN PARAMETER OF DD STATEMENT xxxxxxxx.


Module: ADSIS325

Explanation: The JCLIN DD statement must point to a PDS without the member name.

User Response: Correct the JCL and run the JCL convert again.

XVTT5016W MEMBER xxxxxxxx COULDN''T BE FOUND IN INPUT LIBRARY (DD yyyyyyyy).

Module: ADSIS320

Explanation: The member, xxxxxxxx was not found in the dataset allocated to DD JCLIN.

User Response: Correct the JCL and run the convert job again.

XVTT5017W INCORRECT MEMBER NAME xxxxxxxx IN yyyyyyyy DD STATEMENT.


Module: ADSIS320

Explanation: The member name does not start with an alphabetic or national character or
contains a character other than alphabetic, national, or numeric value.

User Response: Correct the member name in the JCL and run the job again.

XVTT5018E MEMBER xxxxxxxx WASN''T RECOGNIZED AS CONTAINING JOB JCL. MEMBER NOT
CONVERTED.

Module: ADSIS334

Explanation: The member xxxxxxxx appears to be a data member and does not contain valid
JCL.

User Response: Correct the member name and run the convert again.

XVTT5019E MEMBER xxxxxxxx INCLUDES XMIT WHICH ISN'T SUPPORTED AT THIS TIME.
MEMBER NOT CONVERTED.

Module: ADSIS321 ADSIS334


Explanation: The member xxxxxxxx could not be converted because it contained an XMIT
statement.

User Response: None.

XVTT5020E MEMBER xxxxxxxxx HAD JCL ERROR WHEN SUBMITTED WITH TYPRUN=SCAN.
MEMBER NOT CONVERTED.

Module: ADSIS334

Explanation: When the member xxxxxxxx was submitted to the internal reader with a
TYPRUN=SCAN parameter a JCL error occurred. This member can not be converted.

User Response: Correct the JCL error and run the convert again.

XVTT5021E RAN OUT OF VIRTUAL STORAGE.


Module: ADSIS321, ADSIS333, ADSIS334

Explanation: The job region contained an insufficient amount of storage was available to
run the job.

User Response: Increase the region size of the job on the EXEC or JOB cards.

XVTT5022W NULL JCL STATEMENT ENCOUNTERED IN THE MIDDLE OF JCL STREAM OF MEMBER
xxxxxxxx. JCL CONVERTED UP TO THE FIRST OCCURRENCE OF NULL STATEMENT (//).

Module: ADSIS321, ADSIS334

Explanation: A null JCL statement was encountered. This is a warning message.

User Response: Verify that the null JCL statement is correctly placed in the member.
Code Coverage Messages A-15

XVTT5023E NOT ENOUGH SPACE IN DIRECTORY OF OUTPUT PDS, DESIGNATED BY DD xxxxxxxx.

Module: ADSIS320
Explanation: The number of directory blocks is too small to contain all of the members.

User Response: Reallocate the library with more directory blocks and run the convert again.

XVTT5024E JCL IN MEMBER xxxxxxxx SUBMITTED WITH TYPRUN=SCAN TIMED OUT. MEMBER
NOT CONVERTED.

Module: ADSIS334

Explanation: Members are submitted to the internal reader to resolve substitutions based on
variables. The output from the submitted job is read back in. Five minutes of elapsed time is
allowed to process the TYPRUN=SCAN job, but this time was exceeded for this member.

User Response: If a job class is available for faster processing, specify that class on the default
job card found in Code Coverage option 0.1.

XVTT5025E MULTIPLE JOBS ENCOUNTERED (COULD BE DATA) IN MEMBER xxxxxxxx. MEMBER


NOT CONVERTED.

Module: ADSIS334

Explanation: More than one Job card was read from member xxxxxxxx. The member was not
converted.

User Response: Correct the member and run the convert job again.

XVTT5026W OUTPUT OF JCL IN MEMBER member name SUBMITTED WITH TYPRUN=SCAN HAS
BEEN PURGED BEFORE IT COULD BE EXAMINED. MEMBER NOT CONVERTED.

Module: ADSIS323, ADSIS334

Explanation: The JCL member is submitted through the internal reader to a batch initiator
to resolve JCL procedures, variable substitutions, etc. The output from the TYPRUN=SCAN job
was not found on the held output queue.
User Response: Ensure that the MSGCLASS on the default job card found in option 0.1,
contains a held message class.

XVTT5027E JOB SUBMITTED TO RETRIEVE IMS AND/OR DB2 CONTROL FILES FOR MEMBER
xxxxxxxx HAS TIMED OUT. MEMBER NOT CONVERTED.

Module: ADSIS321, ADSIS333


Explanation: Members are submitted to the internal reader to resolve substitutions based on
variables. The output from the submitted job is read back in. Five minutes of elapsed time is
allowed to process the TYPRUN=SCAN job, but this time was exceeded for this member.

User Response: If a job class is available for faster processing, specify that class on the
default job card found in Code Coverage option 0.1.

XVTT5028E I/O ERROR xxxx OCCURRED WHILE WRITING CONVERTED MEMBER yyyyyyyy TO
OUTPUT PDS(E) DESIGNATED BY DD zzzzzzzz.
Module: ADSIS321, ADSIS334

Explanation: An I/O error occurred writing to the output dataset.

User Response: Refer to the IBM Messages and Codes documentation for guidance on this
abend. If unable to resolve the issue, Contact Compuware Customer Support.

XVTT5029W MEMBER xxxxxxxx ALREADY EXISTS IN OUTPUT PDS(E). MEMBER NOT


CONVERTED.

Module: ADSIS334

Explanation: The member already exists in the output library and the REPLACE option was
set to NO.

User Response: Point to a different output dataset or change the replace option to YES.

XVTT5030E COULDN’T OPEN FILE DESIGNATED BY DD xxxxxxxx.

Module: ADSIS334
A-16 Xpediter/Code Coverage Mainframe User/Reference Guide

Explanation: The dataset for DD xxxxxxxx, could not be opened for processing.

User Response: Ensure the dataset is properly allocated with the correct disposition on the
DD statement. Correct the JCL and run the convert JCL program again.

XVTT5031E INPUT FILE DESIGNATED BY DD xxxxxxxx HAS IMPROPER CHARACTERISTICS.

Module: ADSIS323, ADSIS325, ADSIS326

Explanation: The DD xxxxxxxx has incompatible attributes of DSORG, LRECL or RECFM. This
dataset can not be processed.

User Response: Correct the JCL and run the convert program again.

XVTT5032E OUTPUT QUEUE DATASET xxxxxxxx HAS IMPROPER CHARACTERISTICS.

Module: ADSIS320
Explanation: The output queue dataset has invalid RECFM or DSORG.

User Response: Contact Compuware Customer Support.

XVTT5033E BATCH CONVERSION JOB NAME xxxxxxxx CAN'T BE THE SAME AS JOB NAME IN JCL
TO BE CONVERTED.

Module: ADSIS334
Explanation: None

User Response: Contact Compuware Customer Support.

XVTT5034I MEMBER xxxxxxxx HASN'T BEEN CONVERTED.

Module: ADSIS320
Explanation: This is a warning message that the name member was not converted.
User Response: Previous error message should explain the problem. Correct the problem and
run the convert job again.

XVTT5035W AT LEAST ONE IMS/DB2 CONTROL DATASET COULDN''T BE LOCATED IN MEMBER


xxxxxxxx.
Module: ADSIS334

Explanation: None
User Response: Correct the JCL and run the job again.

XVTT5036E UNABLE TO OPEN DD: xxxxxxxx.


Module: ADSIS323, ADSIS324, ADSIS325, ADSIS334
Explanation: The open macro failed for DD xxxxxxxx.

User Response: Ensure that the dataset has proper characteristics and the disposition on the
DD card is appropriate.

XVTT5037E ISPF DIALOG ERROR - SERVICE: xxxxxxxx, RC=nnnnn.

Module: ADSIS321, ADSIS325, ADSIS333, ADSIS334


Explanation: The ISPF Dialog manager is used to process the JCL. An unexpected return code
was returned for the named service.

User Response: Verify that the required ISPF libraries are allocated in the batch job.

XVTT5038E INVALID LENGTH RETURNED FROM READ MACRO PROCESSING MEMBER xxxxxxxx.

Module: ADSIS334

Explanation: The block length of the dataset did not correspond to the length of the actual
block read.

User Response: The member appears to be corrupted. Correct the member and run the
convert again.
Code Coverage Messages A-17

XVTT5039E ERROR - SWAREQ SERVICE RETURNED RC=nnnnn.

Module: ADSIS323, ADSIS324, ADSIS325, ADSIS326


Explanation: The system service invoked by the SWAREQ macro failed.

User Response: Contact Compuware Customer Support.

XVTT5040E ERROR - CONTROL BLOCK SCT ADDR NOT RETURNED BY SWAREQ FOR DD -
xxxxxxxx.

Module: ADSIS323, ADSIS324, ADSIS325, ADSIS326

Explanation: The system macro, SWAREQ was invoked to return the address of the SCT
control block, but returned an invalid return code.

User Response: Contact Compuware Customer Support.

XVTT5041E ERROR - CONTROL BLOCK SIOT ADDR NOT RETURNED BY SWAREQ FOR DD -
xxxxxxxx.

Module: ADSIS323, ADSIS324, ADSIS326

Explanation: The system macro, SWAREQ was invoked to retrieve the address of the SIOT,
but returned an invalid return code.

User Response: Contact Compuware Customer Support.

XVTT5042E ERROR - ISITMGD SERVICE RETURNED RC=nnnnn FOR DD - xxxxxxxx


Module: ADSIS324, ADSIS325
Explanation: The system macro, ISITMGD was invoked for DD xxxxxxxx and returned an
invalid return code.

User Response: Contact Compuware Customer Support.

XVTT5043E ERROR - JFCB ADDR MISSING IN SIOT FOR DD - xxxxxxxx.

Module: ADSIS323, ADSIS324, ADSIS325, ADSIS326

Explanation: An unexpected error condition has occurred.


User Response: Contact Compuware Customer Support.

XVTT5044E LOGIC ERROR PARSING PARAMETERS FOR JCLOPTS. RECORD FOLLOWS.


Module: ADSIS320

Explanation: An unexpected logic error has occurred.


User Response: Contact Compuware Customer Support.

XVTT5045E COULD NOT FIND TSO/E REXX ENVBLOCK. JOB TERMINATED.

Module: ADSIS320
Explanation: The REXX ENVBLOCK is required for processing and was not found.

User Response: Contact Compuware Customer Support.

XVTT5046I text message


Module: ADSIS320

Explanation: This message is issued to provide additional information.

User Response: None.

XVTT5047E JOB CARD NOT FOUND.

Module: ADSIS333, ADSIS334

Explanation: The JOB card for the JCL member was not found. The JOB card is required for
processing. The JCL was not converted.

User Response: Add a JOB card to the JCL member and run the JCL convert again.
A-18 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTT5048E STOW FAILED FOR DD - JCLOUT.

Module: ADSIS334
Explanation: The STOW macro failed to add or replace the entry for the member in the PDS.

User Response: Ensure the correct dataset disposition was used on the DD card for JCLOUT
DD.

XVTT5049E UNABLE TO FIND FOOTPRINT IN OUTPUT FROM IEBPTPCH.

Module: ADSIS334

Explanation: When reading the output from the internally submitted job, the inserted lines
to mark the beginning data were not found.

User Response: Contact Compuware Customer Support.

XVTT5050E JOBNAME ON JOBCARD IS TOO LONG TO PROCESS.

Module: ADSIS334

Explanation: The JOBNAME on the JOB card cannot be longer than 8 characters.

User Response: Correct the JOB card and run the JCL convert again.

XVTT5051E IKJCT441 FAILED TO RETURN TRAPPED MESSAGE, RC=nnnnn.


Module: ADSIS334

Explanation: The TSO module IKJCT441 was called to retrieve the job messages, but failed.
User Response: Contact Compuware Customer Support.

XVTT5052E IKJEFTSR FAILED ON CALL TO ISSUE A STATUS COMMAND: RETURN CODE=nnnnnn,


REASON CODE=nnnnnn.

Module: ADSIS333, ADSIS334


Explanation: The TSO module, IKJEFTSR was called to issue a status command, but failed.

User Response: Contact Compuware Customer Support.

XVTT5053E GENCB FOR INTRDR FAILED WITH RC=nnnnnn.


Module: ADSIS333, ADSIS334

Explanation: The GENCB macro failed for the internal reader dataset.
User Response: Ensure the region size for the JCL convert program is large enough. Contact
Compuware Customer Support.

XVTT5054E OPEN FOR INTRDR FAILED WITH RC=nnnnnn.


Module: ADSIS333

Explanation: The open macro failed for the internal reader dataset.
User Response: Contact Compuware Customer Support.

XVTT5055E PUT FOR INTRDR FAILED WITH RC=nnnnnn.

Module: ADSIS333, ADSIS334


Explanation: The PUT macro failed for the internal reader dataset.

User Response: Contact Compuware Customer Support.

XVTT5056E ENDREQ FOR INTRDR FAILED WITH RC=nnnnnn.


Module: ADSIS333, ADSIS334

Explanation: The ENDREQ macro failed for the internal reader dataset.

User Response: Contact Compuware Customer Support.

XVTT5057E INTERNAL ISPF TABLE, table name IS EMPTY. LOGIC ERROR.


Module: ADSIS321, ADSIS334
Code Coverage Messages A-19

Explanation: An internal logic error has occurred.

User Response: Contact Compuware Customer Support.

XVTT5058E OUTPUT DATASET RETURN BY OUTPUT COMMAND IS NOT FB OR LRECL=133.


Module: ADSIS334

Explanation: The output dataset does not have the proper characteristics.

User Response: Contact Compuware Customer Support.

XVTT5059E UNABLE TO PROCESS FILE FROM OUTPUT COMMAND.

Module: ADSIS333, ADSIS334

Explanation: None

User Response: Contact Compuware Customer Support.

XVTT5060E INVALID DATASET NAME RETURNED FROM OUTPUT COMMAND.


Module: ADSIS334

Explanation: The dataset name from the OUTPUT command could not be parsed.
User Response: Contact Compuware Customer Support.

XVTT5061E INTERNAL LOGIC ERROR, CONTACT SUPPORT REPRESENTATIVE, REASON


CODE=nnnnn

Module: ADSIS321, ADSIS333, ADSIS334

Explanation: An unexpected error condition has occurred.

User Response: Contact Compuware Customer Support.

XVTT5062E IKJCT441 FAILED ON CALL TO RESET SYSOUTLINE VARIABLE, RC= nnnnnn


Module: ADSIS333, ADSIS334

Explanation: The TSO module, IKJCT441 was called to reset the SYSOUTLINE variable, but
returned with an bad return code.

User Response: Contact Compuware Customer Support.

XVTT5063E IKJCT441 FAILED ON CALL TO SET SYSOUTTRAP MSG, RC=nnnnn

Module: ADSIS333, ADSIS334

Explanation: The TSO module, IKJCT441 was called to set the SYSOUTTRAP variable, but
returned with an bad return code.

User Response: Contact Compuware Customer Support.

XVTT5064E IKJCT441 FAILED ON CALL TO RESET SYSOUTTRAP VARIABLE, RC=nnnnn

Module: ADSIS333, ADSIS334

Explanation: The TSO module, IKJCT441 was called to reset the SYSOUTTRAP variable, but
returned with an bad return code.

User Response: Contact Compuware Customer Support.

XVTT5065E IKJCT441 FAILED ON CALL TO GET NUMBER OF TRAPPED MSGS, RC= nnnnn

Module: ADSIS333, ADSIS334

Explanation: The TSO module, IKJCT441 was called to return the trapped output messages,
but returned with an bad return code.

User Response: Contact Compuware Customer Support.

XVTT5066E IKJCT441 FAILED TO RETURN VALID NUMBER OF TRAPPED MSGS. RC= nnnnn

Module: ADSIS333, ADSIS334


Explanation: The TSO module, IKJCT441 was called to return the trapped output messages,
but returned an invalid value for the number of lines to process.
A-20 Xpediter/Code Coverage Mainframe User/Reference Guide

User Response: Contact Compuware Customer Support.

XVTT5067E JCL TABLE JCLTBL2 IS EMPTY.

Module: ADSIS333
Explanation: An internal logic error was encountered.

User Response: Contact Compuware Customer Support.

XVTT5068E INTERNAL STACK OVERFLOW.

Module: ADSIS321, ADSIS333

Explanation: An internal stack was allocated with insufficient space.

User Response: Contact Compuware Customer Support.

XVTT5069E INVALID RETURN CODE FROM PROCESSING, RC= nnnnn

Module: ADSIS320
Explanation: An undocumented error code was returned internally. Probable logic error.

User Response: Contact Compuware Customer Support.

XVTT5070E MEMBER xxxxxxxx CONTAINS A JOB RESTART WITH A CHECKPOINT. THIS IS NOT
SUPPORTED.

Module: ADSIS334

Explanation: A member was found with JCL that is not supported for JCL conversion.

User Response: None. The JCL member will be bypassed.

XVTT5071E IKJEFTSR FAILED ON CALL TO ISSUE A PROFILE COMMAND: RETURN CODE=nnnnnn,


REASON CODE=nnnnnn.

Module: ADSIS333, ADSIS334

Explanation: The TSO module IKJEFTSR was called to issue a profile command, but failed.
User Response: Contact Compuware Customer Support.

XVTT5072E IKJCT441 FAILED TO RETURN ANY TRAPPED MESSAGES FOR THE PROFILE
COMMAND.
Module: ADSIS333, ADSIS334

Explanation: The TSO module IKJCT441 was called to retrieve the TSO PROFILE messages,
but failed.

User Response: Contact Compuware Customer Support.

XVTT5073W THE PLANGUAGE PARAMETER COULD NOT BE FOUND IN THE TSO PROFILE
OUTPUT.

Module: ADSIS333, ADSIS334

Explanation: The PLANGUAGE parameter could not be found in the TSO PROFILE output.

User Response: Contact Compuware Customer Support.

XVTT5074E PROCESSING TERMINATED FOR MEMBER xxxxxxxxx, IT WAS PREVIOUSLY


CONVERTED.

Module: ADSIS321
Explanation: Member xxxxxxxx was not converted because a program executed in the JCL was
either XPTSO or XPBATCH. It is then considered as being converted already. The member will
not be converted again.
User Response: None.
Code Coverage Messages A-21

CICS Messages
XVTC0001S TRUE ALREADY ACTIVE. UNABLE TO ENABLE TRUE.

Explanation: An attempt was made to start the CICS Code Coverage TRUE, and it was
already active.
System Action: Activation of CICS Code Coverage TRUE is terminated.

User Response: Contact Code Coverage Customer Support.

Module: XVTCCCIN

XVTC0002S PGM INVENTORY NOT DEFINED. COVERAGE UNAVAILABLE.

Explanation: Unable to open the Program Inventory dataset.

System Action: Activation of CICS Code Coverage TRUE is terminated.

User Response: See job log for further messages.


Module: XVTCCCIN

XVTC0003S UNABLE TO LOAD XVTCCVT. CANNOT START Code Coverage.


Explanation: Required Code Coverage module XVTCCVT could not be found.
System Action: Activation of Code Coverage is terminated.
User Response: Ensure the correct Code Coverage library is in the DFHRPL concatenation.
Module: XVTCCCIN

XVTC0004S UNABLE TO LOAD XVTCSVT. CANNOT START Code Coverage.

Explanation: A required Code Coverage module XVTCSVT could not be found.

System Action: Activation of Code Coverage is terminated.


User Response: Ensure the correct Code Coverage library is in the DFHRPL concatenation.
Module: XVTCCCIN

XVTC0005S UNABLE TO LOCATE THE DFHRPL TIOT.


Explanation: An internal logic error was detected while trying to locate the DFHRPL TIOT.

System Action: Activation of Code Coverage is terminated.


User Response: Contact Code Coverage Customer Support.

Module: XVTCCCIN

XVTC0006S ERROR ENABLING CICS TRUE.

Explanation: An internal logic error was detected while trying to enable the CICS TRUE.
System Action: Activation of Code Coverage is terminated.

User Response: Contact Code Coverage Customer Support.

Module: XVTCCCIN

XVTC0007I ERROR DISABLING CICS TRUE. TRUE NOT ACTIVE

Explanation: An attempt to disable the CICS Code Coverage TRUE failed, because the TRUE
was not active.

System Action: Xpediter/Code Coverage attempts to continue termination.

User Response: Contact Code Coverage Customer Support.

Module: XVTCCCIN

XVTC0008S NO COMMAREA PASSED. NO FUNCTION PROVIDED.

Explanation: An internal logic error has occurred in module XVTCCCIN.

System Action: The call to XVTCCCIN is rejected.


A-22 Xpediter/Code Coverage Mainframe User/Reference Guide

User Response: Contact Code Coverage Customer Support.

Module: XVTCCCIN

XVTC0009S NO FUNCTION PASSED. NO FUNCTION PROVIDED.


Explanation: An internal logic error has occurred in module XVTCCCIN.

System Action: The call to XVTCCCIN is rejected.

User Response: Contact Code Coverage Customer Support.

Module: XVTCCCIN

XVTC0010S DBUGGBL ADDRESS NOT PASSED ON (ENA) CALL.

Explanation: An internal logic error has occurred in module XVTCCCIN.

System Action: The call to XVTCCCIN is rejected.


User Response: Contact Code Coverage Customer Support.

Module: XVTCCCIN

XVTC0011S PASMAIN1 ADDRESS NOT PASSED ON (ENA) CALL.


Explanation: An internal logic error has occurred in module XVTCCCIN.
System Action: The call to XVTCCCIN is rejected.
User Response: Contact Code Coverage Customer Support.

Module: XVTCCCIN

XVTC0012S CANNOT LOCATE XVTCCVT DURING SHUTDOWN.

Explanation: An internal logic error has occurred in module XVTCCCIN.


System Action: Xpediter/Code Coverage shutdown request is terminated.
User Response: Contact Code Coverage Customer Support.
Module: XVTCCCIN

XVTC0013I Xpediter/Code Coverage SUCCESSFULLY DISABLED.

Explanation: Code Coverage was successfully disabled.


System Action: Disabled Code Coverage.

User Response: None.


Module: XVTCCCIN

XVTC0014I Xpediter/Code Coverage SUCCESSFULLY ENABLED.


Explanation: Code Coverage was successfully enabled.

System Action: Enabled Code Coverage.

User Response: None.


Module: XVTCCCIN

XVTC0015W UNABLE TO START Code Coverage TRANS XXXX.

Explanation: Automatic data hardening will not occur.


System Action: Code Coverage was successfully enabled.

User Response: Make sure the transaction defined in the XVTCGBL table for data hardening
is defined to CICS. The default transaction is XVKP.

Module: XVTCCCIN

XVTC0016W CANNOT LOAD Code Coverage GLOBAL TABLE XVTCGBL.

Explanation: Automatic data hardening will not occur.


System Action: Code Coverage was successfully enabled.
Code Coverage Messages A-23

User Response: Make sure the library that contains the module XVTCGBL is in the CICS
DFHRPL concatenation.
Module: XVTCCCIN

XVTC0017S CANNOT OPEN PROGRAM INVENTORY. RC=(XXXX)

Explanation: An internal logic error has occurred in module XVTCCCIN.

System Action: Activation of Xpediter/CICS Code Coverage is terminated.

User Response: See associated messages in the job log.

Module: XVTCCCIN

XVTC0018S CANNOT GETMAIN SHARED STORAGE.

Explanation: CICS does not have enough shared storage for Code Coverage to initialize.
System Action: Activation of Code Coverage is terminated.

User Response: Free up shared storage and retry.

Module: XVTCCCIN

XVTC0019S CANNOT ATTACH PROG INVENTORY. RC=(XXXXXXXX)


Explanation: Xpediter/Code Coverage cannot attach the XVTCIOS subtask for the program
inventory.

System Action: Activation of Xpediter/CICS Code Coverage is terminated.


User Response: See associated messages in the job log.
Module: XVTCCCIN

XVTC0020W CANNOT DETACH PROG INVENTORY. RC=(XXXXXXXX)


Explanation: Xpediter/Code Coverage cannot detach the XVTCIOS subtask for the program
inventory.

System Action: Termination of Xpediter/CICS Code Coverage is continued.

User Response: See associated messages in the job log.


Module: XVTCCCIN

XVTC0021W CANNOT CLOSE PROGRAM INVENTORY. RC=(XXXX)


Explanation: Xpediter/Code Coverage cannot close the program inventory dataset.

System Action: Termination of Xpediter/CICS Code Coverage is continued.


User Response: See associated messages in the job log.

Module: XVTCCCIN

XVTC0022S CATASTROPHIC XVIOS SUBTASK ERROR. RC=(XXXX)


Explanation: The XVTCIOS subtask has abnormally ended.

System Action: Xpediter/CICS Code Coverage is terminated.

User Response: See associated messages in the job log.


Module: XVTCCCIN

XVTC0023E Put string in quotes.

Explanation: A FIND command was issued with multiple operands, but the actual target of
the find (the string to be found) could not be derived from the operands entered.
System Action: FIND processing is terminated.

User Response: Review the parameters you have coded on the FIND command. The string
you wish to find should be enclosed either in quotes (") or apostrophes ('). This error is
routinely caused when you wish to find a number or numeric string and have also coded a
range of columns to be searched. Example: FIND 10 1 The command parser cannot determine
if you want to find the string '10' 'startingincolumn1', or the string '1' 'startingincolumn10'. To
A-24 Xpediter/Code Coverage Mainframe User/Reference Guide

correct the problem, enclose the string you wish to find within quotes or apostrophes, i.e.
FIND '10' 1 which will look for the string '10' beginning in column 1, or FIND 10 '1' which
will look for the string '1' beginning in column 10.
Module: FINDCMD in XVTCMGR.

XVTC0024S CANNOT START QUIESCE OF Xpediter/Code Coverage.

Explanation: The XVTCIOS subtask has abnormally ended. Unable to start quiesce
transaction (default XVTQ).

System Action: Code Coverage is terminated.

User Response: Make sure the transaction defined in the XVTCGBL table for quiesce is
defined to CICS. The default transaction is XVTQ.

Module: XVTCTRUE

XVTC0025I ATTEMPTING TO QUIESCE Xpediter/Code Coverage.

Explanation: The XVTCIOS subtask has abnormally ended. Starting the quiesce of Code
Coverage to harden the data and terminate Code Coverage.

System Action: Code Coverage is being terminated.

User Response: None.

Module: XVTCTRUE

XVTC0026E Unrecognized operand on command.


Explanation: The command parser detected a parameter on a primary command that it did
not recognize.

System Action: Processing of the command is terminated.

User Response: Review the parameters entered for the command. If you are unsure of the
syntax of the command, you may enter HELP command where command is the name of the
primary command you are using. After reviewing the help text for the command, press PF3
(END) to return to the original screen you issued the command and reenter the command
using the correct syntax.

Module: XVTCMGR and related screen programs.

XVTC0027I xxxxxxx occurrences of object.

Explanation: A FIND ALL command has detected multiple occurrences of the string
requested. xxxxxxx will be the number of occurrences of the string found.

System Action: The cursor will be positioned to the first occurrence of the string requested.
User Response: None.

Module: FINDCMD in XVTCMGR.

XVTC0028E Too many parameters for this command.

Explanation: The command parser has detected that the primary command contains more
parameters than are allowed.
System Action: Command parsing will be terminated and the command entered on the
command line will be redisplayed.

User Response: Review the parameters entered for the command. If you are unsure of the
syntax of the command, you may enter HELP command where command is the name of the
primary command you are using. After reviewing the help text for the command, press PF3
(END) to return to the original screen you issued the command and reenter the command
using the correct syntax.

Module: XVTCMGR and related screen programs.

XVTC0029E Command stacking not support for HELP.


Explanation: The command parser has detected that you are attempting to stack multiple
primary commands while displaying help.
Code Coverage Messages A-25

System Action: Command processing is terminated. The commands entered in the command
field will be redisplayed.
User Response: Stacking of commands (entering multiple primary command in the
command line) is not supported while displaying help for the product. The commands entered
will be redisplayed in the command line. Remove extraneous commands from the command
line and press Enter to reexecute the command.

Module: XVTCMGR.

XVTC0030E Please enter a valid menu selection.

Explanation: An invalid menu selection item was entered on a menu screen.


System Action: Command processing is terminated. The value entered in the command line
will be redisplayed.

User Response: Review the value entered in the command line and correct to match one of
the menu selection items displayed.

Module: XVTCMGR

XVTC0031E Please enter a valid screen identifier.

Explanation: A transfer (=) command was issued with an invalid screen identifier.

System Action: Command processing is terminated. The value entered in the command line
will be redisplayed.

User Response: Review the value entered in the command line and correct it.
Module: XVTCMGR

XVTC0032E Invalid transfer command, "=" required.

Explanation: An unrecognized primary command was issued and the command parser
interpreted it as being a transfer.
System Action: Command processing is terminated. The value entered in the command line
will be redisplayed.

User Response: Review the value entered in the command line and correct it. You may type
HELP COMMANDS in the primary command field to display a list of valid primary
commands.
Module: XVTCMGR

XVTC0033E Bad GETLIST call, return code = X...'......'

Explanation: While attempting to obtain a list of specifications currently loaded, an error


was detected.

System Action: The call will be terminated and a shortened list of specifications will be
displayed.

User Response: Note the hexadecimal return code displayed and contact Xpediter/CICS
Code Coverage Customer Support.
Module: XVTCP1. The call in error is XVTCCALL GETLIST.

XVTC0034E Status must be "Quiescing" or "Collecting".

Explanation: A line command was issued against a specification which is not currently in
Quiescing or Collecting status.

System Action: Processing of the command is terminated.

User Response: Review the line command used for this specification. Because the
specification is not in Quiescing or Collecting status, the command cannot be used.

Module: XVTCP1

XVTC0035E Invalid line command.


Explanation: An unrecognized line command was entered.

System Action: Processing of the command is terminated.


A-26 Xpediter/Code Coverage Mainframe User/Reference Guide

User Response: Review the line command and correct.

Module: XVTCMGR and various screen programs.

XVTC0036E Unable to delete test.


Explanation: A delete (D) line command was used for a specification, but the request failed.
The specification may have been deleted by another user before your request was made, the
specification was not in "Incomplete" or "Available" status, or an internal error occurred while
processing your delete.

System Action: Processing of the command is terminated.

User Response: Clear the line command field and press Enter to refresh the display. If the
specification disappears from your display, another user deleted the specification before your
request was processed. If the specification remains displayed, ensure the status is "Incomplete"
or "Available", and attempt the delete again. If it fails again, contact Xpediter/CICS Code
Coverage Customer Support.
Module: XVTCP1. The call being issued is XVTCCALL REMTEST.

XVTC0037E Unable to delete system.

Explanation: A delete system (DS) line command was issued to delete a set of specifications
sharing the same system name and the request failed. One or more specifications may have
been deleted by another user before your request was made or an internal error occurred while
processing your delete.

System Action: Processing of the command is terminated.


User Response: Clear the line command field and press Enter to refresh the display. If all
specifications with the same system name disappear from your display, another user deleted
the specification(s) before your request was processed. If one or more specifications with the
same system name remain displayed, attempt the delete again. If it fails again, contact
Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1. The call being issued is XVTCCALL REMSYS.

XVTC0038E System name required.

Explanation: A start line command (SC, SF, or SB) was issued and no system name was
specified or an attempt was made to add a specification and no system name was entered.

System Action: Processing of specification is terminated.


User Response: Review the specification being added or started and ensure that the system
name has been filled in.

Module: XVTCP1

XVTC0039E Test name required.

Explanation: A start line command (SC, SF, or SB) was issued and no test name was specified
or an attempt was made to add a specification and no test name was entered.

System Action: Processing of specification is terminated.

User Response: Review the specification being added or started and ensure that the test name
has been filled in.

Module: XVTCP1

XVTC0040E Add of test failed.

Explanation: The system and test names have been entered for a new specification, but
during the add request, an internal error was detected.

System Action: Processing of the add request is terminated.


User Response: Repeat the request by pressing Enter, as another user may have been adding
or modifying a specification with the same system and test name. If the request fails again,
contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1. The call being issued is XVTCCALL NEWTEST.


Code Coverage Messages A-27

XVTC0041E Duplicate test name.

Explanation: The system and test names have been entered for a new specification, but
during the add request, a specification with the same system and test name was detected.

System Action: Processing of the add request is terminated.


User Response: Change the system and/or test names.

Module: XVTCP1. The call being issued is XVTCCALL NEWTEST.

XVTC0042E No request byte passed to ACTTEST call.

Explanation: An internal logic error was detected while trying to start coverage for a
specification. The SC, SF, or SB line command issued a call to the activation routine which
could not detect a request byte in the parameter list.

System Action: Processing of the start request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1. The call being issued is XVTCCALL ACTTEST.

XVTC0043E Invalid request byte passed to ACTTEST call.


Explanation: An internal logic error was detected while trying to start coverage for a
specification. The SC, SF, or SB line command issued a call to the activation routine which
detected an invalid request byte in the parameter list.
System Action: Processing of the start request is terminated.
User Response: Contact Xpediter/CICS Code Coverage Customer Support.
Module: XVTCP1. The call being issued is XVTCCALL ACTTEST.

XVTC0044E Status is "Incomplete", must be "Available".

Explanation: The status of a specification must be "Available" in order to use the SC, SF, or SB
line command to start collection. The current status is "Incomplete".
System Action: Processing of the start request is terminated.
User Response: Use the S line command to transfer to the transfer to the Test
Definition/Collection Specification screen to complete the specification.

Module: XVTCP1

XVTC0045E Unable to Dequeue on System Name.

Explanation: An internal error was detected during the processing of a specification. The
system was attempting to dequeue on the system name but was unable to complete the
dequeue.

System Action: Processing of the request is terminated.


User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1. The call being made was either a XVTCCALL ACTTEST, XVTCCALL
RETSTAT, XVTCCALL SETSTAT, or XVTCCALL HOLDTEST.

XVTC0046E Unable to Enqueue on System Name.


Explanation: An internal error was detected during the processing of a specification. The
system was attempting to enqueue on the system name but was unable to complete the
enqueue.

System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1. The call being made was either a XVTCCALL ACTTEST, XVTCCALL
RETSTAT, XVTCCALL SETSTAT, or XVTCCALL HOLDTEST.

XVTC0047E Unable to Dequeue on System Chain.

Explanation: An internal error was detected during the processing of specification. The
system was attempting to dequeue on the system name chain but was unable to complete the
dequeue.
A-28 Xpediter/Code Coverage Mainframe User/Reference Guide

System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.


Module: XVTCP1. The call being made was either a XVTCCALL ACTTEST, XVTCCALL
RETSTAT, XVTCCALL SETSTAT, or XVTCCALL HOLDTEST.

XVTC0048E Unable to Enqueue on System Chain.

Explanation: An internal error was detected during the processing of specification. The
system was attempting to enqueue on the system name chain but was unable to complete the
enqueue.

System Action: Processing of the request is terminated.


User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1. The call being made was either a XVTCCALL ACTTEST, XVTCCALL
RETSTAT, XVTCCALL SETSTAT, or XVTCCALL HOLDTEST.

XVTC0049E Unable to locate entry for this test name.

Explanation: An internal error was detected during the processing of specification. The
system was attempting to locate an entry for the test name but was unable to find it.

System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.


Module: XVTCP1. The call being made was either a XVTCCALL ACTTEST, XVTCCALL
RETSTAT, XVTCCALL SETSTAT, or XVTCCALL HOLDTEST.

XVTC0050E No parameters passed to ACTTEST call.


Explanation: An internal logic error was detected while trying to start coverage for a
specification. The SC, SF, or SB line command issued a call to the activation routine which
could not detect a parameter list.
System Action: Processing of the start request is terminated.
User Response: Contact Xpediter/CICS Code Coverage Customer Support.
Module: XVTCP1. The call being issued is XVTCCALL ACTTEST.

XVTC0051E Unable to locate entry for this system name.


Explanation: An internal error was detected during the processing of specification. The
system was attempting to locate an entry for the system name but was unable to find it.
System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.


Module: XVTCP1. The call being made was either a XVTCCALL ACTTEST, XVTCCALL
RETSTAT, XVTCCALL SETSTAT, or XVTCCALL HOLDTEST.

XVTC0052E Status must be "Collecting" to issue Halt.

Explanation: The status of a specification must be "Collecting" in order to use the H (Halt)
line command to halt collection.
System Action: Processing of the halt request is terminated.

User Response: Remove the line command from the specification in error.

Module: XVTCP1

XVTC0053E Status is "Quiescing", must be "Available".

Explanation: The status of a specification must be "Available" in order to use the SC, SF, or SB
line command to start collection. The current status is "Quiescing".

System Action: Processing of the start request is terminated.

User Response: Remove the line command from this specification.

Module: XVTCP1
Code Coverage Messages A-29

XVTC0054E Status is "Collecting", must be "Available".

Explanation: The status of a specification must be "Available" in order to use the SC, SF, or SB
line command to start collection. The current status is "Collecting".

System Action: Processing of the start request is terminated.


User Response: Remove the line command from this specification.

Module: XVTCP1

XVTC0055E No parameters passed to SETSTAT call.

Explanation: An internal logic error was detected while modify the status of a specification.
A call was issued to the set status routine which could not detect a parameter list.

System Action: Processing of the start request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1. The call being issued is XVTCCALL SETSTAT.

XVTC0056E No System Name passed to SETSTAT call.

Explanation: An internal logic error was detected while modify the status of a specification.
A call was issued to the set status routine which could not detect a system name being passed
in the parameter list.
System Action: Processing of the start request is terminated.
User Response: Contact Xpediter/CICS Code Coverage Customer Support.
Module: XVTCP1. The call being issued is XVTCCALL SETSTAT.

XVTC0057E No Test Identifier Name passed to SETSTAT.


Explanation: An internal logic error was detected while modify the status of a specification.
A call was issued to the set status routine which could not detect a test identifier being passed
in the parameter list.
System Action: Processing of the start request is terminated.
User Response: Contact Xpediter/CICS Code Coverage Customer Support.
Module: XVTCP1. The call being issued is XVTCCALL SETSTAT.

XVTC0058E Unknown return code from SETSTAT call.


Explanation: An internal logic error was detected while modify the status of a specification.
A call was issued to the set status routine which returned an unrecognized return code.
System Action: Processing of the start request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.


Module: XVTCP1. The call being issued is XVTCCALL SETSTAT.

XVTC0059E Command only valid if status is "Collecting".


Explanation: The status of a specification must be "Collecting" in order to use the V (View
Collection Activity) line command.

System Action: Processing of the command is terminated.


User Response: Remove the line command from this specification.

Module: XVTCP1.

XVTC0060E Status must be "Collecting" to do extracts.


Explanation: The status of a specification must be "Collecting" in order to use the E (Extract)
or ES (Extract System) line commands.

System Action: Processing of the command is terminated.

User Response: Remove the line command from this specification.

Module: XVTCP1
A-30 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTC0061E Delete is invalid for a duplicate entry.

Explanation: A D (Delete) line command was used on a specification which has already been
determined to be a duplicate of another.

System Action: Processing of the command is terminated.


User Response: Remove the line command from this specification.

Module: XVTCP1

XVTC0062E No parameters passed to RETSTAT call.

Explanation: An internal logic error was detected while acquiring the status of a
specification. A call was issued to the return status routine which could not detect a parameter
list.

System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1. The call being issued is XVTCCALL RETSTAT.

XVTC0063E No system name parameter passed to RETSTAT.


Explanation: An internal logic error was detected while acquiring the status of a
specification. A call was issued to the return status routine which could not detect a system
name being passed in the parameter list.
System Action: Processing of the request is terminated.
User Response: Contact Xpediter/CICS Code Coverage Customer Support.
Module: XVTCP1. The call being issued is XVTCCALL RETSTAT.

XVTC0064E No testid name parameter passed to RETSTAT.

Explanation: An internal logic error was detected while acquiring the status of a
specification. A call was issued to the return status routine which could not detect a test
identifier being passed in the parameter list.
System Action: Processing of the request is terminated.
User Response: Contact Xpediter/CICS Code Coverage Customer Support.
Module: XVTCP1. The call being issued is XVTCCALL RETSTAT.

XVTC0065E Link to XVTCP1B failed, program not found.

Explanation: A V (Display Collection Activity) line command was used, which would link to
module XVTCP1B. Module XVTCP1B could not be found in the DFHRPL concatenation.

System Action: Processing of the command is terminated.


User Response: Contact your site’s Xpediter/CICS Code Coverage support representative. The
product installation may not be complete or the module inadvertently removed from the
Xpediter/CICS Code Coverage load library. If the problem cannot be resolved, contact
Xpediter/CICS Code Coverage support.
Module: XVTCP1

XVTC0066E Unable to delete user.

Explanation: A D (Delete) line command was used to attempt a delete of an include/exclude


user mask. The user could not be found in the specification.

System Action: Processing of the command is terminated.

User Response: Remove the D from the line command field.

Module: XVTCP1A

XVTC0067E Invalid user format.

Explanation: The user name being entered in the include/exclude user mask does not
contain a valid character.

System Action: Processing of the command is terminated.


Code Coverage Messages A-31

User Response: Correct the user name.

Module: XVTCP1A

XVTC0068I User added.


Explanation: The user name has been added to the include/exclude user masks.

System Action: Processing of the command is complete.

User Response: None.

Module: XVTCP1A

XVTC0069E Duplicate userid.

Explanation: The user name entered matches a user name already entered.

System Action: Processing of the command is terminated.


User Response: Either blank out or modify the user name to be unique.

Module: XVTCP1A

XVTC0070E Unable to locate entry for this system name.


Explanation: An internal error occurred while accessing a specification. The system name for
the specification could not be located.

System Action: Processing of the command is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.


Module: XVTCP1A

XVTC0071E Unable to locate entry for this test name.


Explanation: An internal error occurred while processing a specification. The specification
with this test identifier could not be located.

System Action: Processing of the command is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1A

XVTC0072E No userid passed to ADDIUSER call.

Explanation: An internal logic error was detected while attempting to add an include user to
a specification. No userid was passed to the add include user routine.

System Action: Processing of the request is terminated.


User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1A. The call being issued is XVTCCALL ADDIUSER.

XVTC0073E No parameters passed to ADDIUSER call.


Explanation: An internal logic error was detected while attempting to add an include user to
a specification. The add include user routine could not detect a parameter list being passed to
it.

System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1A. The call being issued is XVTCCALL ADDIUSER.

XVTC0074E Maximum userids reached.

Explanation: An internal logic error was detected while attempting to add a user to a
specification. The maximum number of include or exclude users was exceeded.

System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.


Module: XVTCP1A
A-32 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTC0075E Status must be "Incomplete" or "Available".

Explanation: An internal logic error was detected while attempting to modify a specification.
The processing routine detected that the specification was not in "Incomplete" or "Available"
status.

System Action: Processing of the request is terminated.

User Response: You are attempting to modify a specification that is not in "Incomplete" or
"Available" status. Remove any changes and press PF3 (END command) to return to the
previous screen.
Module: XVTCP1A.

XVTC0076E No system name passed to ADDIUSER call.

Explanation: An internal logic error was detected while attempting to add an include user to
a specification. The ADDIUSER routine detected that no system name was being passed.

System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1A. The call being issued is XVTCCALL ADDIUSER.

XVTC0077E No testid name passed to ADDIUSER call.

Explanation: An internal logic error was detected while attempting to add an include user to
a specification. The ADDIUSER routine detected that no test identifier was being passed.

System Action: Processing of the request is terminated.


User Response: Contact Xpediter/CICS Code Coverage Customer Support.
Module: XVTCP1A. The call being issued is XVTCCALL ADDIUSER.

XVTC0078E Unable to add user, unknown return code.

Explanation: An internal logic error was detected while attempting to add a user to a
specification. The return code from the processing routine was not recognized by the calling
routine.

System Action: Processing of the request is terminated.


User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1A

XVTC0079E No userid passed to ADDEUSER call.


Explanation: An internal logic error was detected while attempting to add an exclude user to
a specification. No userid was passed to the add exclude user routine.

System Action: Processing of the request is terminated.


User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1A. The call being issued is XVTCCALL ADDEUSER.

XVTC0080E No parameters passed to ADDEUSER call.

Explanation: An internal logic error was detected while attempting to add an exclude user to
a specification. The add exclude user routine could not detect a parameter list being passed to
it.

System Action: Processing of the request is terminated.


User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1A. The call being issued is XVTCCALL ADDEUSER.

XVTC0081E No system name passed to ADDEUSER call.

Explanation: An internal logic error was detected while attempting to add an exclude user to
a specification. The add exclude user routine could not detect a system name being passed to
it.

System Action: Processing of the request is terminated.


Code Coverage Messages A-33

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1A. The call being issued is XVTCCALL ADDEUSER.

XVTC0082E No testid name passed to ADDEUSER call.


Explanation: An internal logic error was detected while attempting to add an exclude user to
a specification. The add exclude user routine could not detect a test identifier being passed to
it.

System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1A. The call being issued is XVTCCALL ADDEUSER.

XVTC0083E Unable to delete user, unknown return code.


Explanation: An internal logic error was detected while attempting to delete an exclude user
from a specification. The delete exclude user routine set a return code that the calling program
did not recognize.

System Action: Processing of the request is terminated.


User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1A. The call being issued is XVTCCALL ADDXUSER.

XVTC0084E Transaction portion of mask required.


Explanation: A mask must include a transaction, program, and CSECT entry. The transaction
portion of the mask was not filled in.

System Action: Processing of the request is terminated.


User Response: Add a valid transaction value to the mask.

Module: XVTCP1A

XVTC0085E Program portion of mask required.

Explanation: A mask must include a transaction, program, and CSECT entry. The program
portion of the mask was not filled in.

System Action: Processing of the request is terminated.

User Response: Add a valid program value to the mask.


Module: XVTCP1A

XVTC0086E CSECT portion of mask required.

Explanation: A mask must include a transaction, program, and CSECT entry. The CSECT
portion of the mask was not filled in.

System Action: Processing of the request is terminated.

User Response: Add a valid CSECT value to the mask.


Module: XVTCP1A

XVTC0087E Invalid transaction mask.

Explanation: An invalid character was found in the transaction portion of a mask.

System Action: Processing of the request is terminated.

User Response: Correct the transaction portion of the mask.

Module: XVTCP1A

XVTC0088E Invalid program mask.


Explanation: An invalid character was found in the program portion of a mask.

System Action: Processing of the request is terminated.


User Response: Correct the program portion of the mask.

Module: XVTCP1A
A-34 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTC0089E Invalid CSECT mask.

Explanation: An invalid character was found in the CSECT portion of a mask.


System Action: Processing of the request is terminated.

User Response: Correct the CSECT portion of the mask.


Module: XVTCP1A

XVTC0090E Duplicate mask.

Explanation: A duplicate include/exclude mask was detected while adding a mask to a


specification.

System Action: Processing of the request is terminated.


User Response: Modify the mask to make it unique.

Module: XVTCP1A.

XVTC0091E No mask passed to ADDIMASK call.

Explanation: An internal error occurred while attempting to add an include mask to a


specification. The add include mask routine detected that no mask
(transaction/program/CSECT) was passed to it.

System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.


Module: XVTCP1A

XVTC0092E No parameters passed to ADDIMASK call.

Explanation: An internal error occurred while attempting to add an include mask to a


specification. The add include mask routine detected that no parameters were being passed to
it.

System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.


Module: XVTCP1A

XVTC0093E Maximum masks reached.

Explanation: An internal error occurred while attempting to add a mask to a specification.


The maximum number of include/exclude masks was reached.

System Action: Processing of the request is terminated.


User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1A

XVTC0094E No system name passed to ADDIMASK call.

Explanation: An internal error occurred while attempting to add an include mask to a


specification. The add include mask routine detected that no system name was passed to it.

System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.


Module: XVTCP1A

XVTC0095E No testid name passed to ADDIMASK call.

Explanation: An internal error occurred while attempting to add an include mask to a


specification. The add include mask routine detected that no test identifier was passed to it.

System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1A.
Code Coverage Messages A-35

XVTC0096E Unable to add mask, unknown return code.

Explanation: An internal error occurred while attempting to add an include mask to a


specification. The add include mask routine return code was not recognized by the calling
routine.

System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1A

XVTC0097I Mask added.

Explanation: An include/exclude mask was successfully added to a specification.


System Action: The mask is added to the specification.

User Response: None.

Module: XVTCP1A

XVTC0098E No mask passed to ADDXMASK call.

Explanation: An internal error occurred while attempting to add an exclude mask to a


specification. The add exclude mask routine detected that no mask
(transaction/program/CSECT) was passed to it.
System Action: Processing of the request is terminated.
User Response: Contact Xpediter/CICS Code Coverage Customer Support.
Module: XVTCP1A

XVTC0099E No parameters passed to ADDXMASK call.


Explanation: An internal error occurred while attempting to add an exclude mask to a
specification. The add exclude mask routine detected that no parameters were being passed to
it.
System Action: Processing of the request is terminated.
User Response: Contact Xpediter/CICS Code Coverage Customer Support.
Module: XVTCP1A

XVTC0100E No system name passed to ADDXMASK call.


Explanation: An internal error occurred while attempting to add an exclude mask to a
specification. The add exclude mask routine detected that no system name was being passed to
it.
System Action: Processing of the request is terminated.
User Response: Contact Xpediter/CICS Code Coverage Customer Support.
Module: XVTCP1A

XVTC0101E No testid name passed to ADDXMASK call.

Explanation: An internal error occurred while attempting to add an exclude mask to a


specification. The add exclude mask routine detected that no test identifier was passed to it.
System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1A

XVTC0102E At least one Include User entry required.

Explanation: A specification requires at least 1 Include User and 1 Include Mask in order to
complete the specification. No include user entry has been entered.

System Action: Processing of the request is terminated.

User Response: Ensure you enter an include user entry for the specification.

Module: XVTCP1A
A-36 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTC0103E At least one Include Mask entry required.

Explanation: A specification requires at least 1 Include User and 1 Include Mask in order to
complete the specification. No include mask has been entered.

System Action: Processing of the request is terminated.


User Response: Ensure you enter an include mask for the specification.

Module: XVTCP1A

XVTC0104E Unable to delete mask.

Explanation: An internal error occurred while attempting to delete an include/exclude mask


in a specification.

System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1A

XVTC0105E Internal error - No XVTCSTG.

Explanation: An internal error occurred while attempting to perform validation of an


include mask for a specification. The validation routine was unable to detect the XVTCSTG
block for the session.
System Action: Processing of the request is terminated.
User Response: Contact Xpediter/CICS Code Coverage Customer Support.
Module: XVTCP1C.

XVTC0106E Internal error - No Include Mask table.


Explanation: An internal error occurred while attempting to perform validation of an
include mask for a specification. The validation routine was unable to detect the include mask
block to be validated.
System Action: Processing of the request is terminated.
User Response: Contact Xpediter/CICS Code Coverage Customer Support.
Module: XVTCP1C

XVTC0107E Internal error - Bad Include Mask table.


Explanation: An internal error occurred while attempting to perform validation of an
include mask for a specification. The validation routine determined that the include mask
block to be validated did not have the proper structure.
System Action: Processing of the request is terminated.
User Response: Contact Xpediter/CICS Code Coverage Customer Support.
Module: XVTCP1C

XVTC0108E Internal Error - This message is not in use.

Explanation: An internal error occurred. A module has called the message routine with
message number 108, but no message has been assigned to this number.
System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: Unknown.

XVTC0109E Internal error - No System Name for ver.

Explanation: An internal error occurred while attempting to perform validation of an


include mask for a specification. The validation routine determined that no system name was
passed to it.
System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.


Code Coverage Messages A-37

Module: XVTCP1C

XVTC0110E Internal error - No Test ID for ver.

Explanation: An internal error occurred while attempting to perform validation of an


include mask for a specification. The validation routine determined that no test identifier was
passed to it.

System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1C

XVTC0111E Internal error - No Owner ID for ver.

Explanation: An internal error occurred while attempting to perform validation of an


include mask for a specification. The validation routine determined that no owner was passed
to it.

System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.


Module: XVTCP1C

XVTC0112E Internal error - No TIOA acquired.

Explanation: An internal error occurred while attempting to perform validation of an


include mask for a specification. The validation routine determined that no TIOA (Terminal
Input Output Area) was available for its use.

System Action: Processing of the request is terminated.


User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1C

XVTC0113E Internal error - GETCACHE failed.

Explanation: An internal error occurred while attempting to perform validation of an


include mask for a specification. The validation routine made a call to acquire the Code
Coverage collection cache, but the request failed.
System Action: Processing of the request is terminated.
User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1C

XVTC0114E Internal error - GETMAIN for PGMINV failed.

Explanation: An internal error occurred while attempting to perform validation of an


include mask for a specification. The validation routine was unable to acquire sufficient
storage to complete the acquisition of a Code Coverage program inventory entry.

System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1C

XVTC0115E Internal error - Storage management failed.

Explanation: An internal error occurred while attempting to perform validation of an


include mask for a specification. The validation routine was attempting the acquisition of a
Code Coverage program inventory entry, and the Code Coverage storage management
routine failed.

System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1C
A-38 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTC0116E No Matching Program Inventory for Mask.

Explanation: No program/CSECT entries for the program and/or CSECT mask were found in
the Code Coverage program inventory.

System Action: Validation of the specification will continue.


User Response: Make sure that you have populated the Code Coverage program inventory
with an entry that matches the mask.

Module: XVTCP1C

XVTC0117E Transaction(s) not defined.

Explanation: No transaction has been defined to CICS that matches the trans- action portion
of the mask being validated.

System Action: Validation of the specification will continue.

User Response: Make sure that you have specified the correct transaction mask.

Module: XVTCP1C

XVTC0118E Program not in Program Inventory.


Explanation: No program matching the program portion of the mask being validate was
found in the Code Coverage program inventory.
System Action: Validation of the specification will continue.
User Response: Make sure that you have populated the Code Coverage program inventory
with a program that matches the program portion of the mask.

Module: XVTCP1C

XVTC0119E Load module not found in DFHRPL.

Explanation: No load module was found in the CICS DFHRPL concatenation that matches
the program portion of the specification mask being validated.
System Action: Validation of the specification will continue.
User Response: Make sure that you have specified a correct program, and that the program
has been defined and is available to this CICS region.

Module: XVTCP1C

XVTC0120E CSECT not in Program Inventory.

Explanation: No CSECT matching the program/CSECT portions of the specification being


validated was detected in the program(s) matching the program portion of the mask.

System Action: Validation of the specification will continue.


User Response: Make sure that you have specified a correct program and/or CSECT. Also
make sure that the Code Coverage program inventory has been properly populated.

Module: XVTCP1C

XVTC0121E PGM/CSECT not in Program Inventory.

Explanation: No program/CSECT combination matching the program/CSECT portion of the


mask being validated was found in the Code Coverage program inventory.

System Action: Validation of the specification will continue.

User Response: Make sure that you have specified a correct program/CSECT. Also make sure
that the Code Coverage program inventory has been properly populated.

Module: XVTCP1C

XVTC0122E CSECT D/T not found in load module.

Explanation: The CSECT date and time from the Program Inventory for the mask being
validate has no match in the LOAD module.

System Action: Validation of the specification will continue.


Code Coverage Messages A-39

User Response: Make sure that you have specified the correct CSECT name. Also make sure
that the correct version of the program has been link edited/bound into a library in the CICS
DFHRPL concatenation.
Module: XVTCP1C

XVTC0123E Entry not found in Program Inventory.

Explanation: No matching entry could be found in the Code Coverage program inventory
for the mask being validate.

System Action: Validation of the specification will continue.

User Response: Make sure that you have specified the correct program and/or CSECT names.
Make sure you populate the Code Coverage program inventory with this program.

Module: XVTCP1C

XVTC0124E Listing not found in listing file.

Explanation: No matching listing could be found in the Xpediter/CICS source listing


datasets for this program/CSECT.

System Action: Validation of the specification will continue.

User Response: Make sure that you have specified the correct program and/or CSECT names.
Make sure you have processed the program with the Compuware Shared Services Language
processor and populated the Code Coverage program inventory with this program.

Module: XVTCP1C

XVTC0125E Collection Off in Program Inventory.


Explanation: A match was found for the program/CSECT being validated in the Code
Coverage program inventory, but the collection flag was set to off.
System Action: Validation of the specification will continue.

User Response: This program/CSECT will not have collection data accumulated if the
collection flag is off. If you wish to collect data for the program/CSECT, you must run the
program inventory population utility and set the collection flag to on.

Module: XVTCP1C

XVTC0126E Please enter a valid screen identifier.

Explanation: A transfer command (=) was entered, but the screen identifier did not identify
a valid screen.

System Action: The transfer is aborted.


User Response: Correct the screen identifier.

Module: XVTCMGR

XVTC0127E Invalid selection - that key not active here.

Explanation: A PF (program function) key was pressed, but that key is either not defined or
not active on the current screen.
System Action: The current screen is redisplayed.

User Response: Use the correct function or PF key.

Module: XVTCMGR

XVTC0128E That PF key is not active on this screen.

Explanation: A PF (program function) key was pressed, but that key is not active on the
current screen.

System Action: The current screen is redisplayed.

User Response: Use the correct function or PF key.

Module: XVTCMGR
A-40 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTC0129I Top of table reached.

Explanation: A scrolling command caused a scroll beyond the first line of data to be
displayed.

System Action: The display will begin with the first line of data.
User Response: None.

Module: XVTCMGR

XVTC0130E Invalid scroll amount.

Explanation: The value specified for a scrolling amount was invalid. Valid scroll values are
PAGE, HALF, CSR, MAX or nnnn where nnnn is a value between 1 and 9999.

System Action: The current screen is redisplayed.

User Response: Enter a valid value for the scroll amount.

Module: XVTCMGR

XVTC0131E Command not recognized

Explanation: You entered a primary command that was not recognized.


System Action: The command you entered is redisplayed in the command line.

User Response: Use this link to get a list of valid primary commands and reenter a valid
primary command.

Module: XVTCMGR

XVTC0132E Command not supported on this screen.

Explanation: The primary command you entered is not available on this screen.
System Action: The current screen is redisplayed.

User Response: Enter a valid command.

Module: XVTCMGR

XVTC0133E Invalid selection code, must be S'.'


Explanation: You must use the S (Select) line command to select a choice from a menu.
System Action: The current screen is redisplayed.

User Response: Enter an S in the menu choice you want.


Module: XVTCMGR

XVTC0134E Internal error - Invalid message code.

Explanation: An internal error was detected by the messaging program. A message number
was passed for which no message text exists.

System Action: The current screen is redisplayed.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.


Module: XVTCMGR.

XVTC0135E Inconsistent operands for this command.

Explanation: A primary command was entered with one or more operands that conflict or
are inconsistent with the function requested. Use this link to get a list of primary commands
and from this list select the command you entered to examine the correct operands.
System Action: The current screen is redisplayed.
User Response: Reenter the command and operands.

Module: XVTCMGR

XVTC0136I Bottom of data reached.


Explanation: A scroll command was issued that would cause the scroll to exceed the last line
of data to be displayed.
Code Coverage Messages A-41

System Action: The screen display will be adjusted to display the last line of data available.

User Response: None.


Module: XVTCMGR

XVTC0137I Top of data reached.

Explanation: A scrolling command caused a scroll beyond the first line of data to be
displayed.

System Action: The display will begin with the first line of data.

User Response: None.

Module: XVTCMGR

XVTC0138E Alt. screen size not avail. on this terminal.


Explanation: You have asked to display the screen in the terminals alternate screen size by
using the ALT ON primary command, but no alternate screen size has been defined.

System Action: The current screen will be redisplayed using the default screen size.

User Response: None.


Module: XVTCMGR

XVTC0139E Invalid line command.

Explanation: You have entered a line command that is not recognized on this screen.
System Action: The current screen will be redisplayed.
User Response: Remove or correct the line command in error.

Module: Various.

XVTC0140E Invalid option for scrolling command.


Explanation: The value specified for a scrolling amount was invalid. Valid scroll values are
PAGE, HALF, CSR, MAX or nnnn where nnnn is a value between 1 and 9999.
System Action: The current screen is redisplayed.
User Response: Enter a valid value for the scroll amount.
Module: XVTCMGR

XVTC0141I Scroll beyond displayable data.

Explanation: A scrolling command caused a scroll beyond the first line or last line of data to
be displayed.

System Action: The display will be repositioned.

User Response: None.


Module: XVTCMGR

XVTC0142I Scroll MAX not available.

Explanation: You tried to use a scrolling command with the amount of MAX, but MAX is not
supported for the type of data being displayed.

System Action: The screen will be redisplayed.

User Response: Remove the MAX amount in the scroll field.

Module: XVTCMGR

XVTC0143E Help module(s) not installed.

Explanation: You attempted to access a help module and either the help modules are not
installed or a help module could not be located for the help requested.

System Action: The screen will display the name of the help module requested.
A-42 Xpediter/Code Coverage Mainframe User/Reference Guide

User Response: 1) Contact your sites Xpediter/CICS Code Coverage support representative,
or 2) Contact Xpediter/CICS Code Coverage Customer Support and give them the message
number displayed and the type of help you were requesting.

Module: XVTCMGR

XVTC0144E Internal logic error - text merge.

Explanation: An error occurred while trying to format help text.

System Action: The current screen will be redisplayed.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCMGR

XVTC0145E Internal logic error - help exit.


Explanation: An error occurred while trying to format help text.

System Action: The current screen will be redisplayed.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCMGR

XVTC0146I Keyword not found/Help is for current screen.


Explanation: You entered HELP followed by a keyword that was not recognized by the help
display routine.
System Action: The help module associated with the current screen is displayed.
User Response: Use this link to display a list of supported help keywords.

Module: XVTCMGR

XVTC0147I Press PF1 again for help on using tutorials.


Explanation: You just entered the help display routine.

System Action: The help module requested is displayed.

User Response: Press PF1 for more information about using the help facility of
Xpediter/CICS. You may also use the HELP HELP primary command at any point in the
product or you may use this link for more information about the help subsystem.

Module: XVTCMGR

XVTC0148E Invalid operand.


Explanation: You entered an invalid operand on a primary command.

System Action: The current screen is redisplayed.

User Response: Correct the operand. For a list of commands and their operands use this link
or use the HELP COMMANDS primary command.

Module: XVTCMGR

XVTC0149E Excessive HELP commands, use END key.


Explanation: While using HELP, you exceeded the maximum depth of the help command
stack.

System Action: Use the PF3 key or END command to redisplay the prior help screen.

User Response: Contact Xpediter/CICS Code Coverage Customer Support and advise them
on what sequence of help screens you were viewing.

Module: XVTCMGR

XVTC0150E XVTCMGR must run on a device that supports 3270 Data Streams

Explanation: An attempt was made to execute CICS Code Coverage screens from a terminal
(3270 display) whose screen size is less than 24 rows by 80 columns.

System Action: The task is terminated.


Code Coverage Messages A-43

User Response: Ensure that you are attempting to run the CICS Code Coverage transactions
(XVCC or XVSC) from a device with a minimum screen size of 24 rows by 80 columns.
Module: XVTCMGR

XVTC0151E XVTCMGR must run on a device that supports 3270 Data Streams

Explanation: An attempt was made to execute CICS Code Coverage screens from a device
that does not support IBM 3270 data streams.

System Action: The task is terminated.

User Response: Ensure that you are attempting to run the CICS Code Coverage transactions
(XVCC or XVSC) from a device that supports 3270 data streams.
Module: XVTCMGR

XVTC0152E Internal error - Invalid archive record address passed from XVTCP2.

Explanation: An internal error was detected trying to browse the record whose address was
supposed to be passed to XVTCP1A.

System Action: The XVTCP1A screen is displayed with the error message and PF3 returns to
the XVTCP2 screen.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1A

XVTC0153E Internal error - Unable to build archive record.


Explanation: An internal error was detected building the record for the selected test.

System Action: The current screen is redisplayed.


User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP1

XVTC0154E Error occurred writing the test to the XVTCSPEC file.

Explanation: An I/O error was detected writing the test record to the XVTCSPEC file.
System Action: The current screen is redisplayed.
User Response: Verify that your XVTCSPEC file is defined correctly and has the correct CEDA
options.

Module: XVTCP1

XVTC0155E Error occurred rewriting the test to the XVTCSPEC file.

Explanation: An I/O error was detected rewriting the test record to the XVTCSPEC file.

System Action: The current screen is redisplayed.


User Response: Verify that your XVTCSPEC file is defined correctly and has the correct CEDA
options.

Module: XVTCP1

XVTC0156E Error occurred reading the test from the XVTCSPEC file.

Explanation: The selected record can not be read from the XVTCSPEC file. It may have been
deleted by a user with XVSC authority.
System Action: The current screen is redisplayed.

User Response: Verify if someone deleted that record or there is an I/O error accessing it.
Module: XVTCP2

XVTC0157E User does not have access to XVSC, so cannot do this delete.

Explanation: Users may only delete records from the XVTCSPEC file which contain their
userid UNLESS they have authority to run XVSC.

System Action: The current screen is redisplayed.


A-44 Xpediter/Code Coverage Mainframe User/Reference Guide

User Response: If this is a valid delete, ask your site for the authority to access the XVSC
transaction. Without it, users may only delete XVTCSPEC records that they created (userids
will match).
Module: XVTCP2. Query security failed for current user.

XVTC0158E Duplicate test name when issuing a Load from ARCHIVE dataset.

Explanation: The system and test names have been entered for a new specification, but
during the add request, a specification with the same system and test name was detected as
already available.

System Action: Processing of the load request is terminated.


User Response: Verify that the active test is the same as the Archived test. If they are
identical, the Load is not needed. If they are different, you must deleted the current test to
issue a Load with the same system and test names.

Module: XVTCP2

XVTC0159E No request byte passed to ACTTEST call.


Explanation: An internal logic error was detected while trying to start coverage for a
specification. The SC, SF, or SB line command issued a call to the activation routine which
could not detect a request byte in the parameter list.
System Action: Processing of the start request is terminated.
User Response: Contact Xpediter/CICS Code Coverage Customer Support.
Module: XVTCP2. The call being issued is XVTCCALL ACTTEST.

XVTC0160E System name required but not passed.

Explanation: An internal logic error was detected while trying to start coverage for a
specification. The SC, SF, or SB line command was issued but the system name was not passed.
System Action: Processing of the start request is terminated.
User Response: Contact Xpediter/CICS Code Coverage Customer Support.
Module: XVTCP2

XVTC0161E Test name required but not passed.


Explanation: An internal logic error was detected while trying to start coverage for a
specification. The SC, SF, or SB line command was issued but the test name was not passed.
System Action: Processing of the start request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.


Module: XVTCP2

XVTC0162E Invalid request byte passed to ACTTEST call.


Explanation: An internal logic error was detected while trying to start coverage for a
specification. The SC, SF, or SB line command issued a call to the activation routine which
detected an invalid request byte in the parameter list.
System Action: Processing of the start request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP2. The call being issued is XVTCCALL ACTTEST.

XVTC0163E Status is "Incomplete", must be "Available".

Explanation: The status of a specification must be "Available" in order to use the SC, SF, or SB
line command to start collection. The current status is "Incomplete".

System Action: Processing of the start request is terminated.

User Response: Transfer to the Test Definition screen (=1) and enter the S line command to
transfer to the Test Definition/Collection Specification screen to complete the specification.

Module: XVTCP2
Code Coverage Messages A-45

XVTC0164E Unable to Dequeue on System Name.

Explanation: An internal error was detected during the processing of a specification. The
system was attempting to dequeue on the system name but was unable to complete the
dequeue.

System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP2. The call being made was either a XVTCCALL ACTTEST or XVTCCALL
RETSTAT.

XVTC0165E Unable to Enqueue on System Name.


Explanation: An internal error was detected during the processing of a specification. The
system was attempting to enqueue on the system name but was unable to complete the
enqueue.

System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP2. The call being made was either a XVTCCALL ACTTEST or XVTCCALL
RETSTAT.

XVTC0166E Unable to Dequeue on System Chain.


Explanation: An internal error was detected during the processing of specification. The
system was attempting to dequeue on the system name chain but was unable to complete the
dequeue.

System Action: Processing of the request is terminated.

User Response: Contact Xpediter/CICS Code Coverage Customer Support.


Module: XVTCP2. The call being made was either a XVTCCALL ACTTEST or XVTCCALL
RETSTAT.

XVTC0167E Unable to Enqueue on System Chain.


Explanation: An internal error was detected during the processing of specification. The
system was attempting to enqueue on the system name chain but was unable to complete the
enqueue.
System Action: Processing of the request is terminated.
User Response: Contact Xpediter/CICS Code Coverage Customer Support.
Module: XVTCP2. The call being made was either a XVTCCALL ACTTEST or XVTCCALL
RETSTAT.

XVTC0168E Unable to locate entry for this test name.


Explanation: An internal error was detected during the processing of specification. The
system was attempting to locate an entry for the test name but was unable to find it.
System Action: Processing of the request is terminated.
User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP2. The call being made was either a XVTCCALL ACTTEST or XVTCCALL
RETSTAT.

XVTC0169E No parameters passed to ACTTEST call.

Explanation: An internal logic error was detected while trying to start coverage for a
specification. The SC, SF, or SB line command issued a call to the activation routine which
could not detect a parameter list.
System Action: Processing of the start request is terminated.
User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP2. The call being issued is XVTCCALL ACTTEST.


A-46 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTC0170E Unable to locate entry for this system name.

Explanation: An internal error was detected during the processing of specification. The
system was attempting to locate an entry for the system name but was unable to find it.

System Action: Processing of the request is terminated.


User Response: Contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP2. The call being made was either a XVTCCALL ACTTEST or XVTCCALL
RETSTAT.

XVTC0171E Status is "Quiescing", must be "Available".

Explanation: The status of a specification must be "Available" in order to use the SC, SF, or SB
line command to start collection. The current status is "Quiescing".

System Action: Processing of the start request is terminated.

User Response: Remove the line command from this specification.

Module: XVTCP2

XVTC0172E Status is "Collecting", must be "Available".


Explanation: The status of a specification must be "Available" in order to use the SC, SF, or SB
line command to start collection. The current status is "Collecting".
System Action: Processing of the start request is terminated.
User Response: Remove the line command from this specification.
Module: XVTCP2

XVTC0173E Add of test failed when issuing a Load from the Archive dataset.
Explanation: The system and test names from the Archived entry are being added, but
during the add request, an internal error was detected.

System Action: Processing of the add request is terminated.

User Response: Repeat the request by pressing Enter, as another user may have been adding
or modifying a specification with the same system and test name. If the request fails again,
contact Xpediter/CICS Code Coverage Customer Support.

Module: XVTCP2. The call being issued is XVTCCALL NEWTEST.

XVTC0174I XVTCSPEC file is empty.

Explanation: The XVTCSPEC file does not contain any specifications. Tests may be added via
the Archive command on the Test Definition screen.

System Action: The Browse Specification Archive screen is displayed without any data.
User Response: Transfer to another screen and continue processing. Specifications may be
added and archived on the Test Definition screen and then viewed on this screen.

Module: XVTCP2. There is currently no data to display.

XVTC0175E Asterisk not permitted in System Name.

Explanation: You entered an asterisk in the System Name field.


System Action: The System Name field containing the asterisk is highlighted.

User Response: An asterisk is not allowed in the System Name field. Correct the System
Name.

Module: XVTCP1

XVTC0176E Asterisk not permitted in Test Name.

Explanation: You entered an asterisk in the Test Identifier field.

System Action: The test identifier containing the asterisk is highlighted.

User Response: An asterisk is not allowed in the Test Identifier field. Correct the test
identifier.
Code Coverage Messages A-47

Module: XVTCP1

XVTC0177E XVTCSPEC file is not defined in the current CSD.

Explanation: The XVTCSPEC file is not defined in the CSD.


System Action: The Browse Specification Archive screen is displayed without any data and
can not be used at this time.

User Response: Transfer to another screen and continue processing. Any function having to
do with archiving, may not be done until this is corrected.

Module: XVTCP2. There is currently nothing that can be displayed.

XVTC0178E Error browsing XVTCSPEC file.

Explanation: The XVTCSPEC file appears to have an I/O error. Check it out and determine if
it needs to be redefined.

System Action: The Browse Specification Archive screen is incomplete.

User Response: Determine if the XVTCSPEC file must be deleted and redefined.

Module: XVTCP2. All keys previously on the file will not be displayed.

XVTC0181E LOAD/CSECT D/T does not match Prog Inv D/T.


Explanation: A CSECT in the load module for the mask being validated does not have an
entry with a matching date and time in the program Inventory.
System Action: Validation of the specification will continue.
User Response: Make sure that you have specified the correct CSECT name. Also make sure
that the correct version of the program has been link edited/bound into a library in the CICS
DFHRPL concatenation. Also make sure the populate utility was run for the Load Library and
Source listing dataset where the program resides.

XVTC0182I Can not Archive blank line entry.

Explanation: Invalid Archive command issued on a blank test line.


System Action: The Specification Archive screen is redisplayed with the error message.
User Response: Enter the Archive command on a valid test case line.

Module: XVTCP1. There is currently nothing to be archived.

XVTC0183S XVTCTRUE not defined.


Explanation: An internal logic error has occurred in module XVTCCCIN. The Xpediter/Code
Coverage CICS Task Related User Exit (XVTCTRUE) has not been defined to CICS.
System Action: The call to XVTCTRUE is rejected.
User Response: Contact your Xpediter/Code Coverage installer. During the installation
process, program XVTCTRUE was not defined to CICS.

Module: XVTCCCIN

XVTC0184S Unable to open XVTCEXTR cant start Code Coverage

Explanation: An internal logic error has occurred in module XVTCCCIN. The XVTCEXTR
dataset could not be opened.
System Action: Code Coverage startup is aborted.

User Response: Contact your Xpediter/Code Coverage administrator. An error occurred while
attempting to open the XVTCEXTR dataset. The dataset may not have been defined properly
or no dataset has been associated with the file either through resource definition or in the
CICS startup JCL.

Module: XVTCCCIN

XVTC0185S Unable to open XVTCEXTJ cant start Code Coverage

Explanation: An internal logic error has occurred in module XVTCCCIN. The XVTCEXTJ
dataset could not be opened.
A-48 Xpediter/Code Coverage Mainframe User/Reference Guide

System Action: Code Coverage startup is aborted.

User Response: Contact your Xpediter/Code Coverage administrator. An error occurred while
attempting to open the XVTCEXTJ dataset. The dataset may not have been defined properly or
no dataset has been associated with the file either through resource definition or in the CICS
startup JCL.

Module: XVTCCCIN

XVTC0186S Unable to open SPOOL. Can't start Code Coverage

Explanation: An internal logic error has occurred in module XVTCCCIN. The CICS SPOOL
facility could not be opened.
System Action: Code Coverage startup is aborted.

User Response: Contact your Xpediter/Code Coverage administrator. An error occurred while
attempting to open the CICS SPOOL facility. CICS SPOOL is required by Xpediter/Code
Coverage in order to harden collected data. The facility has not been defined to CICS or has
been defined incorrectly.

Module: XVTCCCIN

XVTC0187S Cannot load Code Coverage release table XVTTARLS


Explanation: An internal logic error has occurred in module XVTCCCIN. The Code Coverage
release table XVTTARLS could not be loaded.

System Action: Code Coverage startup is aborted.


User Response: Contact your Xpediter/Code Coverage administrator. The Code Coverage
load library containing this module has not been added to the CICS DFHRPL. It must be
defined to CICS in order for this module to be loaded.
Module: XVTCCCIN

XVTC0188S Mismatched CICS Code Coverage components release


Explanation: An internal logic error has occurred in module XVTCCCIN. The Code Coverage
release number in the Xpediter/Code Coverage modules do not match those in the
Xpediter/CICS Global Table.

System Action: Code Coverage startup is aborted.

User Response: Contact your Xpediter/Code Coverage administrator. There is a mismatch


between the Xpediter/CICS and Xpediter/Code Coverage releases defined in this CICS region.
This is likely an error introduced during installation. Ensure the correct load libraries for each
product are defined in the correct order in the CICS DFHRPL.

Module: XVTCCCIN

XVTC0189S XVTCRMC address not passed on (ENA) call.

Explanation: An internal logic error has occurred in module XVTCCCIN. A call to the
Xpediter/Code Coverage TRUE (XVTCTRUE) could not be made because the address of the
Xpediter/Code Coverage resource manager was not passed during the Code Coverage enable
call.

System Action: The call is rejected.

User Response: Contact Code Coverage Customer Support.

Module: XVTCCCIN

XVTC0190E Command not valid for System Flow collection

Explanation: A V (View) line command was entered on a specification that is currently only
collecting System Flow data. The V line command is not valid if only System Flow collection is
being done.

System Action: None.

User Response: None.

Module: XVTCP1
Code Coverage Messages A-49

XVTC0193E "V" line command only valid on Include Masks

Explanation: You have entered a V line command for either an Include User, Exclude User, or
Exclude Mask. The V line command is invalid for these entries, i.e. it is only valid for Include
Masks.

System Action: The current screen will be redisplayed.

User Response: Correct the line command in error.

Module: XVTCP1A

XVTC0194E Include Mask is empty, cannot be validated

Explanation: You have entered a V line command for an Include Mask which is empty (no
data entered).

System Action: The current screen will be redisplayed.

User Response: Correct the line command in error.

Module: XVTCP1A

XVTC0195E Mask is empty, cannot be deleted


Explanation: You have entered a D line command for an Include/Exclude mask which is
empty (no data entered).
System Action: The current screen will be redisplayed.
User Response: Correct the line command in error.
Module: XVTCP1A

XVTC0196E Error opening XVTCSPEC file for input.


Explanation: XVTCSPEC file cannot be opened at this time. Check CICS log to determine the
problem.

System Action: The Specification Archive screen is incomplete.

User Response: Determine the reason that the open failed.


Module: XVTCP2

XVTC0197E Error opening XVTCSPEC file for update.

Explanation: The XVTCSPEC file cannot be opened at this time. Check the CICS log to
determine the problem. If the file is shared with another CICS region, ensure that it was not
left open for update, delete, or add in that region.
System Action: The Specification Archive file cannot be updated at this time.

User Response: Determine the reason that the open failed.


Module: XVTCP1/XVTCP2

XVTC0198E Error occurred deleting a record from the XVTCSPEC file.


Explanation: An I/O error was detected deleting the test record from the XVTCSPEC file.

System Action: The current screen is redisplayed with the delete in error.

User Response: Verify that your XVTCSPEC file is still usable.


Module: XVTCP2

XVTC0201I Unable to locate requested key or generic key.

Explanation: The key (or generic key) entered with the LOCATE command does not exist on
the XVTCSPEC file. You must enclose the key in single quotes if it contains spaces.

System Action: The screen is redisplayed with the next sequential key in the file at the top of
the screen. If no key is entered, the screen will start with the first key on the file positioned at
the top.
User Response: Verify that you are trying to LOCATE a key that exists on the file and have
enclosed it in single quotes if it contains spaces.
A-50 Xpediter/Code Coverage Mainframe User/Reference Guide

Module: XVTCP2

XVTC0203E COUNT=NO. Only one CC may be collecting.

Explanation: Xpediter/Code Coverage Global (XVTCGBL) option COUNT is currently set to


NO. When XVTCGBL option COUNT is NO, only one Code Coverage test may be active.

System Action: You have requested activation of another Code Coverage test while one is
still active. Your request is rejected.

User Response: Shut down Xpediter/CICS, change the XVTCGBL option COUNT to YES
(modify XVGBLINP overrides if they are used or reassemble and link the module XVTCGBL),
then restart Xpediter/CICS.
Module: XVTCP1 or XVTCP2

XVTC0204E COUNT=NO. System Flow is not allowed.

Explanation: Xpediter/Code Coverage Global (XVTCGBL) option COUNT is currently set to


NO. When XVTCGBL option COUNT is NO, System Flow is not allowed.

System Action: You have requested activation of System Flow. Your request is rejected.
User Response: Shut down Xpediter/CICS, change the XVTCGBL option COUNT to YES
(modify XVGBLINP overrides if they are used or reassemble and link the module XVTCGBL),
then restart Xpediter/CICS.
Module: XVTCP1 or XVTCP2

XVTC1000E Failure in “DSHINIT” during Environment Initialization. Processing terminated.

Explanation:

RC 4 GETMAIN failure Global Block.


RC 8 LOAD failed for DSHSRVS. or Invalid Global Block.
RC 12 Recovery environment failure.
RC 16 Invalid Address Space Control (ASC) mode.

System Action: Processing is terminated.

User Response:

RC 4 Increase region size.


Ensure load module DSHSRVS is available via STEPLIB or LNKLST. or May indicate a
RC 8 storage overlay. Rerun job. If the problem persists, contact Code Coverage Customer
Support.
Failure establishing recovery environment (ESTAE/FRR). Rerun job. If the problem persists,
RC 12
contact Code Coverage Customer Support.
Job is not running in ASC Primary Mode. Rerun job. If the problem persists, contact Code
RC 16
Coverage Customer Support.

Module: XVTCUTIL

XVTC1001W Unknown parameter: aaaaaaaa.

Explanation: The PARM= on the jobs EXEC statement contained an unrecognized value.
aaaaaaaa is the value in error.

System Action: Processing continues. Job return code set to 4.

User Response: Ensure EXEC statement contains a valid value for PARM=.

Module: XVTCUTIL

XVTC1005E Module aaaaaaaa has an invalid module header.

Explanation: An internally loaded Code Coverage module has been determined to contain
an invalid module header. aaaaaaaa is a Code Coverage module.

System Action: Processing is terminated.


Code Coverage Messages A-51

User Response: Verify no modules in the TASKLIB, JOBLIB/STEPLIB, or LNKLST


concatenation have the same name as the named load module. If there is a duplicate named
module, attempt reordering the concatenation for Code Coverage. Correct the error and rerun
the job. If the problem persists, contact Code Coverage Customer Support.

Module: XVTCUTIL

XVTC1006E Module aaaaaaaa has an invalid name bbbbbbbb.

Explanation: An internally loaded Code Coverage module has been determined to contain
an invalid module name. aaaaaaaa is the load module name. bbbbbbbb is the actual name
found.
System Action: Processing is terminated.

User Response: Verify no modules in the TASKLIB, JOBLIB/STEPLIB, or LNKLST


concatenation have the same name as the named load module. If there is a duplicate named
module, attempt re-ordering the concatenation for Code Coverage. Correct the error and rerun
the job. If the problem persists, contact Code Coverage Customer Support.

Module: XVTCUTIL

XVTC1007E Module aaaaaaaa has an invalid release stamp xxxx.


Explanation: An internally loaded Code Coverage module has been determined to contain
an invalid release stamp. aaaaaaaa is the load module name. xxxx is the actual release stamp.

System Action: Processing is terminated.


User Response: Verify no modules in the TASKLIB, JOBLIB/STEPLIB, or LNKLST
concatenation have the same name as the named load module. If there is a duplicate named
module, attempt re-ordering the concatenation for Code Coverage. Correct the error and rerun
the job. If the problem persists, contact Code Coverage Customer Support.

Module: XVTCUTIL

XVTC1008E ATTACH for aaaaaaaa subtask failed RC(xxxx).


Explanation: An error has occurred during the ATTACH of a subtask. aaaaaaaa is the subtask
being ATTACHd. xxxx is the return code from the ATTACH service. The subtask will normally
be IOS. The IOS subtask represents the proprietary access method used to perform I/O against
the Program Inventory dataset.

RC 4 Invalid MVS release.


RC 8 Invalid IOS DECB.
RC 12 Storage obtain error.
RC 16 DFHRPL not found.
RC 20 XVTCIOS load error.
RC 24 XVTCIOS header error.
RC 28 XVTCIOS name error.
RC 32 XVTCIOS release error.
RC 36 XVTCMSG load error.
RC 40 XVTCMSG header error.
RC 44 XVTCMSG name error.
RC 48 DSHSRVS load error.
RC 52 XVTCIOS attach error.
RC 56 XVTCIOS subtask error.

System Action: Processing is terminated.

User Response:

RC 4 Code Coverage is only available for MVS/ESA 3.1.3 and later.


RC 8 Contact Code Coverage Customer Support.
RC 12 Increase region size.
A-52 Xpediter/Code Coverage Mainframe User/Reference Guide

RC 16 Ensure a DFHRPL concatenation is available.


Verify proper Code Coverage library in the TASKLIB, JOBLIB/STEPLIB, or
RC 20, 24, 28, 32 LNKLST concatenation. Ensure no duplicate modules named XVTCIOS are
found ahead of the Code Coverage library.
Verify proper Code Coverage library in the TASKLIB, JOBLIB/STEPLIB, or
RC 36, 40, 44 LNKLST concatenation. Ensure no duplicate modules named XVTCMSG are
found ahead of the Code Coverage library.
Verify proper Code Coverage library in the TASKLIB, JOBLIB/STEPLIB, or
RC 48 LNKLST concatenation. Module DSHSRVS must be available for Code
Coverage processing.
The MVS attach has failed for the IOS subtask. Search JESMSGLG and
RC 52 JESYSMSG for related error conditions and correct appropriately. If the
problem persists, contact Code Coverage Customer Support.
Contact Code Coverage Customer Support. Be prepared to collect
RC 56
documentation required to recreate the error. condition.

Module: XVTCUTIL

XVTC1009E aaaaaaaa subtask initialization failed. Abend bbbb.


Explanation: An abend occurred during subtask initialization. aaaaaaaa is the failing subtask.
bbbb is the subtask’s abend code. The subtask will normally be IOS. The IOS subtask represents
the proprietary access method used to perform I/O against the Program Inventory dataset.

System Action: Processing is terminated.

User Response: See IOS return codes for a detailed description. Correct the error and rerun
job.

Module: XVTCUTIL

XVTC1010I aaaaaaaa subtask initialization complete.


Explanation: The named subtask has initialized successfully. aaaaaaaa is the subtask.

System Action: None.


User Response: None.

Module: XVTCUTIL

XVTC1095E Code Coverage requires a minimum operating system release of OS/390 2.5.0.
Explanation: The Code Coverage product is only supported on platforms running OS/390
2.5.0 or later.

System Action: Processing is terminated.

User Response: Ensure the operating system on the active machine or LPAR is OS/390 2.5.0
or later. If not, rerun the job on an LPAR which is running a supported OS/390 release. If the
problem persists, contact Code Coverage Customer Support.

Module: XVTCUTIL

XVTC1098E Abend aaaa occurred in bbbbbbbb (cccccccc).

Explanation: An abend has occurred in a module outside of Code Coverage. aaaa is the
abend and reason code. bbbbbbbb is the failing module. cccccccc is the failing service. The failing
service will normally be an MVS service (e.g. OPEN, BLDL, LOAD, etc.).
System Action: Processing is terminated.
User Response: If an MVS service is provided, refer to the proper IBM documentation for the
supplied abend code. For example, “Abend S878 occurred in XVTCPOP (BLDL)” would indicate
a larger region size may be required. Correct the error and rerun job. If the problem persists,
contact Code Coverage Customer Support.

Module: XVTCUTIL

XVTC1099E Abend aaaa occurred in bbbbbbbb offset xxxx.

Explanation: An abend has occurred within a Code Coverage module. aaaa is the abend and
reason code. bbbbbbbb is the failing module. xxxx is the offset into the failing module.
Code Coverage Messages A-53

System Action: Processing is terminated.

User Response: Contact Code Coverage Customer Support. Be prepared to collect


documentation required to recreate the abend condition.

Module: XVTCUTIL

XVTC1100I Members processed: ####.

Explanation: This message reports the total number of successfully processed programs. ####
is the number of members processed.

System Action: None.

User Response: None.


Module: XVTCUCOL, XVTCUCPY, XVTCUDEL, XVTCUDIR, XVTCUGEN.

XVTC1110W Error detected in aaaaaaaa. RC(xxxx).

Explanation: A non-zero return code has been returned from a command processor.
aaaaaaaa is module in error. xxxx is the module’s return code. This message will normally be
preceded by an error message which provides a more detailed description of the actual
problem.

System Action: Processing for the command is terminated. Processing continues with the
next control statement.

User Response: Refer to preceding message(s) to determine the detailed cause of the error.
Correct the error and rerun the job.

Module: XVTCUTIL and XVTCPCTL.

XVTC1115E Database error. FUNCCODE(##) RC(xxxx) RSN(yyyy).

Explanation: IOS has detected an error condition. ## is the IOS function code. xxxx is the
function’s return code. yyyy is the function’s reason code.
System Action: Processing is terminated. SYSPRINT will provide a report of any preceding
members that had been processed.

User Response: Normally, an IOS message will be printed to the JESMSGLG via WTO. If
available, refer to the IOS message for error description and correction. Correct the error and
rerun the job. If the problem persists or no additional message is provided, contact Code
Coverage Customer Support.

Module: XVTCUCOL, XVTCUCPY, XVTCUDEL, XVTCUDIR, XVTCUFMT, XVTCUGEN.

XVTC1120I aaaaaaaa successful for bbbbbbbb(cccccccc) Date: dddddddd Time: tttttttt.


Explanation: The named action has been successfully performed for the identified member.
aaaaaaaa is the action performed. bbbbbbbb is the load module. cccccccc is the CSECT name.
dddddddd is the compile date (ccyy/mm/dd) tttttttt is the compile time (hh:mm:ss).

System Action: None.

User Response: None. This message is produced when PARM=FULL is coded on the JCL EXEC
statement.

Module: XVTCUCOL, XVTCUCPY, XVTCUDEL, XVTCUGEN.

XVTC1121W aaaaaaaa failed for bbbbbbbb(cccccccc) Date: dddddddd Time: tttttttt - ssssssss.
Explanation: The named action has failed for the identified member. aaaaaaaa is the action
performed. bbbbbbbb is the load module. cccccccc is the CSECT name. dddddddd is the compile
date (ccyy/mm/dd) tttttttt is the compile time (hh:mm:ss) ssssssss is a detailed description.
System Action: Processing for the member is terminated. Processing continues with the next
member.

User Response: For DUPLICATE ENTRY, specify the REPLACE parameter on your COPY
statement (e.g. COPY * * * REPLACE). TOO LARGE FOR DATABASE usually indicates a full
Program Inventory File. Either delete some unneeded members or format a larger Program
Inventory file. For PROGRAM CRC VALIDATION ERROR indicates the IMPORT dataset has
been damaged during transport, and the specified member is not added to the Program
Inventory File. Retransmit or recreate the IMPORT dataset.
A-54 Xpediter/Code Coverage Mainframe User/Reference Guide

Module: XVTCUCOL, XVTCUCPY, XVTCUDEL, XVTCUDIR, XVTCUGEN, and XVTCUIMP.

XVTC1130W No members in database (aaaaaaaa).

Explanation: A member level command has been executed against an empty Program
Inventory file. aaaaaaaa is the dataset name of the Program Inventory File.

System Action: None. The job return code is set to 4.

User Response: None.

Module: XVTCUCOL, XVTCUCPY, XVTCUDEL, XVTCUDIR, XVTCUGEN.

XVTC1140E Storage Obtain for DD statement ddname failed RC(return_code)

Explanation: Allocation of storage for the specified DD failed.

RC 4 Insufficient storage is available.


RC 8 Insufficient central storage to back the request.
RC C System cannot page in the page table associated with the storage.

System Action: The Utility Export/Import command processing has been aborted.

User Response: Increase the amount of storage available to the private area.
Module: XVTCUEXP, XVTCUIMP.

XVTC1141E Storage Obtain for DD Name Record Storage failed RC(return code)
Explanation: Allocation of Record storage for the specified DD failed.

RC 4 Insufficient storage is available.


RC 8 Insufficient central storage to back the request.
RC C System cannot page in the page table associated with the storage.

System Action: The Utility Export/Import command processing has been aborted.

User Response: Increase the amount of storage available to the private area.
Module: XVTCUEXP, XVTCUIMP.

XVTC1142E Storage Obtain for CRC Parameter Area failed RC(return code)

Explanation: Allocation of CRC Parameter Area storage failed.

RC 4 Insufficient storage is available.


RC 8 Insufficient central storage to back the request.
RC C System cannot page in the page table associated with the storage.

System Action: The Utility Export/Import command processing has been aborted.

User Response: Increase the amount of storage available to the private area.
Module: XVTCUEXP, XVTCUIMP.

XVTC1143E CRC Services error Function(function) RC(return code) RSN(reason code)

Explanation: The CRC Services function specified has failed.

Function CRCINIT CRC Param Area Initialization


RC 12 Parameter Errors
RSN 0 Invalid Width Value
RSN 4 Invalid Basis Value
RSN 8 Invalid Initial Value
RSN 12 Invalid XOR Value
RSN 16 Invalid Reflect Status

Function CRCINIT CRC Param Area Initialization


Code Coverage Messages A-55

RC 16 Processing Errors
RSN 0 Invalid Parameter Area Identifier
RSN 4 Invalid Parameter Area Version

Function CRCINIT CRC Param Area Initialization


RC 16 Parameter Errors
RSN 0 Invalid Parameter Area Identifier
RSN 4 Invalid Parameter Area Version
RSN 8 Invalid Parameter Area Information
RSN 12 Invalid Buffer Area Address
RSN 16 Invalid Buffer Area Length

Function CRCINIT CRC Param Area Initialization


RC 16 Processing Errors
RSN 0 Invalid Parameter Area Identifier
RSN 4 Invalid Parameter Area Version

System Action: The Utility Export/Import command processing has been aborted.
User Response: Contact Code Coverage Customer Support.

Module: XVTCUEXP, XVTCUIMP.

XVTC1201E Unable to locate DD statement for aaaaaaaa.


Explanation: A scan of the job’s TIOT failed to locate the ddname mentioned. aaaaaaaa is the
DDNAME in error.

System Action: For SYSPRINT or CONTROL, job processing is terminated. For CCCARDS,
command processing is terminated. Processing continues with the next control card.

User Response: Check JCL for proper specification for the required ddname. Rerun job.

Module: XVTCUTIL, XVTCUGEN.

XVTC1202E aaaaaaaa must not be allocated as a SYSIN dataset.


or
aaaaaaaa must not be allocated as a SYSOUT dataset.

Explanation: The ddname mentioned was determined to be a JES dataset. However, the JES
dataset definition does not allow proper processing mode (INPUT or OUTPUT). aaaaaaaa is the
DDNAME in error.

System Action: For SYSPRINT or CONTROL, job processing is terminated. For CCCARDS,
command processing is terminated. Processing continues with the next control card.

User Response: SYSOUT= defines a JES dataset for OUTPUT (e.g. //SYSPRINT DD
SYSOUT=*). JES datasets defined for INPUT are specified as DD * or DD DATA (e.g.
//CONTROL DD *). Correct JCL and rerun the job.

Module: XVTCUTIL, XVTCUGEN.

XVTC1203E Record format (aaa) is invalid for bbbbbbbb.

Explanation: An invalid record format (DCB=RECFM) has been specified for the ddname
mentioned. aaa is the detected record format. bbbbbbbb is the DDNAME in error.

System Action: For SYSPRINT or CONTROL, job processing is terminated. For CCCARDS,
command processing is terminated. Processing continues with the next control card.

User Response: Correct JCL so that the proper DCB attributes are specified. Rerun the job.
Module: XVTCUTIL, XVTCUGEN.

XVTC1204E OPEN failed for DD statement (aaaaaaaa).

Explanation: OPEN processing for specified ddname did not complete successfully. aaaaaaaa
is the DDNAME in error.
A-56 Xpediter/Code Coverage Mainframe User/Reference Guide

System Action: For SYSPRINT or CONTROL, job processing is terminated. For CCCARDS,
command processing is terminated. Processing continues with the next control card.
User Response: When OPEN fails there are usually other messages which fully describe the
actual error. Check JESMSGLG and JESYSMSG for related error messages. Correct problem and
rerun the job.

Module: XVTCUTIL, XVTCUGEN.

XVTC1205E Logical record length (###) is invalid for aaaaaaaa.

Explanation: The dataset identified by ddname has been allocated with a DCB=LRECL= value
which is inconsistent with the required value. ### is the detected Logical Record Length.
aaaaaaaa is the DDNAME in error.
System Action: For SYSPRINT or CONTROL, job processing is terminated. For CCCARDS,
command processing is terminated. Processing continues with the next control card.

User Response: Reallocate the dataset using the required DCB attributes, or change the
ddname to reference a dataset defined with the required DCB attributes. Rerun the job.

Module: XVTCUTIL, XVTCUGEN.

XVTC1206E aaaaaaaa - No member specified for output PDS.


Explanation: The output dataset referenced by ddname has been determined to be a PDS.
However, no member has been specified. aaaaaaaa is the DDNAME in error.

System Action: For SYSPRINT or CONTROL, job processing is terminated. For CCCARDS,
command processing is terminated. Processing continues with the next control card.

User Response: Add a member name to the PDS defined in the jobstream. An existing
member will be overwritten. Otherwise, a new member will be created. Correct the JCL and
rerun the job.
Module: XVTCUTIL, XVTCUGEN.

XVTC1207E OBTAIN for DD statement ddname failed RC(return_code)


Explanation: VTOC OBTAIN processing for the Program Inventory Utility program DD has
failed.

RC 4 The required volume was not mounted.


RC 8 The format-1 DSCB was not found in the VTOC of the specified volume.
A permanent I/O error was encountered or an unexpected error return code was received
RC 12
from CVAF.
RC 16 Invalid work area pointer.
The SEEK option was specified and the absolute track address (CCHHR) is not within the
RC 20
boundaries of the VTOC.

System Action: The Program Inventory Utility command in progress will be suppressed.

User Response: Contact Code Coverage Customer Support.

Module: XVTCUTIL

XVTC1208E Data Set Organization (dsorg) is invalid for ddname

Explanation: The Program Inventory Utility program DD has a dataset organization that is
invalid. Must be PS (Physical Sequential).
System Action: The Program Inventory Utility command in progress will be suppressed.
User Response: Contact Code Coverage Customer Support.

Module: XVTCUTIL

XVTC1209E Key length (length) is invalid for ddname


Explanation: The Program Inventory Utility program DD has a physical key length that is
invalid. Must be zero (non-keyed).

System Action: The Program Inventory Utility command in progress will be suppressed.
Code Coverage Messages A-57

User Response: Contact Code Coverage Customer Support.

Module: XVTCUTIL

XVTC1210E ddname allocated to an unsupported device type (UCB_type)


Explanation: The Program Inventory Utility program DD has been allocated to an
unsupported device type. Device type must be DASD or TAPE.

System Action: The Program Inventory Utility command in progress will be suppressed.

User Response: Correct the specified DD statement and re-run the Program Inventory Utility
program.

Module: XVTCUTIL

XVTC1211E Import Data Set ddname is empty


Explanation: The Program Inventory Utility program Import dataset DD is empty.

System Action: The Program Inventory Utility IMPORT command in progress will be
suppressed.

User Response: Specify a non-empty Program Inventory Utility program Import dataset.
Module: XVTCUTIL

XVTC1212E ddname has invalid Record Type(type) at Record Sequence(record_number)

Explanation: The Program Inventory Utility program Import dataset has an invalid type
code at the specified record.

System Action: The Program Inventory Utility command in progress will be suppressed.

User Response: The Program Inventory Utility program Import dataset is invalid or has been
corrupted. Verify Program Inventory Utility program Export processing had completed
successfully and that no errors occurred when the dataset was transmitted to the target system.

Module: XVTCUTIL

XVTC1213E ddname has invalid Record Sequence (sequence) at Record Sequence


(record_number)

Explanation: The Program Inventory Utility program Import dataset has an invalid sequence
number at the specified record.

System Action: The Program Inventory Utility command in progress will be suppressed.

User Response: The Program Inventory Utility program Import dataset is invalid or has been
corrupted. Verify Program Inventory Utility program Export processing had completed
successfully and that no errors occurred when the dataset was transmitted to the target system.

Module: XVTCUTIL

XVTC1214E ddname has invalid Header Record at Record Sequence(record_number)


Explanation: The Program Inventory Utility program Import dataset has an invalid Header
Record at the specified record.

System Action: The Program Inventory Utility command in progress will be suppressed.
User Response: The Program Inventory Utility program Import dataset is invalid or has been
corrupted. Verify Program Inventory Utility program Export processing had completed
successfully and that no errors occurred when the dataset was transmitted to the target system.

Module: XVTCUTIL

XVTC1215E ddname has invalid Member Record at Record Sequence(record_number)

Explanation: The Program Inventory Utility program Import dataset has an invalid Member
Record at the specified record.
System Action: The Program Inventory Utility command in progress will be suppressed.

User Response: The Program Inventory Utility program Import dataset is invalid or has been
corrupted. Verify Program Inventory Utility program Export processing had completed
successfully and that no errors occurred when the dataset was transmitted to the target system.
A-58 Xpediter/Code Coverage Mainframe User/Reference Guide

Module: XVTCUTIL

XVTC1216E Import Data Set ddname has been truncated

Explanation: The Program Inventory Utility program Import dataset has been truncated and
Import processing cannot complete.

System Action: The Program Inventory Utility command in progress will be suppressed.

User Response: The Program Inventory Utility program Import dataset is invalid or has been
corrupted. Verify Program Inventory Utility program Export processing had completed
successfully and that no errors occurred when the dataset was transmitted to the target system.

Module: XVTCUTIL

XVTC1500I Control card processed successfully.


Explanation: The utility command has completed successfully.

System Action: None.

User Response: None.

Module: XVTCUTIL

XVTC1501W Control card in error. Skipping to next card.


Explanation: A range or syntax error has been detected. This message will normally be
preceded by an error message which provides a more detailed description of the actual
problem.
System Action: Processing for the command is terminated. Processing continues with the
next control statement.

User Response: Refer to the preceding error message(s) to determine the detailed cause of the
error. Correct the error and rerun the job.

Module: XVTCUTIL

XVTC1504E Syntax error. ssssssss.


Explanation: The command specified has a syntax error. ssssssss is a detailed description.
System Action: Processing for the command is terminated. Processing continues with the
next control statement.

User Response: Using the detailed description, refer to the command syntax and correct the
error. Typically, the detailed description will state “REQUIRED PARM MISSING.” Some utility
commands (e.g. DELETE and COPY) required at least one parameter be specified. The single
parameter may be a wildcard.

Module: XVTCPCTL

XVTC1505E Syntax error. ssssssss (tttttttt).


Explanation: The command specified has a syntax error. The text outside the parentheses,
ssssssss, is a detailed description of the value which was expected. The tttttttt within the
parentheses is the unrecognized value in error.
System Action: Processing for the command is terminated. Processing continues with the
next control statement.

User Response: Using the detailed description, refer to the command syntax and correct the
error. Verify correct spelling of command name and keyword value(s).

Module: XVTCPCTL

XVTC1506E Range error. ssssssss.

Explanation: A parameter value has been determined to be outside the defined range of
values. ssssssss is a detailed description.

System Action: Processing for the command is terminated. Processing continues with the
next control statement.

User Response: Using the detailed description, refer to the command syntax and correct the
error.
Code Coverage Messages A-59

Module: XVTCUFMT

XVTC1507E Invalid value. ssssssss.

Explanation: An invalid value has been detected. ssssssss is a detailed description.


System Action: Processing for the command is terminated. Processing continues with the
next control statement.

User Response: Using the detailed description, refer to the command syntax and correct the
error. This error is usually a misspelling on the fourth parameter of a COLLECT or COPY
command.

Module: XVTCUCOL, XVTCUCPY.

XVTC1508W Using default value. aaaaaaaa=xxxx.


Explanation: A keyword value has been omitted and a default value has been supplied.
aaaaaaaa is a keyword parameter. xxxx is the defaulted value.

System Action: Command processing continues using the default value.

User Response: Verify the defaulted value is satisfactory for your requirements. If not, specify
the keyword with your desired value and rerun the job.

Module: XVTCUFMT

XVTC1509E Invalid Date/Time Stamp. Check aaaaaaaa.


Explanation: An invalid Date/Time Stamp has been detected. aaaaaaaa is the field in error.
System Action: Processing for the command is terminated. Processing continues with the
next control statement.

User Response: The Date/Time Stamp is comprised of decimal digits and an optional
wildcard (asterisk) in the format of CCYYMMDDHHMMSS. The wildcard is recognized on the
last character only. Also, checks are made to ensure the validity of the Date/Time. For example,
19980631* is invalid because there are only 30 days during the month of June. Correct the
error and rerun the job.

Module: XVTCUCOL, XVTCUCPY, XVTCUDEL, XVTCUDIR, XVTCUGEN.

XVTC2000E Failure in “DSHINIT” during Environment Initialization. Processing terminated.


Explanation:

RC 4 GETMAIN failure Global Block.


RC 8 LOAD failed for DSHSRVS. or Invalid Global Block.
RC 12 Recovery environment failure.
RC 16 Invalid Address Space Control (ASC) mode.

System Action: Processing is terminated.


User Response:

RC 4 Increase region size.


Ensure load module DSHSRVS is available via STEPLIB or LNKLST. or May indicate a
RC 8 storage overlay. Rerun job. If the problem persists, contact Code Coverage Customer
Support.
Failure establishing recovery environment (ESTAE/FRR). Rerun job. If the problem persists,
RC 12
contact Code Coverage Customer Support.
Job is not running in ASC Primary Mode. Rerun job. If the problem persists, contact Code
RC 16
Coverage Customer Support.

Module: XVTCPOP

XVTC2001W Unknown parameter: aaaaaaaa.

Explanation: The PARM= on the jobs EXEC statement contained an unrecognized value.
aaaaaaaa is the value in error.

System Action: Processing continues. Job return code set to 4.


A-60 Xpediter/Code Coverage Mainframe User/Reference Guide

User Response: Ensure EXEC statement contains a valid value for PARM=.

Module: XVTCPOP

XVTC2002E Unable to locate DD statement for aaaaaaaa.


Explanation: A scan of the job’s TIOT failed to locate the ddname mentioned. aaaaaaaa is the
DDNAME in error.

System Action: Processing is terminated.

User Response: Check JCL for proper specification for the required ddname. Rerun job.

Module: XVTCPOP

XVTC2003E aaaaaaaa must not be allocated as a SYSIN dataset.


or
aaaaaaaa must not be allocated as a SYSOUT dataset.

Explanation: The ddname mentioned was determined to be a JES dataset. However, the JES
dataset definition does not allow proper processing mode (INPUT or OUTPUT). aaaaaaaa is the
DDNAME in error.

System Action: Processing is terminated.

User Response: SYSOUT= defines a JES dataset for OUTPUT (e.g. //SYSPRINT DD
SYSOUT=*). JES datasets defined for INPUT are specified as DD * or DD DATA (e.g.
//CONTROL DD *). Correct JCL and rerun the job.

Module: XVTCPOP

XVTC2004E Record format (aaa) is invalid for bbbbbbbb.


Explanation: An invalid record format (DCB=RECFM) has been specified for the ddname
mentioned. aaa is the detected record format. bbbbbbbb is the DDNAME in error.

System Action: Processing is terminated.

User Response: Correct JCL so that the proper DCB attributes are specified. Rerun the job.
Module: XVTCPOP

XVTC2005E OPEN failed for DD statement (aaaaaaaa).

Explanation: OPEN processing for specified ddname did not complete successfully. aaaaaaaa
is the DDNAME in error.

System Action: Processing is terminated.


User Response: When OPEN fails there are usually other messages which fully describe the
actual error. Check JESMSGLG and JESYSMSG for related error messages. Correct problem and
rerun the job.

Module: XVTCPOP, XVTCDOIT.

XVTC2006E BLDL RC(xxxx) for module(aaaaaaaa).

Explanation: The failed BLDL which generates this message is attempting to locate the
named module within the TASKLIB, JOBLIB/STEPLIB, or LNKLST concatenation. The BLDL
service has several return codes (see IBM publication for more detail). xxxx represents the
actual BLDL return code. aaaaaaaa is the directory member to be located. The most common
return code is RC(4), which indicates the module to be located does not exist in the PDS/PDSE.

System Action: Processing is terminated.

User Response: Ensure the named module can be located via the TASKLIB, JOBLIB/STEPLIB,
or LNKLST concatenation. Correct problem and rerun the job.
Module: XVTCLESD

XVTC2007W Invalid BLDL List - Name(aaaaaaaa) TTR(bbbbbb) K(cc) Z(dd) C(ee)

Explanation: The BLDL list supplied in the message text is invalid. This internal error
typically results from the BLDL list specifying a private library, yet no DCB has been supplied.
aaaaaaaa is the BLDL module name. bbbbbb is the beginning TTR of the member. cc is the
concatenation number of the dataset. dd is location of the system DCB where the module was
found. ee is a name type flag.
Code Coverage Messages A-61

System Action: Depending on the module in error, processing may continue. However, if this
condition arises for XVTCVVMM, further processing will be terminated.
User Response: Rerun the job. If the problem persists, contact Code Coverage Customer
Support.

Module: XVTCLESD

XVTC2008W Logical record length (###) is invalid for aaaaaaaa.

Explanation: The dataset identified by ddname has been allocated with a DCB=LRECL= value
which is inconsistent with the required value. ### is the detected Logical Record Length.
aaaaaaaa is the DDNAME in error.
System Action: Processing is terminated.

User Response: Reallocate the dataset using the required DCB attributes, or change the
ddname to reference a dataset defined with the required DCB attributes. Rerun the job.

Module: XVTCPOP

XVTC2009E aaaaaaaa - No member specified for output PDS.


Explanation: The output dataset referenced by ddname has been determined to be a PDS.
However, no member has been specified. aaaaaaaa is the DDNAME in error.
System Action: Processing is terminated.
User Response: Add a member name to the PDS defined in the jobstream. An existing
member will be overwritten. Otherwise, a new member will be created. Correct the JCL and
rerun the job.

Module: XVTCPOP

XVTC2010E Error detected in aaaaaaaa. RC(xxxx).

Explanation: A non-zero return code has been returned from a called subroutine. aaaaaaaa is
the module in error. xxxx is the module’s return code. This message will normally be preceded
by an error message which provides a more detailed description of the actual problem.

System Action: Processing is terminated.


User Response: Refer to the preceding message(s) to determine the detailed cause of the error.
Correct the error and rerun the job.
Module: XVTCPOP

XVTC2011W LOAD failed for aaaaaaaa. Sxxx-yyy.

Explanation: The ERRET exit from a LOAD request has been taken. aaaaaaaa is module in
error. xxxx MVS LOAD system abend code. yyyy MVS LOAD reason code.

System Action: Processing is terminated for the current load module. Processing will
continue with the next load module.

User Response: Refer to the JESMSGLG and/or JESYSMSG for a contents supervisor message
detailing the error condition. Correct the load module in error or add an LMOD statement for
this member to the job’s EXCLUDE dataset. Rerun the job.

Module: XVTCDOIT

XVTC2012E DEFINE LMOD cannot be wildcarded when entered via JCL PARM=
Explanation: The DEFINE statement may be entered either through the CONTROL dataset or
via the JCL PARM=. Wildcards are not allowed in the load module (LMOD) name when entered
with the JCL PARM=.
System Action: Processing is terminated.

User Response: Correct the DEFINE statement in the JCL PARM= to conform to the required
syntax. Rerun the job.

Module: XVTCPOP
A-62 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTC2014W Binder Dialog error for aaaaaaaa(bbbbbbbb). FUNC(cccccccc) Return(xxxx)


Reason(yyyy).
Explanation: The Binder Dialog API is used to process load modules found in PDSE type
libraries. aaaaaaaa is the module in error. bbbbbbbb is the CSECT in error. cccccccc is the failing
Binder Dialog function name. xxxx is the functions return code. yyyy is the functions reason
code. This message is used to diagnose a failed Binder API request.

System Action: Processing is terminated for the current load module. Processing will
continue with the next load module.
User Response: There is an IBM publication which documents all API functions and their
return/reason codes. The information provided in this message should be used as an index to
locate more detail for the error encountered. Correct the problem as documented in the Binder
API reference. Or add the Load Module (or CSECT) to your EXCLUDES dataset. Rerun the job.
If the problem persists, contact Code Coverage Customer Support.

Module: XVTCLESD

XVTC2015W Binder Dialog error. FUNC(aaaaaaaa) Return(xxxx) Reason(yyyy).


Explanation: The Binder Dialog API is used to process load modules found in PDSE type
libraries. aaaaaaaa is the failing Binder Dialog function name. xxxx is the functions return
code. yyyy is the functions reason code. This message is used to diagnose a failed Binder API
request.

System Action: Processing is terminated for the current load module. Processing will
continue with the next load module.
User Response: There is an IBM publication which documents all API functions and their
return/reason codes. The information provided in this message should be used as an index to
locate more detail for the error encountered. Correct the problem as documented in the Binder
API reference. Rerun the job. If the problem persists, contact Code Coverage Customer
Support.

Module: XVTCLESD

XVTC2016W Early EOD on (aaaaaaaa) in (bbbbbbbb)

Explanation: Load modules residing in a standard PDS library are read sequentially in order
to extract ESD and IDR information. This message is produced when an End-of-Data condition
arises before all ESD and IDR information has been obtained. aaaaaaaa is member name.
bbbbbbbb is the DSNAME of the load library.

System Action: Processing is terminated for the current load module. Processing will
continue with the next load module.

User Response: This message may indicates a load module which has no control record(s).
More likely, is that an I/O error forced the EODAD routine to be driven. In either case, the
named load module should be excluded from Code Coverage processing. Also, the named load
module should be inspected for accuracy. This message may indicate a “problem module” in
your load library. Re-linkedit the load module or add an LMOD statement for this member to
the jobs EXCLUDE dataset. Rerun the job.

Module: XVTCLESD

XVTC2020E Internal error in aaaaaaaa (bbbbbbbb).

Explanation: An unrecoverable error condition has been detected. aaaaaaaa is the name of a
module or subroutine. bbbbbbbb is the name of the process being attempted.

System Action: Processing is terminated.

User Response: Contact Code Coverage Customer Support. Be prepared to collect


documentation required to recreate the error condition.

Module: XVTCPOP, XVTCDOIT, XVTCLESD

XVTC2050I aaaaaaaa(bbbbbbbb) processing failed. cccccccc RC(xxxx).


Explanation: An error was detected while processing the named load module/CSECT.
aaaaaaaa is the load module name. bbbbbbbb is the CSECT name. cccccccc a Code Coverage
routine. xxxx is the return code.

System Action: None.


Code Coverage Messages A-63

User Response: See prior message(s), or check JESMSGLG and JESYSMSG, for a complete
description of the error. This message is produced when PARM=FULL is coded on the JCL EXEC
statement.
Module: XVTCDOIT

XVTC2052I No DEFINE for aaaaaaaa(bbbbbbbb).

Explanation: Processing has been bypassed for the named load module/CSECT combination.
aaaaaaaa is the load module name. bbbbbbbb is the CSECT name. No DEFINE statement was
found in the CONTROL dataset.

System Action: None.


User Response: None. This message is produced when PARM=FULL is coded on the JCL EXEC
statement.

Module: XVTCDOIT

XVTC2053I aaaaaaaa(bbbbbbbb) has been excluded.

Explanation: The named load module and/or CSECT has been excluded from processing via
the EXCLUDE dataset. aaaaaaaa is the load module name. bbbbbbbb is the CSECT name.

System Action: None.

User Response: None. This message is produced when PARM=FULL is coded on the JCL EXEC
statement.

Module: XVTCDOIT

XVTC2054I aaaaaaaa processing failed. bbbbbbbb RC(xxxx).


Explanation: An error was detected while processing the named load module. aaaaaaaa is the
load module name. bbbbbbbb a Code Coverage routine. xxxx is the return code.

System Action: None.

User Response: See prior message(s), or check JESMSGLG and JESYSMSG, for a complete
description of the error. This message is produced when PARM=FULL is coded on the JCL EXEC
statement.

Module: XVTCDOIT

XVTC2055I No DEFINE for aaaaaaaa( ).

Explanation: Processing has been bypassed because no DEFINE statement exists for this load
module. aaaaaaaa is the load module name.

System Action: None.


User Response: None. This message is produced when PARM=FULL is coded on the JCL EXEC
statement.

Module: XVTCDOIT

XVTC2056I aaaaaaaa(bbbbbbbb) has been successfully processed.

Explanation: The named load module/CSECT has been successfully processed. aaaaaaaa is
the load module name. bbbbbbbb is the CSECT name.

System Action: None.

User Response: None.


Module: XVTCDOIT

XVTC2057I aaaaaaaa(bbbbbbbb) Unsupported Language.

Explanation: The named load module/CSECT has been bypassed based on the language.
aaaaaaaa is the load module name. bbbbbbbb is the CSECT name.
System Action: None.

User Response: None.


Module: XVTCDOIT
A-64 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTC2060I Unreferenced DEFINE card: LMOD(aaaaaaaa) CSECT(bbbbbbbb) SLS Name(cccccccc)

Explanation: No modules processed matched the selection criteria on a DEFINE control


statement, and the load module specified on the DEFINE control statement contained a
wildcard. aaaaaaaa is the load module name. (Trailing asterisks indicate wildcard value.)
bbbbbbbb is the CSECT name. (Trailing asterisks indicate wildcard value.) cccccccc is the SLS
Member Name.

System Action: None.

User Response: This information may be used to further refine the selection criteria set on
the DEFINE statement(s). Otherwise, this message is informational only.

Module: XVTCDOIT

XVTC2061W Unreferenced DEFINE card: LMOD(aaaaaaaa) CSECT(bbbbbbbb) SLS Name(cccccccc)

Explanation: No modules processed matched the selection criteria on a DEFINE control


statement, and the load module specified on the DEFINE control statement did not contain a
wildcard. aaaaaaaa is the load module name. bbbbbbbb is the CSECT name. (Trailing asterisks
indicate wildcard value.) cccccccc is the SLS Member Name. This condition is presented as a
Warning because the specific load module requested was not processed.

System Action: None.

User Response: This information may be used to further refine the selection criteria set on
the DEFINE statement(s). Otherwise, this message is informational only.

Module: XVTCDOIT

XVTC2090I Members processed: ####.

Explanation: This message reports the total number of successfully processed programs. ####
is the number of members processed.

System Action: None.

User Response: None.


Module: XVTCDOIT

XVTC2095E Code Coverage requires a minimum operating system release of OS/390 2.5.0.

Explanation: The Code Coverage product is only supported on platforms running OS/390
2.5.0 or later.

System Action: Processing is terminated.


User Response: Ensure the operating system on the active machine or LPAR is OS/390 2.5.0
or later. If not, rerun the job on an LPAR which is running a supported OS/390 release. If the
problem persists, contact Code Coverage Customer Support.

Module: XVTCPOP

XVTC2105E Module aaaaaaaa has an invalid module header.

Explanation: An internally loaded Code Coverage module has been determined to contain
an invalid module header. aaaaaaaa is a Code Coverage module.

System Action: Processing is terminated.


User Response: Verify no modules in the TASKLIB, JOBLIB/STEPLIB, or LNKLST
concatenation have the same name as the named load module. If there is a duplicate named
module, attempt re-ordering the concatenation for Code Coverage. Correct the error and rerun
the job. If the problem persists, contact Code Coverage Customer Support.

Module: XVCTDRVR

XVTC2106E Module aaaaaaaa has an invalid name bbbbbbbb.


Explanation: An internally loaded Code Coverage module has been determined to contain
an invalid module name. aaaaaaaa is the load module name. bbbbbbbb is the actual name
found.

System Action: Processing is terminated.


Code Coverage Messages A-65

User Response: Verify no modules in the TASKLIB, JOBLIB/STEPLIB, or LNKLST


concatenation have the same name as the named load module. If there is a duplicate named
module, attempt re-ordering the concatenation for Code Coverage. Correct the error and rerun
the job. If the problem persists, contact Code Coverage Customer Support.

Module: XVTCPOP

XVTC2107E Module aaaaaaaa has an invalid release stamp xxxx.

Explanation: An internally loaded Code Coverage module has been determined to contain
an invalid release stamp. aaaaaaaa is the load module name. xxxx is the actual release stamp.

System Action: Processing is terminated.


User Response: Verify no modules in the TASKLIB, JOBLIB/STEPLIB, or LNKLST
concatenation have the same name as the named load module. If there is a duplicate named
module, attempt re-ordering the concatenation for Code Coverage. Correct the error and rerun
the job. If the problem persists, contact Code Coverage Customer Support.

Module: XVTCPOP

XVTC2108E ATTACH for aaaaaaaa subtask failed RC(xxxx).

Explanation: An error has occurred during the ATTACH of a subtask. aaaaaaaa is the subtask
being ATTACHd. xxxx is the return code from the ATTACH service. The subtask will normally
be IOS. The IOS subtask represents the proprietary access method used to perform I/O against
the Program Inventory dataset.

RC 4 Invalid MVS release.


RC 8 Invalid IOS DECB.
RC 12 Storage obtain error.
RC 16 DFHRPL not found.
RC 20 XVTCIOS load error.
RC 24 XVTCIOS header error.
RC 28 XVTCIOS name error.
RC 32 XVTCIOS release error.
RC 36 XVTCMSG load error.
RC 40 XVTCMSG header error.
RC 44 XVTCMSG name error.
RC 48 DSHSRVS load error.
RC 52 XVTCIOS attach error.
RC 56 XVTCIOS subtask error.

System Action: Processing is terminated.

User Response:

RC 4 Code Coverage is only available for MVS/ESA 3.1.3 and later.


RC 8 Contact Code Coverage Customer Support.
RC 12 Increase region size.
RC 16 Ensure a DFHRPL concatenation is available.
Verify proper Code Coverage library in the TASKLIB, JOBLIB/STEPLIB, or
RC 20, 24, 28, 32 LNKLST concatenation. Ensure no duplicate modules named XVTCIOS are
found ahead of the Code Coverage library.
Verify proper Code Coverage library in the TASKLIB, JOBLIB/STEPLIB, or
RC 36, 40, 44 LNKLST concatenation. Ensure no duplicate modules named XVTCMSG are
found ahead of the Code Coverage library.
Verify proper Code Coverage library in the TASKLIB, JOBLIB/STEPLIB, or
RC 48 LNKLST concatenation. Module DSHSRVS must be available for Code
Coverage processing.
A-66 Xpediter/Code Coverage Mainframe User/Reference Guide

The MVS attach has failed for the IOS subtask. Search JESMSGLG and
RC 52 JESYSMSG for related error conditions and correct appropriately. If the
problem persists, contact Code Coverage Customer Support.
Contact Code Coverage Customer Support. Be prepared to collect
RC 56
documentation required to recreate the error. condition.

Module: XVTCPOP

XVTC2109E aaaaaaaa subtask initialization failed. Abend bbbb.


Explanation: An abend occurred during subtask initialization. aaaaaaaa is the failing subtask.
bbbb is the subtask’s abend code. The subtask will normally be IOS. The IOS subtask represents
the proprietary access method used to perform I/O against the Program Inventory dataset.

System Action: Processing is terminated.

User Response: See IOS return codes for a detailed description. Correct the error and rerun
job.
Module: XVTCPOP

XVTC2110I aaaaaaaa subtask initialization complete.

Explanation: The named subtask has initialized successfully. aaaaaaaa is the subtask.
System Action: None.
User Response: None.
Module: XVTCPOP

XVTC2115E Database error. FUNCCODE(##) RC(xxxx) RSN(yyyy).

Explanation: IOS has detected an error condition. ## is the IOS function code. xxxx is the
function’s return code. yyyy is the function’s reason code.

System Action: Processing is terminated. SYSPRINT will provide a report of any preceding
members that had been processed.

User Response: Normally, an IOS message will be printed to the JESMSGLG via WTO. If
available, refer to the IOS message for error description and correction. Correct the error and
rerun the job. If the problem persists or no additional message is provided, contact Code
Coverage Customer Support.

Module: XVTCDOIT

XVTC2198E Abend aaaa occurred in bbbbbbbb (cccccccc).

Explanation: An abend has occurred in a module outside of Code Coverage. aaaa is the
abend and reason code. bbbbbbbb is the failing module. cccccccc is the failing service. The failing
service will normally be an MVS service (e.g. OPEN, BLDL, LOAD, etc.).
System Action: Processing is terminated.
User Response: If an MVS service is provided, refer to the proper IBM documentation for the
supplied abend code. For example, “Abend S878 occurred in XVTCPOP (BLDL)” would indicate
a larger region size may be required. Correct the error and rerun job. If the problem persists,
contact Code Coverage Customer Support.

Module: XVTCPOP

XVTC2199E Abend aaaa occurred in bbbbbbbb offset xxxx.

Explanation: An abend has occurred within a Code Coverage module. aaaa is the abend and
reason code. bbbbbbbb is the failing module. xxxx is the offset into the failing module.

System Action: Processing is terminated.

User Response: Contact Code Coverage Customer Support. Be prepared to collect


documentation required to recreate the abend condition.

Module: XVTCPOP

XVTC2301E DFHRPL DD statements are missing

Explanation: DFHRPL DD JCL card was not detected.


Code Coverage Messages A-67

System Action: Processing is terminated.

User Response: Add the required DFHRPL DDcard to the jobstream and resubmit the job.
Module: XVTCBDIR

XVTC2302E Multiple DFHRPL DD statements are detected

Explanation: Multiple DFHRPL DDcards were detected. Only one DFHRPL DDcard is allowed.

System Action: Processing is terminated.

User Response: Remove the extra DFHRPL DDcard from the jobstream and resubmit the job.

Module: XVTCBDIR

XVTC2303E DFHRPL+nn resides on an unsupported device where nn is the concatenation DD.

Explanation: The dataset identified via the DFHRPL DDcard resides on an unsupported
device. The dataset should be on a DASD device.

System Action: Processing is terminated.

User Response: Correct the DD card identified by the nn to a DSN that resides on a DASD
device.

Module: XVTCBDIR

XVTC2304E DFHRPL+nn DASD device type is invalid

Explanation: The dataset identified via the DFHRPL DDcard resides on an unsupported
DASD device type. The dataset should be on a DASD supported device.

System Action: Processing is terminated.

User Response: Correct the DD card identified by the nn to a DSN that resides on a supported
DASD device.

Module: XVTCBDIR

XVTC2305E DFHRPL+nn SWAREQ failed RC(xx)

Explanation: Processing for the dataset identified via the DFHRPL DDcard has encountered
an error performing a SWAREQ.

RC 8 The SVA in the SWA prefix was not valid.


RC 24 The SVA does not conform to any virtual address.
RC 28 The pointer to the EAPL was not valid.

System Action: Processing is terminated.

User Response: Contact Code Coverage Customer Support.

Module: XVTCBDIR

XVTC2306E DFHRPL+nn OBTAIN failed RC(xx)


Explanation: Processing for the dataset identified via the DFHRPL DDcard has encountered
an error performing an OBTAIN.

RC 4 The required volume was not mounted.


RC 8 The format-1 DSCB was not found in the VTOC of the specified volume.
A permanent I/O error was encountered, or an invalid format-1 DSCB was found when
RC 12 processing the specified volume, or an unexpected error return code was received from
CVAF (common VTOC access facility).
RC 16 Invalid work area pointer.

System Action: Processing is terminated.


User Response: Correct the error and resubmit the job.

Module: XVTCBDIR
A-68 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTC2307E: DFHRPL+nn DSORG is invalid

Explanation: The dataset identified via the DFHRPL DDcard is not a PDS or PDSE.
System Action: Processing is terminated.

User Response: Correct the DSN on the DD card identified by the nn to a DSN of a load
library and resubmit the job.

Module: XVTCBDIR

XVTC2308E DFHRPL+nn RECFM is invalid

Explanation: The dataset identified via the DFHRPL DDcard has an invalid RECFM for a PDS
or PDSE.

System Action: Processing is terminated.

User Response: Correct the DSN on the DD card identified by the nn to a DSN of a load
library and resubmit the job.

Module: XVTCBDIR

XVTC2309I DFHRPL+nn Dynamic Allocation failed RC(xx) S99ERROR (aa), S99INFO (bb)
Explanation: The dataset identified via the DFHRPL DDcard was unable to be dynamically
allocated. The dataset has an invalid RECFM for a PDS or PDSE.
System Action: Processing for this DFHRPL DDcard terminated.
User Response: Determine the reason for the allocation error using the return code. Correct
the reason for the error and resubmit the job.

Module: XVTCBDIR

XVTC2310I DFHRPL+nn OPEN failed RC()

Explanation: The dataset identified via the DFHRPL DDcard was unable to be opened for
processing.
System Action: Processing for this DFHRPL DDcard terminated.
User Response: Determine the reason for the open error using the return code. Correct the
reason for the error and resubmit the job.

Module: XVTCBDIR

XVTC2311I DFHRPL+nn Member membername is a duplicate and is not processed

Explanation: The member identified was processed in an earlier concatenation.


System Action: Processing for this member in the DFHRPL DDcard terminated.

User Response: None.


Module: XVTCBDIR

XVTC2312I DFHRPL+nn Dynamic allocation caused an abend. Further DD processing is bypassed


Explanation: Dynamic allocation processing caused an abend for the dataset identified for
this DFHRPL DDcard.

System Action: Processing for the DFHRPL DDcard terminated.


User Response: Contact Code Coverage Customer Support.

Module: XVTCBDIR

XVTC2313I DFHRPL+nn Open processing caused an abend. Further DD processing is bypassed


Explanation: OPEN processing caused an abend for the dataset identified for this DFHRPL
DDcard.

System Action: Processing for the DFHRPL DDcard terminated.

User Response: Contact Code Coverage Customer Support.

Module: XVTCBDIR
Code Coverage Messages A-69

XVTC2314I DFHRPL+nn Read processing caused an abend. Further DD processing is bypassed

Explanation: READ processing caused an abend for the dataset identified for this DFHRPL
DDcard.

System Action: Processing for the DFHRPL DDcard terminated.


User Response: Contact Code Coverage Customer Support.

Module: XVTCBDIR

XVTC2315I DFHRPL+nn Member (membername) processing caused an abend. Further member


processing is bypassed

Explanation: Member processing caused an abend for the member identified for this DFHRPL
DDcard.

System Action: Processing for the member is terminated.

User Response: Contact Code Coverage Customer Support.

Module: XVTCBDIR

XVTC2316I DFHRPL+nn Member (membername) Storage Obtain processing caused an abend


Explanation: Storage Obtain for Member membername caused an abend for the dataset
identified for this DFHRPL DDcard.
System Action: Processing for the member terminated.
User Response: Increase the region size and resubmit the job.
Module: XVTCBDIR

XVTC2317I DFHRPL+nn Member (membername) Directory add processing caused an abend


Explanation: Directory add processing caused an abend for the member identified for this
DFHRPL DDcard.

System Action: Processing for the member is terminated.

User Response: Contact Code Coverage Customer Support.


Module: XVTCBDIR

XVTC2318I DFHRPL+nn Close processing caused an abend. Further processing is bypassed

Explanation: CLOSE processing caused an abend for the dataset identified for this DFHRPL
DDcard.

System Action: Processing for the DFHRPL DDcard terminated.


User Response: Contact Code Coverage Customer Support.

Module: XVTCBDIR

XVTC2319I DFHRPL+nn Member membername Load module excluded

Explanation: The member identified was excluded from processing.


System Action: Processing for this member in the DFHRPL DDcard bypassed.

User Response: None.

Module: XVTCBDIR

XVTC2320I DFHRPL+nn Dynamic De-allocate caused an abend. Further DD processing is


bypassed

Explanation: Dynamic de-allocation processing caused an abend for the dataset identified
for this DFHRPL DDcard.

System Action: Processing for the DFHRPL DDcard terminated.

User Response: Contact Code Coverage Customer Support.

Module: XVTCBDIR
A-70 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTC2401E Storage Obtain for SLS Parameter Block length(aaaa) failed RC(xxxx)

Explanation: Unable to obtain required storage area.


System Action: U1000 abend.

User Response: Increase REGION parameter and rerun. If the problem persists, contact Code
Coverage Customer Support.

Module: XVTCISLS

XVTC2402E Unable to load program CWPIDRVB

Explanation: Load for Compuware Shared Services program CWPIDRVB failed.

System Action: U1000 abend.


User Response: Verify that the Compuware Shared Services load library is available to the
job.

Module: XVTCISLS

XVTC2403E Unable to locate DD statement for any SLS files

Explanation: No DD statements were found for source listing datasets.


System Action: XVTCPOP step will terminate with RC=8.

User Response: Verify that SLSFnnn DD statement(s) are specified.

Module: XVTCISLS

XVTC2404W SLS files in excess of 99 will be ignored


Explanation: SLSFnnn DD statements in excess of the maximum 99 were specified. SLSFnnn
DD statements beyond the maximum will be ignored.

System Action: Processing will continue, using only the first 99 SLSFnnn DD statements.

User Response: Remove excessive SLSFnnn DD statements.

Module: XVTCISLS

XVTC2405E Unable to initialize Shared Services Support RC(xxxx)


Explanation: An error occurred during initialization of Compuware Shared Services.
System Action: XVTCPOP step will terminate with RC=8.

User Response: Contact Code Coverage Customer Support.


Module: XVTCISLS

XVTC2406E Unable to initialize Shared Services Support - Invalid SLS file

Explanation: An invalid Source Listing File was detected while opening Compuware Source
Listing Support.

System Action: Message XVTC2010E will also be issued, and the XVTCPOP step will
terminate with RC=8.

User Response: Correct the invalid Source Listing File and rerun the job.

Module: XVTCISLS

XVTC2419I No SLS member for aaaaaaaa(bbbbbbbb) SLS Name(cccccccc) Load


Date/Time(mm/dd/yy hh.mm.ss)
Explanation: The Populater could not locate an SLS member for the named CSECT. aaaaaaaa
is the load module name. bbbbbbbb is the CSECT name. cccccccc is the SLS member name.
“UNAVAILABLE” will appear when the date/time could not be determined from the load
module. All programs added to the Program Inventory must have a date/time stamp present in
the load module.

System Action: Processing is terminated for the named CSECT. Processing continues with the
next CSECT.

User Response: Recompile and link-edit the program using the CSS Language Processor to
create an SLS member and add a date/time stamp to the load module. Rerun the job.
Code Coverage Messages A-71

Module: XVTCGVRB

XVTC2420I Date/Time Mismatch for aaaaaaaa(bbbbbbbb) SLS Name(cccccccc) Load


Date/Time(mm/dd/yy hh.mm.ss)

Explanation: The Populater located an SLS member with the same name, but a different
date/time stamp. This implies the load module is not in sync with the SLS file. aaaaaaaa is the
load module name. bbbbbbbb is the CSECT name. cccccccc is the SLS member name.
“UNAVAILABLE” will appear when the date/time could not be determined from the load
module. All programs added to the Program Inventory must have a date/time stamp present in
the load module.

System Action: Processing is terminated for the named CSECT. Processing continues with the
next CSECT.

User Response: Recompile and link-edit the program using the CSS Language Processor to
create an SLS member and add a date/time stamp to the load module. Rerun the job.

Module: XVTCGVRB

XVTC2421I SLS OPEN failed RC(xxxx) for aaaaaaaa(bbbbbbbb) SLS Name(cccccccc) Load
Date/Time(mm/dd/yy hh.mm.ss)
Explanation: An error was encountered by the CSS Language Processor Interface. xxxx is the
return code from the CSS Language Processor Interface. aaaaaaaa is the load module name.
bbbbbbbb is the CSECT name. cccccccc is the SLS member name. “UNAVAILABLE” will appear
when the date/time could not be determined from the load module. All programs added to the
Program Inventory must have a date/time stamp present in the load module.

System Action: Processing is terminated for the named CSECT. Processing continues with the
next CSECT.

User Response: Contact Xpediter/Code Coverage Customer Support. Be prepared to collect


any problem documentation required to recreate the error condition.

Module: XVTCGVRB

XVTC2422E SLS DDname not found in DSN table

Explanation: Internal logic error.

System Action: U1000 abend.


User Response: Contact Code Coverage Customer Support.
Module: XVTCGVRB

XVTC2425W SLS request for ALL verbs failed RC(xxxx)

Explanation: Internal logic error.


System Action: Member will not be added to Program Inventory file.

User Response: Contact Code Coverage Customer Support.

Module: XVTCGVRB

XVTC2426E Internal logic error - invalid input parms

Explanation: Internal logic error.

System Action: U1000 abend.


User Response: Contact Code Coverage Customer Support.

Module: XVTCGVRB

XVTC2427E Storage Obtain for SLS CLIST Block length(aaaa) failed RC(xxxx)

Explanation: Unable to obtain required storage area.

System Action: U1000 abend.

User Response: Increase REGION parameter and rerun. If the problem persists, contact Code
Coverage Customer Support.

Module: XVTCGVRB
A-72 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTC2428E Internal logic error - no SLGBASE

Explanation: Internal logic error.


System Action: XVTCPOP step will terminate with RC=8.

User Response: Contact Code Coverage Customer Support.


Module: XVTCGVRB

XVTC2429W SLS request to set VIEW options failed RC(xxxx)

Explanation: Internal logic error.

System Action: Member will not be added to Program Inventory file.

User Response: Contact Code Coverage Customer Support.


Module: XVTCGVRB

XVTC2430W SLS request for ESD entries failed RC(xxxx)

Explanation: Internal logic error.

System Action: Member will not be added to Program Inventory file.


User Response: Contact Code Coverage Customer Support.

Module: XVTCGVRB

XVTC2431I No verbs found in CSECT(aaaaaaaa) LOADMOD(bbbbbbbb) SLSNAME(cccccccc)


DATE(dddddddd) TIME(eeeeeeee)
Explanation: The SLS data for this CSECT contains no verb entries.
System Action: The CSECT will not be added to Program Inventory file.

User Response: If this CSECT contains no executable code, no action is necessary. Otherwise,
contact Code Coverage Customer Support.

Module: XVTCGVRB

XVTC2432I No ESD entry found in SLS member for CSECT(aaaaaaaa)

Explanation: Internal logic error.


System Action: This CSECT will not be added to Program Inventory file.
User Response: Contact Code Coverage Customer Support.

Module: XVTCGVRB

XVTC2441E Storage Obtain for EXTDIR Block length(aaaa) failed RC(xxxx)


Explanation: Unable to obtain required storage area.

System Action: U1000 abend.

User Response: Increase REGION parameter and rerun. If the problem persists, contact Code
Coverage Customer Support.

Module: XVTCADPI

XVTC2442E Storage Obtain for SLS Verb Block length(aaaa) failed RC(xxxx)
Explanation: Unable to obtain required storage area.

System Action: U1000 abend.

User Response: Increase REGION parameter and rerun. If the problem persists, contact Code
Coverage Customer Support.

Module: XVTCADPI

XVTC2443E Internal logic error computing Verb Block size


Explanation: Internal logic error.

System Action: U1000 abend.


User Response: Contact Code Coverage Customer Support.
Code Coverage Messages A-73

Module: XVTCADPI

XVTC2444E Add I/O request failed RC(xxxx) Reason(yyyy) aaaaaaaaaaaaaaaaaaaaaa

Explanation: Internal logic error. aaaaaaaaaaaaaaaaaaaaaa provides additional information.


System Action: Member will not be added to Program Inventory file.

User Response: Contact Code Coverage Customer Support.

Module: XVTCADPI

XVTC2445W Add I/O request failed RC(xxxx) Reason(yyyy) aaaaaaaaaaaaaaaaaaaaaa

Explanation: Internal logic error. aaaaaaaaaaaaaaaaaaaaaa provides additional information.

System Action: XVTCPOP step will terminate with RC=8.

User Response: Contact Code Coverage Customer Support.


Module: XVTCADPI

XVTC2446E SLS request Token to Dataname failed RC(xxxx)

Explanation: Internal logic error.


System Action: Member will not be added to Program Inventory file.
User Response: Contact Code Coverage Customer Support.
Module: XVTCADPI

XVTC2491E SLS RELEASE failed RC(xxxx)

Explanation: Internal logic error.

System Action: XVTCPOP step will terminate with RC=8.


User Response: Contact Code Coverage Customer Support.
Module: XVTCTSLS

XVTC2492E Internal logic error - invalid input parms


Explanation: Internal logic error.

System Action: XVTCPOP step will terminate with RC=8.


User Response: Contact Code Coverage Customer Support.

Module: XVTCTSLS

XVTC2501E Unknown Exclude Card


Explanation: Record read in EXCLUDE file does not specify LMOD or CSECT.
System Action: Record in error will be listed above message. Processing will terminate after
all records have been processed.

User Response: Correct record in error and restart processing.


Module: XVTCECRD

XVTC2502E Open for EXCLUDES DD failed

Explanation: An OPEN was issued for the EXCLUDES file but did not complete successfully.
File may be corrupted.

System Action: Processing will terminate.

User Response: Recreate file and restart processing.

Module: XVTCECRD

XVTC2503E Invalid LMOD exclude mask

Explanation: An LMOD exclude was encountered with an invalid name specified. The name
must not be greater than eight characters, begin with a numeric, or contain embedded
asterisks (only trailing allowed). Only the characters A-Z, 0-9, $, *, #, and @ are valid.
A-74 Xpediter/Code Coverage Mainframe User/Reference Guide

System Action: Record in error will be listed above message. Processing will terminate after
all records have been processed.
User Response: Correct record in error and restart processing.

Module: XVTCELMD

XVTC2504E Missing LMOD exclude mask

Explanation: An LMOD exclude was encountered with no name operand specified.

System Action: Record in error will be listed above message. Processing will terminate after
all records have been processed.

User Response: Correct record in error and restart processing.


Module: XVTCELMD

XVTC2505E Invalid CSECT exclude mask

Explanation: An CSECT exclude was encountered with a invalid name specified. The name
must not be greater than eight characters, begin with a numeric, or contain embedded
asterisks (only trailing allowed). Only the characters A-Z, 0-9, $, *, #, and @ are valid.

System Action: Record in error will be listed above message. Processing will terminate after
all records have been processed.
User Response: Correct record in error and restart processing.
Module: XVTCECSE

XVTC2506E Missing CSECT exclude mask

Explanation: A CSECT exclude was encountered with no name specified.


System Action: Record in error will be listed above message. Processing will terminate after
all records have been processed.

User Response: Correct record in error and restart processing.

Module: XVTCECSE

XVTC2508E Unknown Control Card


Explanation: Record read in CONTROL file does not specify REPLACE, DEFINE, or COLLECT.

System Action: Record in error will be listed above message. Processing will terminate after
all records have been processed.

User Response: Correct record in error and restart processing.


Module: XVTCCRDS

XVTC2509E Open for CONTROL DD failed


Explanation: An OPEN was issued for the CONTROL file but did not complete successfully.
File may be corrupted.

System Action: Processing will terminate.

User Response: Recreate file and restart processing.

Module: XVTCCRDS

XVTC2510E Bad operand on REPLACE card

Explanation: The REPLACE record read does not specify YES or NO.

System Action: Record in error will be listed above message. Processing will terminate after
all records have been processed.

User Response: Correct record in error and restart processing.

Module: XVTCREPL

XVTC2511E Missing operand on REPLACE card

Explanation: The REPLACE record read does not specify any operands. Valid operands are
YES or NO.
Code Coverage Messages A-75

System Action: Record in error will be listed above message. Processing will terminate after
all records have been processed.
User Response: Correct record in error and restart processing.

Module: XVTCREPL

XVTC2512E Invalid timestamp format

Explanation: The timestamp does not contain all numeric characters or is not in the
following format: CCYYMMDDHHMMSS. All characters must be specified. Days must not
exceed what is valid for the specified month. Leap years are taken into consideration. Hours
must not exceed 23, and minutes and seconds must not exceed 59.

System Action: Record in error will be listed above message. Processing will terminate after
all records have been processed.

User Response: Correct record in error and restart processing.

Module: XVTCDFIN

XVTC2513E Timestamp operand missing on OVERRIDE


Explanation: A DEFINE record was read that specified OVERRIDE, but no corresponding
timestamp value. The timestamp must be in the following format: CCYYMMDDHHMMSS.
System Action: Record in error will be listed above message. Processing will terminate after
all records have been processed.

User Response: Correct record in error and restart processing.


Module: XVTCDFIN

XVTC2514E Unknown operand on DEFINE statement

Explanation: A DEFINE record was read that specified something other than OVERRIDE after
the SLSMEMB data.
System Action: Record in error will be listed above message. Processing will terminate after
all records have been processed.

User Response: Correct record in error and restart processing.


Module: XVTCDFIN

XVTC2515E CSECT cannot be wildcarded if Source Listing Name Specified

Explanation: A DEFINE record was read that specified a CSECT wildcard (*) and an SLSMEMB
name. This combination is not valid.

System Action: Record in error will be listed above message. Processing will terminate after
all records have been processed.

User Response: Correct record in error and restart processing.


Module: XVTCDFIN

XVTC2516E LMOD cannot be wildcarded if Source Listing Name Specified

Explanation: A DEFINE record was read that specified an LMOD wildcard (*) and an
SLSMEMB name. This combination is not valid.

System Action: Record in error will be listed above message. Processing will terminate after
all records have been processed.

User Response: Correct record in error and restart processing.

Module: XVTCDFIN

XVTC2517E Invalid SLSMEMB Name Specified

Explanation: A DEFINE record was read that specified a invalid SLSMEMB name. The name
must not be greater than eight characters, begin with a numeric, or contain any asterisks. Only
the characters A-Z, 0-9, $, #, and @ are valid.

System Action: Record in error will be listed above message. Processing will terminate after
all records have been processed.
A-76 Xpediter/Code Coverage Mainframe User/Reference Guide

User Response: Correct record in error and restart processing.

Module: XVTCDFIN

XVTC2518E Invalid CSECT mask


Explanation: A DEFINE record was read that specified an invalid CSECT name. The name
must not be greater than eight characters, begin with a numeric, or contain embedded
asterisks (only trailing allowed). Only the characters A-Z, 0-9, $, *, #, and @ are valid.

System Action: Record in error will be listed above message. Processing will terminate after
all records have been processed.

User Response: Correct record in error and restart processing.


Module: XVTCDFIN

XVTC2519E Invalid LMOD mask

Explanation: A DEFINE record was read that specified an invalid LMOD name. The name
must not be greater than eight characters, begin with a numeric, or contain embedded
asterisks (only trailing allowed). Only the characters A-Z, 0-9, $, *, #, and @ are valid.

System Action: Record in error will be listed above message. Processing will terminate after
all records have been processed.
User Response: Correct record in error and restart processing.
Module: XVTCDFIN

XVTC2521E Storage Obtain failed for new DEFINE entry

Explanation: A 49-byte area of storage from sp61 could not be GETMAINed.


System Action: Processing will terminate.

User Response: Try rerunning job. If the problem reoccurs, increase the region size on the
EXEC JCL statement and rerun job. If the problem persists, contact Code Coverage Customer
Support.
Module: XVTCADEF

XVTC2522E LMOD Name in DEFINE has been EXCLUDED

Explanation: A DEFINE record was read that specified an LMOD name that has been
EXCLUDED.

System Action: Record in error will be listed above message. Processing will terminate after
all records have been processed.

User Response: Correct record in error and restart processing.


Module: XVTCADEF

XVTC2523E CSECT Name in DEFINE has been EXCLUDED


Explanation: A DEFINE record was read that specified a CSECT name that has been
EXCLUDED.

System Action: Record in error will be listed above message. Processing will terminate after
all records have been processed.

User Response: Correct record in error and restart processing.

Module: XVTCADEF

XVTC2524E DEFINE Entry is a DUPLICATE

Explanation: A DEFINE record was read that is a duplicate of a previously processed DEFINE
card.

System Action: Record in error will be listed above message. Processing will terminate after
all records have been processed.

User Response: Correct record in error and restart processing.


Module: XVTCADEF
Code Coverage Messages A-77

XVTC2525E Storage Obtain failed for new EXCLUDE CSECT entry

Explanation: A 24-byte area of storage from sp60 could not be GETMAINed.


System Action: Processing will terminate.

User Response: Try rerunning job. If the problem reoccurs, increase the region size on the
EXEC JCL statement and rerun job. If the problem persists, contact Code Coverage Customer
Support.

Module: XVTCACEX

XVTC2526E Storage Obtain failed for new EXCLUDE LMOD entry

Explanation: A 24-byte area of storage from sp60 could not be GETMAINed.


System Action: Processing will terminate.

User Response: Try rerunning job. If the problem reoccurs, increase the region size on the
EXEC JCL statement and rerun job. If the problem persists, contact Code Coverage Customer
Support.

Module: XVTCALEX

XVTC2527E EXCLUDE LMOD entry is a DUPLICATE

Explanation: An EXCLUDE LMOD record was read that is identical to a previously processed
EXCLUDE LMOD record.

System Action: Record in error will be listed above message. Processing will terminate after
all records have been processed.

User Response: Correct record in error and restart processing.


Module: XVTCALEX

XVTC2528E EXCLUDE CSECT entry is a DUPLICATE

Explanation: An EXCLUDE CSECT record was read that is identical to a previously processed
EXCLUDE CSECT record.

System Action: Record in error will be listed above message. Processing will terminate after
all records have been processed.

User Response: Correct record in error and restart processing.

Module: XVTCACEX

XVTC2529E Processing Terminated


Explanation: An error has been encountered processing records from the EXCLUDE or
CONTROL files. The record(s) in error has been displayed previously.

System Action: Processing will terminate.


User Response: Correct record(s) in error and resubmit the job.

Module: XVTCECRD, XVTCCRDS.

XVTC2530E NO DD statement for CONTROL File

Explanation: The JCL did not have a DD statement for the CONTROL file.
System Action: Processing will terminate.

User Response: Add the required JCL DD statement for the CONTROL file and resubmit the
job.

Module: XVTCCRDS

XVTC2531E SWAREQ for CONTROL File has failed

Explanation: An error has been encountered while trying to obtain the JFCB information for
the CONTROL file.
System Action: Processing is terminated.

User Response: Resubmit job. If the problem persists, contact Code Coverage Customer
Support.
A-78 Xpediter/Code Coverage Mainframe User/Reference Guide

Module: XVTCCRDS

XVTC2532E INVALID Dataset Parameters for CONTROL File

Explanation: The CONTROL file is not defined as F or FB and/or does not have an LRECL of
80.

System Action: Processing is terminated.

User Response: Define the CONTROL file correctly and resubmit the job.

Module: XVTCCRDS

XVTC2533E NO DD statement for EXCLUDES File

Explanation: The JCL did not have a DD statement for the EXCLUDES file.

System Action: Processing will terminate.


User Response: Add the required JCL DD statement for the EXCLUDES file and resubmit the
job.

Module: XVTCECRD

XVTC2534E SWAREQ for EXCLUDES File has failed


Explanation: An error has been encountered while trying to obtain the JFCB information for
the EXCLUDES file.

System Action: Processing is terminated.


User Response: Resubmit the job. If the problem persists, contact Code Coverage Customer
Support.

Module: XVTCECRD

XVTC2535E INVALID Dataset Parameters for EXCLUDES File


Explanation: The EXCLUDES file is not defined as F or FB and/or does not have an LRECL of
80.

System Action: Processing is terminated.


User Response: Define the EXCLUDES file correctly and resubmit the job.
Module: XVTCECRD

XVTC2536E Bad operand on COLLECT card

Explanation: A COLLECT record was read that specified something other than ON or OFF.
System Action: The record in error is displayed above this message. Processing will terminate
after all records have been processed.
User Response: Correct record in error and restart processing.
Module: XVTCCOLL

XVTC2537E Missing operand on COLLECT card

Explanation: A COLLECT record was read that did not specify any operands. Valid operands
are ON or OFF.

System Action: The record in error is displayed above this message. Processing will terminate
after all records have been processed.
User Response: Correct record in error and restart processing.

Module: XVTCCOLL

XVTC3001I Code Coverage started for System Name=system name,Testid=testid


Explanation: CICS Code Coverage collection has been started for the system name and
testid indicated in the message.

System Action: None.

User Response: None.


Code Coverage Messages A-79

Module: XVTCP1

XVTC3002I Code Coverage halted for System Name=system name,Testid=testid

Explanation: CICS Code Coverage collection has been halted for the system name and
testid indicated in the message.

System Action: None.

User Response: None.

Module: XVTCP1

XVTC3003I System Flow started for System Name=system name,Testid=testid

Explanation: CICS System Flow collection has been started for the system name and testid
indicated in the message.
System Action: None.

User Response: None.

Module: XVTCP1

XVTC3004I System Flow halted for System Name=system name,Testid=testid


Explanation: CICS System Flow collection has been halted for the system name and testid
indicated in the message.

System Action: None.


User Response: None.
Module: XVTCP1

XVTC4000E XVTCEXTR: abended.


Explanation: XVTCEXTR has been abended. For XVAB abends a previous message has been
issued. The message number is also in register 2 in the dump.

System Action: XVAB abend.

User Response: For XVAB abends follow the user response in the accompanying message. For
other abends, contact Code Coverage Customer Support. Have the dump available.

Module: XVTCEXTR

XVTC4001I Coverage/Sys Flow data extracted for System Name=system name,Testid=testid

Explanation: CICS Code Coverage or System flow data has been written to the Code
Coverage extract dataset XVTCEXTR for the system name and testid indicated in the message.
If SUBMIT=YES has been specified in the Code Coverage global table XVTCGBL, then a job
will be submitted by Code Coverage to write this data to the Code Coverage repository.
“XVTC4001I Data Extraction Complete” will follow this message when all system
names/testids have been extracted by the extract command.

System Action: None.

User Response: None.

Module: XVTCEXTR

XVTC4001I DATA EXTRACTION COMPLETE.

Explanation: Code Coverage for CICS has extracted data and a job optionally submitted to
write the extracted data to the Code Coverage repository. This message will be preceded by a
message of the same number detailing which system names/testid have been extracted. This
message can be suppressed to the console by the XVTCGBL module.

System Action: None.

User Response: None.

Module: XVTCEXTR
A-80 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTC4002E XVTCEXTR: XVTCTRUE WAS NOT ENABLED

Explanation: While XVTCEXTR was running the TRUE XVTCTRUE was disabled. This should
never happen.

System Action: XVAB abend.


User Response: Determine the reason the TRUE was disabled. Restart Xpediter/Code
Coverage.

Module: XVTCEXTR

XVTC4003E XVTCEXTR: TRUE RETURN CODE NNNN AT+NNNN

Explanation: A non zero return code was returned from XVTCTRUE.


User Response: Contact Code Coverage Customer Support.

System Action: XVAB abend. XVTCEXTR will restart.

Module: XVTCEXTR

XVTC4004E XVTCEXTR: BAD XXXXXXX DATA BLOCK AT+NNNN

Explanation: A bad data block XXXXXXXX was returned from XVTCTRUE.


User Response: Contact Code Coverage Customer Support.

System Action: XVAB abend, XVTCEXTR will restart.

Module: XVTCEXTR

XVTC4005E XVTCEXTR: NO XVTCGBL MODULE


Explanation: The XVTCGBL module could not be loaded. This is an installation problem.

System Action: XVAB abend. XVTCEXTR will restart.


User Response: Correct the problem and restart.

Module: XVTCEXTR

XVTC4006E XVTCEXTR: ERROR ON SPOOL OPEN

Explanation: An error was returned from an EXEC CICS SPOOLOPEN. This is most likely an
installation error. Code Coverage can optionally submit the data reformatting and transfer
utility when data is extracted. This requires the CICS SIT option SPOOL=YES. If you do not
want Code Coverage to submit this utility, change the global option SUBMIT.

User Response: Add SPOOL=YES to the CICS DFHSIT.

System Action: XVAB abend. XVTCEXTR will restart.


Module: XVTCEXTR

XVTC4007E XVTCEXTR: ERROR NNNN OPENING XXXXXXXX


Explanation: A CICS error NNNN occurred opening file XXXXXXXX. This is probably an
installation error. The file may not be defined in the FCT or it may not have been created.

System Action: XVAB abend. XVTCEXTR will restart.

User Response: Correct the error.

Module: XVTCEXTR

XVTC4008E XVTCEXTR: ERROR ON FILE XXXXXXXX EIBFN aaaa RESP bbbbbbbb RESP2 ccccccc

Explanation: A VSAM error occurred writing to file XXXXXXXX.

System Action: XVAB abend. XVTCEXTR will restart.


User Response: Use the EIBFN, RESP, and RESP2 fields to determine the error. Correct the
error.

Module: XVTCEXTR

XVTC4009W XVTCEXTR: A SECOND XVTCEXTR WAS STARTED.

Explanation: Only one copy of XVTCEXTR should be running.


Code Coverage Messages A-81

System Action: The second copy is terminated with an XVKP abend.

User Response: Investigate the reason for the initiation of a second XVTCEXTR task.
Module: XVTCEXTR

XVTC4010E XVTCEXTR: ERROR NNNN OPENING XXXXXXXX

Explanation: A VSAM error NNNN occurred opening file XXXXXXXX. Program XVTCEXTR
failed attempting to open the file. This is most likely because the file has been opened by
another job. Program XVTCEXTR made 8 additional attempts, 1 every minute, before
canceling the extract.

System Action: XVAB abend. XVTCEXTR will restart.


User Response: Find out which job has the file open and close it. If the CICS CEMT queue
contains the message +DFHFC0966 XXXXXXXX Non-RLS OPEN of file XVTCEXTR failed.
Unable to position ESDS. Error codes: 8505,0000,0000., the space allocation for XVTCEXTR
needs to be increased.

Module: XVTCEXTR

XVTC4011I XVTCEXTR: SHOULD NOT RUN ON A TERMINAL.

Explanation: XVTCEXTR should not be run on a terminal.

System Action: XVTCEXTR will exit normally.


User Response: Do not run XVTCEXTR on a terminal.
Module: XVTCEXTR

XVTC4012E XVTCEXTR: NOSPACE ERROR ON XVTCEXTR.


Explanation: The file XVTCEXTR has run out of space. Either the reformatting and transfer
utility needs to run or experienced errors, or the file XVTCEXTR is too small.

System Action: XVAB abend. XVTCEXTR will restart.

User Response: Investigate and take appropriate action. Errors in the reformatting and
transfer utility (program XVTTAHRD) are a possible cause. If necessary, XVTTAHRD can be
executed with PARM=RESET to force a reset of the file XVTCEXTR. Sample JCL is supplied in
SMXDSAMP member JCLCHRD.

Module: XVTCEXTR

XVTC4013I XVTCEXTR: NOTICED CICS IS SHUTTING DOWN


Explanation: CICS is shutting down and XVTCEXTR has not been requested to shut down.
This is an installation error. The program DBUGPLTS needs to be added to the DFHPLTSD.

System Action: XVTCEXTR will shut down normally.

User Response: Add DBUGPLTS to the DFHPLTSD.


Module: XVTCEXTR

XVTC4014I XVTCEXTR: REQUESTED TO SHUT

Explanation: XVTCEXTR is shutting down normally.


System Action: XVTCEXTR will shut down normally.

User Response: None.

Module: XVTCEXTR

XVTC4015I XVTCEXTR: ERROR NNNN ON INQUIRE

Explanation: XVTCEXTR received a return code of NNNN on an EXEC CICS INQUIRE.

System Action: XVAB abend. XVTCEXTR will restart.

User Response: This is probably and installation problem. Investigate the reason for return
code (EIBRCODE) of NNNN.

Module: XVTCEXTR
A-82 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTC4016I XVTCEXTR: NOT AUTHORIZED FOR INQUIRE.

Explanation: The program XVTCEXTR is not authorized to issue an EXEC CICS INQUIRE.
System Action: XVAB abend. XVTCEXTR will restart.

User Response: Authorize the program and restart.


Module: XVTCEXTR

XVTC4017I NO CODE COVERAGE DATA TO EXTRACT

Explanation: A data extraction was requested but no Code Coverage data was found to
extract.

System Action: None.


User Response: None.

Module: XVTCEXTR

XVTC4018E RECORD LENGTH ON XVTCEXTR IS NOT 32760.

Explanation: The record length on the file XVTCEXTR is required to be 32760.


System Action: XVAB abend. XVTCEXTR will retry the open.

User Response: Redefine the file XVTCEXTR with a record length of 32760.

Module: XVTCEXTR

XVTC4019E ERROR ON SPOOL WRITE.


Explanation: An error was returned from an EXEC CICS SPOOLWRITE. This is most likely
caused by a JES exit or security system preventing CICS from writing to the JES input queue.
Code Coverage can optionally submit the Hardening Utility when data is extracted. If you do
not want Code Coverage to submit this utility, change the value of the SUBMIT global
parameter to NO.

User Response: Correct the problem and retry.

Module: XVTCEXTR

XVTC4020E ERROR ON SPOOL CLOSE


Explanation: An error was returned from an EXEC CICS SPOOLCLOSE. This is most likely
caused by a JES exit or security system preventing CICS from writing to the JES input queue.
Code Coverage can optionally submit the Hardening Utility when data is extracted. If you do
not want Code Coverage to submit this utility, change the value of the SUBMIT global
parameter to NO.

User Response: Correct the problem and retry.


Module: XVTCEXTR

XVTC5000I Xpediter/Code Coverage Global Table Override processing has begun.


Severity: Informational

Explanation: Written to console log to denote that the Global Table Override process has
begun.
User Response: None.

XVTC5001I Xpediter/Code Coverage Global Table Override processing has ended.

Severity: Informational
Explanation: Written to console log to denote that the Global Table Override process has
ended.

User Response: None.

XVTC5002E Bypassing Xpediter/Code Coverage overrides. Cannot load “XVTCGBL.”

Severity: Error

Explanation: Written to console log to denote that the Global Table Override process cannot
continue, as program “XVTCGBL” (the Global Table) could not be loaded.
Code Coverage Messages A-83

User Response: No Xpediter/Code Coverage Global Table Override processing will take place.
Refer to the output from the IVP (Installation Verification Program) to determine the reason.

XVTC5003E Bypassing Xpediter/Code Coverage overrides. Input DD dddddddd missing from JCL.
Severity: Error

Explanation: Written to console log to denote that the Global Table Override input dataset
DD could not be found in the CICS startup JCL. dddddddd indicates the name of the DD that
was to be used.

User Response: No Xpediter/Code Coverage Global Table Override processing will take place.
Verify that the DD was properly added to the CICS startup JCL.

XVTC5004E Bypassing Xpediter/Code Coverage overrides. Unable to open input DD dddddddd.


Severity: Error

Explanation: Written to console log to denote that the Global Table Override input dataset
could not be opened. dddddddd indicates the name of the DD that was used.

User Response: No Xpediter/CICS Global Table Override processing will take place. Verify
that the dataset the DD points to is correct. Check the console log for additional system
messages that may indicate the cause of the error.

XVTC5005E Bypassing Xpediter/Code Coverage overrides. Input DD dddddddd is “DD DUMMY.”


Severity: Error
Explanation: Written to console log to denote that the Global Table Override input dataset
was assigned as DD DUMMY. dddddddd indicates the name of the DD that was used.

User Response: No Xpediter/Code Coverage Global Table Override processing will take place.
Correct the CICS startup JCL to point to a valid input dataset.

XVTC5006E Bypassing Xpediter/Code Coverage overrides. Input DD dddddddd requires DSORG=PS.

Severity: Error
Explanation: Written to console log to denote that the Global Table Override input dataset
was not defined as sequential. dddddddd indicates the name of the DD that was used.

User Response: No Xpediter/Code Coverage Global Table Override processing will take place.
The input dataset must be a sequential dataset or a member in a PDS or PDSE. Correct your
CICS startup JCL.

XVTC5007E Bypassing Code Coverage overrides. I/O error reading Input DD dddddddd.

Severity: Error
Explanation: Written to console log to denote that an I/O error occurred while reading the
Global Table Override input dataset. dddddddd indicates the name of the DD that was used.

User Response: No Xpediter/Code Coverage Global Table Override processing will take place.
Verify that the dataset the DD points to is correct. Check to ensure that the dataset is
sequential dataset, or a member in a PDS or PDSE. Check the console log for any additional
messages.

XVTC5008E Dynamic Alloc of output DD dddddddd failed. RC=xxxxxxxx REAS=yyyyyyyy.

Severity: Error
Explanation: Written to console log to denote that the Global Table Override Report dataset
could not be dynamically allocated. dddddddd indicates the name of the DD that was used.
xxxxxxxx indicates the return code from dynamic allocation. yyyyyyyy indicates the reason
code from dynamic allocation.

User Response: Xpediter/CICS Global Table Override processing will continue, however no
printed report can be produced. Errors will continue to be written to the console. Ensure that
no DD exists in the CICS startup JCL for the ddname indicated in the message. Refer to the
IBM publication, MVS/ESA Application Development Guide - Authorized Assembler Language Programs,
document number GC28-1645 for an explanation of the return codes (RC=xxxxxxxx) and
reason codes (REAS=yyyyyyyy) that can be returned by dynamic allocation. If the ddname
specified conflicts with a current ddname in your CICS startup JCL, use one of the Report
Dataset override parameters discussed previously.
A-84 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTC5009E Unable to open output DD dddddddd.

Severity: Error
Explanation: Written to console log to denote that the Global Table Override Report dataset
could not be opened. dddddddd indicates the name of the DD that was used.

User Response: Xpediter/Code Coverage Global Table Override processing will continue,
however, no printed report can be produced. Errors will continue to be written to the console.
Ensure that no DD exists in the CICS startup JCL for the ddname indicated in the message.
Refer to the console log for messages that may assist in determine the cause of this failure.

XVTC5010E No report produced. Correct SYSOUT DD and then use XVSI transaction.
Severity: Error

Explanation: Written to console log to denote that the Global Table Override Report could
not be produced. This is a result of one of the above errors that occurred during the Global
Table Override Report dataset dynamic allocation/open process.

User Response: Xpediter/Code Coverage Global Table Override processing will continue,
however no printed report can be produced. Correct the errors related to the Global Table
Override Report dataset as soon as possible.

XVTC5011I See SYSOUT DD dddddddd for report.


Severity: Informational
Explanation: Written to console to denote that the Global Table Override Report ddname
that the output will be written to. dddddddd indicates the name of the DD that was used.

User Response: None. The Global Table Override Report will be written to the ddname noted.
You may review the report by selecting this ddname in the SDSF hold or output queue.

XVTC5012I No Xpediter/Code Coverage Global Overrides processed.

Severity: Informational
Explanation: Written to console and printed report to denote that no Global Table Overrides
were processed.

User Response: Ensure that the dataset pointed to by the Global Table Override input DD is
correct. If the dataset is empty, add appropriate overrides as necessary. If no overrides are
required, this dataset may be left empty. If the Global Table Overrides were bypassed due to a
I/O error on the input DD (message XVTC5007E), correct the I/O error and reprocess the
overrides.

XVTC5020E Unable to continue Xpediter/Code Coverage override processing. Too many ABENDs.

Severity: Error
Explanation: An unacceptable number of abends has occurred while performing the
Xpediter/Code Coverage Global Table Override process.
User Response: This message is written to the console and the printed report. Contact
Xpediter/Code Coverage Customer Support.

XVTC5021E Deallocation for output DD dddddddd failed. RC=xxxxxxxx REAS=yyyyyyyy.

Severity: Error
Explanation: Written to console log to denote that the Global Table Override Report dataset
could not be dynamically unallocated. dddddddd indicates the name of the DD that was used.
xxxxxxxx indicates the return code from dynamic unallocation. yyyyyyyy indicates the reason
code from dynamic unallocation.

User Response: Xpediter/Code Coverage Global Table Override processing is complete,


however, the printed report may not be available. Refer to the appropriate IBM publication
(MVS/ESA Application Development Guide - Authorized Assembler Language Programs, document
number GC28-1645, or equivalent) for an explanation of the return codes (RC=xxxxxxxx) and
reason codes (REAS=yyyyyyyy) that can be returned by dynamic unallocation. If the ddname
specified conflicts with a current ddname in your CICS startup JCL, use one of the Report
Dataset override parameters discussed previously.
Code Coverage Messages A-85

XVTC5060E Bypassing Xpediter/Code Coverage overrides. Wrong release of “XVTCGBL” loaded.

Severity: Error
Explanation: Written to console log to denote that the Global Table Override process cannot
continue, as the wrong release of program “XVTCGBL” (the global table) was detected.

User Response: No Xpediter/Code Coverage Global Table Override processing will take place.
Refer to the output from the IVP (Installation Verification Program) to determine the reason.

XVTC8001E Code Coverage requires a minimum operating system release of OS/390 2.5.0.

Explanation: Code Coverage utilizes functions found on OS/390 2.5.0 and will not properly
operate on prior release of OS/390.
System Action: The IOS initialization is terminated.

User Response: Upgrade your system to a current release of OS/390.

Module: XVTCIOS

XVTC8002E Code Coverage Dynamic Storage Handler initialization error

Explanation: Code Coverage dynamic storage handler management environment has failed
to initialize, R15 contains the return code from the dynamic storage handler and R0 contains
the corresponding reason code.

RC 4 Allocation failure for dynamic storage handler.


RSN 4 Insufficient storage is available.
RSN 8 Insufficient central storage to back the request.
RSN C System cannot page in the page table associated with the storage.
RC 8 Load failure for dynamic storage handler (DSHSRVS).
RC C Error establishing recovery environment (ESTAE|ETSAEX).
RC 10 Incorrect Address Space Control mode (not Primary).

System Action: The IOS initialization is terminated.


User Response:

Allocation failures: Increase the amount of storage available to the private area.
Load failures: Resolve errors related to DSHSRVS load.
Recovery errors: Contact Code Coverage Customer Support.
Addressing mode errors: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8003E Module module has an invalid Message Table Header


Explanation: The Code Coverage Message Table Module module has an invalid message table
signature.

System Action: The IOS initialization is terminated.

User Response: Validate the Message Table Module has been properly link edited.

Module: XVTCIOS

XVTC8004E Module module has an invalid Message Table Name name

Explanation: The Code Coverage Message Table Module module has an invalid message table
signature.

System Action: The IOS initialization is terminated.

User Response: Validate the Message Table Module has been properly link edited.

Module: XVTCIOS

XVTC8011E Procedure detected initialization parameter error


Explanation: The Code Coverage I/O Services procedure has detected an invalid parameter.
A-86 Xpediter/Code Coverage Mainframe User/Reference Guide

System Action: The IOS initialization is terminated.

User Response: Contact Code Coverage Customer Support.


Module: XVTCIOS

XVTC8012E Storage Obtain for Subtask Anchor Block length(length) failed RC(return code)

Explanation: Allocation of storage for the IOS subtask Anchor Block failed.

RC 4 Insufficient storage is available.


RC 8 Insufficient central storage to back the request.
RC C System cannot page in the page table associated with the storage.

System Action: The IOS initialization is terminated.

User Response: Increase the amount of storage available to the private area.
Module: XVTCIOS

XVTC8013E Storage Obtain for DCB Exit Storage Area length(length) failed RC(return code)

Explanation: Allocation of storage for the IOS subtask DCB Exit failed.

RC 4 Insufficient storage is available.


RC 8 Insufficient central storage to back the request.
RC C System cannot page in the page table associated with the storage.

User Response: Increase the amount of storage available to the private area.

Module: XVTCIOS

XVTC8014E Storage Obtain for IOB Storage Area length(length) failed RC(return code)
Explanation: Allocation of storage for the IOS subtask IOB failed.

RC 4 Insufficient storage is available.


RC 8 Insufficient central storage to back the request.
RC C System cannot page in the page table associated with the storage.

System Action: The IOS initialization is terminated.

User Response: Increase the amount of storage available to the private area.
Module: XVTCIOS

XVTC8015E Storage Obtain for Thread Storage Area length(length) failed RC(return code)
Explanation: Allocation of storage for the IOS subtask Thread failed.

RC 4 Insufficient storage is available.


RC 8 Insufficient central storage to back the request.
RC C System cannot page in the page table associated with the storage.

System Action: The IOS initialization is terminated.

User Response: Increase the amount of storage available to the private area.

Module: XVTCIOS

XVTC8016E Storage Obtain for Lock Storage Area length(length) failed RC(return code)
Explanation: Allocation of storage for the IOS subtask Lock failed.

RC 4 Insufficient storage is available.


RC 8 Insufficient central storage to back the request.
RC C System cannot page in the page table associated with the storage.

System Action: The IOS initialization is terminated.


Code Coverage Messages A-87

User Response: Increase the amount of storage available to the private area.

Module: XVTCIOS

XVTC8017E Storage Obtain for Request Storage Area length(length) failed RC(return code)
Explanation: Allocation of storage for the IOS subtask Request failed.

RC 4 Insufficient storage is available.


RC 8 Insufficient central storage to back the request.
RC C System cannot page in the page table associated with the storage.

System Action: The IOS initialization is terminated.

User Response: Increase the amount of storage available to the private area.

Module: XVTCIOS

XVTC8018E EVENTS create request for number entries failed Abend abend code
Explanation: Creation of the IOS Dispatcher ECB EVENTS table failed.

System Action: The IOS initialization is terminated.

User Response: Contact Code Coverage Customer Support.


Module: XVTCIOS

XVTC8019E EVENTS add request for control block address(address) failed Abend abend code
Explanation: Addition of the IOS Dispatcher control block ECB failed.

System Action: The IOS initialization is terminated.


User Response: Contact Code Coverage Customer Support.
Module: XVTCIOS

XVTC8020E IDENTIFY request for module address(address) failed RC(return code)


Explanation: The IOS Dispatcher IDENTIFY request for module failed.

RC 4 Entry name and address already exist.


Entry name duplicates the major name of a load module currently in virtual storage;
RC 8
entry address was not added.
RC C Entry address is not within an eligible load module; entry address was not added.
RC 10 Request issued by an asynchronous exit routine; entry address was not added.
Entry name duplicates the name already used for a minor entry or for an entry created
RC 14 by another IDENTIFY request, and the entry point addresses are different; the current
request is rejected.
An internal error occurred. Record the return code and contact the appropriate IBM
RC 18-1C
support personnel.
RC 24 An unexpected error occurred.
RC 28 The address specified by the EPLOC parameter was fetch protected.
An internal error occurred. Record the return code and contact the appropriate IBM
RC 2C
support personnel.
RC 30 Unsuccessful processing due to a system queue area (SQA) storage shortage.
RC 34 Unsuccessful processing due to a local system queue area (LSQA) storage shortage.
Unsuccessful processing due an error in the job pack area. Record the return code and
RC 38
contact the appropriate IBM support personnel.

System Action: The IOS initialization is terminated.


User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS
A-88 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTC8051E Storage Release for Request Storage Area address(address) length(length) failed
RC(return code)
Explanation: Deallocation of storage for the IOS subtask Request failed.

RC 4 Not all requested virtual storage was freed.


RC 8 No virtual storage was freed because part of the storage area to be freed is fixed.

System Action: The IOS subtask is terminated.

User Response: Contact Code Coverage Customer Support.


Module: XVTCIOS

XVTC8052E Storage Release for Lock Storage Area address(address) length(length) failed
RC(return code)

Explanation: Deallocation of storage for the IOS subtask Lock failed.

RC 4 Not all requested virtual storage was freed.


RC 8 No virtual storage was freed because part of the storage area to be freed is fixed.

System Action: The IOS subtask is terminated.


User Response: Contact Code Coverage Customer Support.
Module: XVTCIOS

XVTC8053E Storage Release for Thread Storage Area address(address) length(length) failed
RC(return code)

Explanation: Deallocation of storage for the IOS subtask Thread failed.

RC 4 Not all requested virtual storage was freed.


RC 8 No virtual storage was freed because part of the storage area to be freed is fixed.

System Action: The IOS subtask is terminated.


User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8054E Storage Release for IOB Storage Area address(address) length(length) failed RC(return
code)

Explanation: Deallocation of storage for the IOS subtask IOB failed.

RC 4 Not all requested virtual storage was freed.


RC 8 No virtual storage was freed because part of the storage area to be freed is fixed.

System Action: The IOS subtask is terminated.

User Response: Contact Code Coverage Customer Support.


Module: XVTCIOS

XVTC8055E Storage Release for DCB Exit Storage Area address(address) length(length) failed
RC(return code)

Explanation: Deallocation of storage for the IOS subtask DCB Exit failed.

RC 4 Not all requested virtual storage was freed.


RC 8 No virtual storage was freed because part of the storage area to be freed is fixed.

System Action: The IOS subtask is terminated.

User Response: Contact Code Coverage Customer Support.


Module: XVTCIOS
Code Coverage Messages A-89

XVTC8056E EVENTS delete request for address(address) failed Abend abend code

Explanation: Deletion of the IOS Dispatcher ECB failed.


System Action: The IOS subtask is terminated.

User Response: Contact Code Coverage Customer Support.


Module: XVTCIOS

XVTC8098E Abend abend code occurred in Procedure (Function)

Explanation: An abend has been trapped in Procedure during the processing of MVS Function.

System Action: The IOS subtask is terminated.

User Response: Contact Code Coverage Customer Support.


Module: XVTCIOS

XVTC8099E Abend abend code occurred in Procedure offset offset

Explanation: An abend has been trapped in Procedure at offset.

System Action: The IOS subtask is terminated.


User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8101E EVENTS wait request for address(address) failed Abend abend code

Explanation: An abend has been trapped in the IOS Dispatcher during the processing of an
MVS EVENTS request.

System Action: The IOS subtask is terminated.

User Response: Contact Code Coverage Customer Support.


Module: XVTCIOS

XVTC8102E EVENTS wait request for address(address) last(address) failed Abend abend code

Explanation: An abend has been trapped in the IOS Dispatcher during the processing of an
MVS EVENTS request.

System Action: The IOS subtask is terminated.


User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8103W Error processing EVENTS table entry address(address) ECB(address)


Explanation: The IOS Dispatcher has detected an error while processing an EVENTS table
entry ECB.
System Action: The IOS subtask is terminated.
User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8104W Invalid EVENTS table entry address(address) ECB(address) control block id identifier
(X’hexadecimal value’)

Explanation: The IOS Dispatcher has detected an invalid EVENTS table entry ECB for control
block identifier.
System Action: The IOS subtask is terminated.

User Response: Contact Code Coverage Customer Support.


Module: XVTCIOS

XVTC8105E Ready queue damaged at Thread address(address) previous(address)

Explanation: The IOS Dispatcher has detected a damaged Thread entry.


System Action: The IOS subtask is terminated.
A-90 Xpediter/Code Coverage Mainframe User/Reference Guide

User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8151E Invalid Lock Resource Code(code) for function request for Thread(address)
Explanation: The IOS Lock Manager has detected an invalid Lock Resource code during the
processing of function request.

System Action: The IOS subtask is terminated.

User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8152E Function request for Resource Code(code) rejected for Thread(address), lock already
held Status(value)
Explanation: The IOS Lock Manager has rejected a function request for resource code because
the resource was already held.

System Action: The IOS subtask is terminated.

User Response: Contact Code Coverage Customer Support.


Module: XVTCIOS

XVTC8153E Function request for Resource Code(code) rejected for Thread(address), lock not held
Status(value)
Explanation: The IOS Lock Manager has rejected a function request for resource code because
the resource was not held.

System Action: The IOS subtask is terminated.


User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8154E Function request for Resource Code(code) failed for Thread(address), internal logic
error
Explanation: The IOS Lock Manager has rejected a function request for resource code because
of an internal logic error.

System Action: The IOS subtask is terminated.


User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8155E Function request for Resource Code(code) failed for Thread(address), Lock Queue
address(address) damaged

Explanation: The IOS Lock Manager function request for resource code failed because the Lock
Queue has been damaged.

System Action: The IOS subtask is terminated.

User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8156E Function request for Resource Code(code) failed for Thread(address), Lock Stack
address(address) damaged

Explanation: The IOS Lock Manager function request for resource code failed because the Lock
Stack has been damaged.

System Action: The IOS subtask is terminated.

User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8157E EVENTS add request for Lock address(address) failed Abend abend code

Explanation: Addition of the IOS Lock Manager Dispatcher Lock ECB failed.
Code Coverage Messages A-91

System Action: The IOS subtask is terminated.

User Response: Contact Code Coverage Customer Support.


Module: XVTCIOS

XVTC8198E Abend abend code occurred in Procedure (function)

Explanation: An abend has been trapped in Procedure during the processing of MVS Function.

System Action: The IOS subtask is terminated.

User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8199E Abend abend code occurred in Procedure offset offset

Explanation: An abend has been trapped in Procedure at offset.


System Action: The IOS subtask is terminated.

User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8201E Code Coverage Thread Subtask attach environment invalid


Explanation: Code Coverage Task Manager environment is invalid.
System Action: The IOS Thread initialization is terminated.

User Response: Contact Code Coverage Customer Support.


Module: XVTCIOS

XVTC8202E Code Coverage Dynamic Storage Handler initialization error


Explanation: Code Coverage dynamic storage handler management environment has failed
to initialize, R15 contains the return code from the dynamic storage handler, and R0 contains
the corresponding reason code.

RC 4 Allocation failure for dynamic storage handler.


RSN 4 Insufficient storage is available.
RSN 8 Insufficient central storage to back the request.
RSN C System cannot page in the page table associated with the storage.
RC 8 Load failure for dynamic storage handler (DSHSRVS).
RC C Error establishing recovery environment (ESTAE|ETSAEX).
RC 10 Incorrect Address Space Control mode (not Primary).

System Action: The IOS Thread initialization is terminated.

User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8203E EVENTS create request for number entries failed Abend abend code

Explanation: Creation of the IOS Task Manager ECB EVENTS table failed.
System Action: The IOS subtask is terminated.

User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8204E EVENTS add request for Thread address(address) failed Abend abend code
Explanation: Addition of the IOS Task Manager Thread ECB failed.

System Action: The IOS subtask is terminated.

User Response: Contact Code Coverage Customer Support.


Module: XVTCIOS
A-92 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTC8298E Abend abend code occurred in Procedure (function)

Explanation: An abend has been trapped in Procedure during the processing of MVS Function.
System Action: The IOS subtask is terminated.

User Response: Contact Code Coverage Customer Support.


Module: XVTCIOS

XVTC8299E Abend abend code occurred in Procedure offset offset

Explanation: An abend has been trapped in Procedure at offset.

System Action: The IOS subtask is terminated.

User Response: Contact Code Coverage Customer Support.


Module: XVTCIOS

XVTC8301E Invalid processing mode mode value for DD name

Explanation: IOS Open has detected an invalid processing mode for the Program Inventory
open request.

System Action: The Program Inventory dataset is not opened.

User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8302E DD statement DD name not found in TIOT


Explanation: IOS Open was unable to locate a TIOT entry for the Program Inventory DD
statement.

System Action: The Program Inventory dataset is not opened.


User Response: Add the Program Inventory DD statement.

Module: XVTCIOS

XVTC8303E Invalid DD statement type type (X’hexadecimal value’) for DD name

Explanation: IOS Open has detected a non-DASD type for the Program Inventory DD
statement.

System Action: The Program Inventory dataset is not opened.

User Response: Correct the Program Inventory DD statement.


Module: XVTCIOS

XVTC8304E Dataset concatenation not supported for DD name

Explanation: IOS Open has detected dataset concatenation for the Program Inventory DD
statement which is not supported.

System Action: The Program Inventory dataset is not opened.

User Response: Correct the Program Inventory DD statement.


Module: XVTCIOS

XVTC8305E Invalid device type for UCB name(UCB) class(type code) for DD name

Explanation: IOS Open has detected an invalid UCB type code (NON-DASD) for the Program
Inventory DD statement.
System Action: The Program Inventory dataset is not opened.

User Response: Correct the Program Inventory DD statement.


Module: XVTCIOS

XVTC8306E Incorrect volume count JFCBNVOL(count)/JFCBVLCT(count) for DD name

Explanation: IOS Open has detected that the Program Inventory dataset is allocated on
multiple DASD volumes which is not supported.
Code Coverage Messages A-93

System Action: The Program Inventory dataset is not opened.

User Response: Correct the Program Inventory DD statement.


Module: XVTCIOS

XVTC8307E Incorrect disposition for DD name, should be NEW|OLD|SHR

Explanation: IOS Open has detected an incorrect dataset disposition for the Program
Inventory dataset.

System Action: The Program Inventory dataset is not opened.

User Response: Correct the Program Inventory DD statement.

Module: XVTCIOS

XVTC8308E Incorrect organization for DD name, should be PS|PSU


Explanation: IOS Open has detected an incorrect dataset organization for the Program
Inventory dataset.

System Action: The Program Inventory dataset is not opened.

User Response: Correct the Program Inventory DD statement.


Module: XVTCIOS

XVTC8309E Incorrect record format for DD name, should be FS|FBS

Explanation: IOS Open has detected an incorrect dataset record format for the Program
Inventory dataset.

System Action: The Program Inventory dataset is not opened.

User Response: Correct the Program Inventory DD statement.


Module: XVTCIOS

XVTC8310E Incorrect lrecl and blksize combination for DD name

Explanation: IOS Open has detected an incorrect combination of Logical Record Length and
Block Size for the Program Inventory dataset.

System Action: The Program Inventory dataset is not opened.


User Response: Correct the Program Inventory DD statement.

Module: XVTCIOS

XVTC8311E Incorrect key length length for DD name, should be 0


Explanation: IOS Open has detected an incorrect key length (non-zero) for the Program
Inventory dataset.
System Action: The Program Inventory dataset is not opened.
User Response: Correct the Program Inventory DD statement.

Module: XVTCIOS

XVTC8312E Data Set DD name is unavailable for Processing mode


Explanation: IOS Open has detected that the Program Inventory dataset is unavailable for
the request processing mode.

System Action: The Program Inventory dataset is not opened.

User Response: Reattempt the request after the Program Inventory dataset has been released.

Module: XVTCIOS

XVTC8313I DSN=dsname,UNIT=unit,VOLSER=volser, DISP=disp


Explanation: Program Inventory informational message.

System Action: None.


User Response: None.
A-94 Xpediter/Code Coverage Mainframe User/Reference Guide

Module: XVTCIOS

XVTC8314I DCB=(DSORG=dsorg,RECFM=recfm,LRECL=lrecl, BLKSIZE=blksize,KEYLEN=keylen)

Explanation: Program Inventory informational message.


System Action: None.

User Response: None.

Module: XVTCIOS

XVTC8315E SWA Manager request for DD name failed RC(return code)

Explanation: IOS Open has received a non-zero return code from SWA Manager during
Program Inventory dataset open processing.

RC 8 The SVA in the SWA prefix was not valid.


RC 24 The SVA does not conform to any virtual address.
RC 28 The pointer to the EAPL was not valid.

System Action: The Program Inventory dataset is not opened.

User Response: Contact Code Coverage Customer Support.


Module: XVTCIOS

XVTC8316E OBTAIN request for DD name failed RC(return code)


Explanation: IOS Open has received a non-zero return code from OBTAIN service during
Program Inventory dataset open processing.

RC 4 The required volume was not mounted.


RC 8 The format-1 DSCB was not found in the VTOC of the specified volume.
A permanent I/O error was encountered, or an invalid format-1 DSCB was found when
RC 12 processing the specified volume, or an unexpected error return code was received from
CVAF (common VTOC access facility).
RC 16 Invalid work area pointer.

System Action: The Program Inventory dataset is not opened.

User Response:

Volume not mounted: Contact Code Coverage Customer Support.


Format-1 DSCB not found: Contact Code Coverage Customer Support.
Permanent I/O error: Recovery VTOC or rebuild Program Inventory
Invalid work area pointer: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8317E ENQ for DD name QNAME(qname) RNAME(rname) failed RC(return code)

Explanation: IOS Open has received a non-zero return code from the ENQ service during
Program Inventory dataset open processing. RC 8 A previous request for control of the same
resource has been made for the same task. The task has control of the resource.

A previous request for control of the same resource has been made for the same task. The
RC 8
task has control of the resource.
A previous request for control of the same resource has been made for the same task. The
RC 14
task does not have control of the resource.
Environmental error. The limit for the number of concurrent resource requests has been
RC 18 reached. The task does not have control of the resource unless some previous ENQ or
RESERVE request caused the task to obtain control of the resource.

System Action: The Program Inventory dataset is not opened.


User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS
Code Coverage Messages A-95

XVTC8318E TRKCALC Function(TRKCAP) for DD name Blksize(blksize) Keylen(keylen) failed


RC(return code)
Explanation: IOS Open has received a non-zero return code from the TRKCALC service
during Program Inventory dataset open processing.

RC 4 Indicates that the record did not fit.


RC 8 Indicates that the record did not fit.
The system could not find an entry in the device characteristics table whose attributes
RC C
match those of the user-specified device type.

System Action: The Program Inventory dataset is not opened.


User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8319E Storage Obtain for DD name control block length(length) failed RC(return code)

Explanation: IOS Open has received a non-zero return code from the Storage Obtain service
during Program Inventory dataset open processing for the specified control block.

RC 4 Insufficient storage is available.


RC 8 Insufficient central storage to back the request.
RC C System cannot page in the page table associated with the storage.

System Action: The Program Inventory dataset is not opened.


User Response: Increase the amount of storage available to the private area.

Module: XVTCIOS

XVTC8320E Open for DD name failed RC(return code) DCBOFLGS(hexadecimal value)


Explanation: IOS Open has detected that the open request for the Program Inventory dataset
was unsuccessful.

RC 4 All datasets were opened successfully, but one or more warning messages were issued.
At least one dataset (VSAM or non-VSAM) was not opened successfully, and the access
method control block was restored to the contents it had before OPEN was issued.
RC 8
Alternatively, if the dataset was already open, the access method control block remains
open and usable and is not changed.
A non-VSAM dataset was not opened successfully when a non-VSAM and a VSAM dataset
were being opened at the same time. The non-VSAM data control block was not restored
RC C
to the contents it had before OPEN was issued (and the dataset cannot be opened
without restoring the control block).

System Action: The Program Inventory dataset is not opened.


User Response: Examine the JES Job Log for messages related to the Program Inventory DD
statement and correct the error condition.

Module: XVTCIOS

XVTC8321E TTR conversion for DD name DS1LSTAR(ttr) failed RC(return code)

Explanation: IOS Open has received a non-zero return code from TTR conversion service
(IECPCNVT) during Program Inventory dataset open processing.

The relative block address converts to an actual track address outside the extents defined
RC 4
in the DEB.

System Action: The Program Inventory dataset is not opened.

User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8322E Program Inventory dataset format error for DD name

Explanation: IOS Open has detected a format error for the Program Inventory dataset.
A-96 Xpediter/Code Coverage Mainframe User/Reference Guide

System Action: The Program Inventory dataset is not opened.

User Response: Verify the correct dataset name has been specified for the Program Inventory
DD statement and that the Program Inventory dataset has been successfully formatted.

Module: XVTCIOS

XVTC8323E Unsupported Program Inventory data set format version version for DD name

Explanation: IOS Open has determined that the Program Inventory dataset is not a
supported format.

System Action: The Program Inventory dataset is not opened.

User Response: Verify that the Program Inventory dataset has been upgraded to the current
IOS release.

Module: XVTCIOS

XVTC8324E Close for DD name failed RC(return code)

Explanation: IOS Open has received a non-zero return code from Close during error recovery
for Program Inventory dataset open processing.

RC 4 At least one dataset (VSAM or non-VSAM) was not closed successfully.

System Action: The Program Inventory dataset will be unavailable.


User Response: Correct errors related to previous messages and terminated Code Coverage
support.

Module: XVTCIOS

XVTC8325E Storage Release for DD name control block address(address) length(length) failed
RC(return code)

Explanation: IOS Open has received a non-zero return code from Storage Release for the
specified control block during error recovery for Program Inventory dataset open processing.

RC 4 Not all requested virtual storage was freed.


RC 8 No virtual storage was freed because part of the storage area to be freed is fixed.

System Action: The Program Inventory dataset is not opened.


User Response: Contact Code Coverage Customer Support.
Module: XVTCIOS

XVTC8326E DEQ for DD name QNAME(qname) RNAME(rname) failed Abend(abend code)


Explanation: IOS Open has trapped an abend from DEQ service during error recovery for
Program Inventory dataset open processing.
System Action: The Program Inventory dataset is unavailable.

User Response: Correct errors related to previous messages and terminated Code Coverage
support.

Module: XVTCIOS

XVTC8327E DSNTYPE of EXTENDED not supported for DD name, DSNTYPE should be BASIC
Explanation: IOS Open has detected an unsupported DSNTYPE of “EXTENDED” for the
Program Inventory dataset.
System Action: The Program Inventory dataset is not opened.
User Response: Ensure the Program Inventory file is allocated with a DSNTYPE of “BASIC”.

Module: XVTCIOS

XVTC8331W Data set unavailable status(hexadecimal value) for DCB address(address)

Explanation: IOS has determined the Program Inventory dataset is not available.
System Action: IOS processing has been suppressed.
Code Coverage Messages A-97

User Response: Retry IOS request. If the unavailable condition request persists, Contact Code
Coverage Customer Support.
Module: XVTCIOS

XVTC8332E Invalid control block id id (X’hexadecimal value’) for DCB address(address)

Explanation: IOS has determined the Program Inventory dataset DCB has an invalid control
block identifier.

System Action: IOS processing has been suppressed.

User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8333E Incorrect processing mode mode (X’hexadecimal value’) for DCB address(address)
Explanation: IOS has determined the Program Inventory dataset DCB has an invalid
processing mode.

System Action: IOS processing has been suppressed.

User Response: Contact Code Coverage Customer Support.


Module: XVTCIOS

XVTC8334E Invalid use count count for DCB address(address)

Explanation: IOS has determined the Program Inventory dataset DCB has an invalid use
count.

System Action: IOS processing has been suppressed.

User Response: Contact Code Coverage Customer Support.


Module: XVTCIOS

XVTC8335E DEBCHK for DCB address(address) failed RC(return code)

Explanation: IOS has received a non-zero return code from the DEBCHK service for the
Program Inventory dataset DCB.

Either a) the DEB table associated with the job step does not exist; or b) the DEBTBLOF
RC 4 field of the DEB was set to zero or a negative number, or was larger than the DEB table;
or c) register 1 did not contain the same address as the DEB table entry.
RC 8 An invalid TYPE was specified.
RC C Your program was not authorized and TYPE was not VERIFY.
DEBDCBAD did not contain the address of the DCB (or ACB) that was passed to the
RC 10
DEBCHK routine.
RC 14 The AM value does not equal the value in the DEBAMTYP field.
RC 18 The DEB is not on the DEB chain and TYPE=ADD was specified.
RC 1C TYPE=ADD was specified for a DEB that was already entered in the DEB table.
RC 20 The DEB table exceeded the maximum size and TYPE=ADD.

System Action: IOS processing has been suppressed.

User Response: Contact Code Coverage Customer Support.


Module: XVTCIOS

XVTC8341E TRKCALC Function(TRKBAL) for DCB address(address) Record(record) Keylen(keylen)


Blksize(blksize) failed RC(return code)

Explanation: IOS Close processing has received a non-zero return code from TRKCALC
service during Program Inventory dataset close processing.

System Action: The Program Inventory dataset is unavailable.


User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS
A-98 Xpediter/Code Coverage Mainframe User/Reference Guide

XVTC8342E Close for DCB address(address) failed RC(return code)

Explanation: IOS Close processing has received a non-zero return code from Close service
during Program Inventory dataset close processing.

RC 4 At least one dataset (VSAM or non-VSAM) was not closed successfully.

System Action: The Program Inventory dataset is unavailable.


User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8343W Storage Release for DD name address(address) length(length) failed RC(return code)
Explanation: IOS Close has received a non-zero return code from Storage Release for the
specified control block during Program Inventory dataset close processing.

RC 4 Not all requested virtual storage was freed.


RC 8 No virtual storage was freed because part of the storage area to be freed is fixed.

System Action: The Program Inventory dataset is unavailable.


User Response: Contact Code Coverage Customer Support.
Module: XVTCIOS

XVTC8344E DEQ for DCB address(address) QNAME(qname) RNAME(rname) failed Abend(abend


code)

Explanation: IOS Close has trapped an abend from DEQ service during Program Inventory
dataset close processing.

System Action: The Program Inventory dataset is unavailable.

User Response: Correct Program Inventory dataset.


Module: XVTCIOS

XVTC8351E Function for DCB address(address) failed RC(return code) CSW(channel status word)
SIOCC(IO command code) SENSE(IO sense code)
Explanation: IOS EXCP has received a non-zero return code from EXCP service during
Program Inventory dataset I/O processing.

System Action: The I/O request has been suppressed.


User Response: Contact Code Coverage Customer Support.
Module: XVTCIOS

XVTC8398E Abend abend code occurred in Procedure (function)

Explanation: An abend has been trapped in Procedure during the processing of MVS Function.

System Action: The I/O request has been suppressed.

User Response: Contact Code Coverage Customer Support.


Module: XVTCIOS

XVTC8399E Abend abend code occurred in Procedure offset offset

Explanation: An abend has been trapped in Procedure at offset.


System Action: The I/O request has been suppressed.

User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8401E Storage Obtain for control block length(length) failed RC(return code)
Explanation: IOS Format has received a non-zero return code from the Storage Obtain
service during Program Inventory dataset format processing for the specified control block.

RC 4 Insufficient storage is available.


Code Coverage Messages A-99

RC 8 Insufficient central storage to back the request.


RC C System cannot page in the page table associated with the storage.

System Action: The Program Inventory dataset format has been suppressed.

User Response: Increase the amount of storage available to the private area.
Module: XVTCIOS

XVTC8402E EOV failed to allocate required number of extents

Explanation: IOS Format has been unable to allocate the required number of extents for the
Program Inventory dataset during format processing.

System Action: The Program Inventory dataset format has been suppressed.
User Response: Change the dataset space allocation for the Program Inventory DD dataset.

Module: XVTCIOS

XVTC8403E ENQ for DCB address(address) QNAME(qname) RNAME(rname) failed RC(return code)

Explanation: IOS Resource Serialization has trapped an abend from ENQ during Program
Inventory dataset ENQ processing.
System Action: The IOS request has been suppressed.
User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8404E DEQ for DCB address(address) QNAME(qname) RNAME(rname) failed Abend(abend


code)

Explanation: IOS Resource Serialization has trapped an abend from DEQ during Program
Inventory dataset DEQ processing.
System Action: The IOS request has been suppressed.
User Response: Contact Code Coverage Customer Support.
Module: XVTCIOS

XVTC8498E Abend abend code occurred in Procedure (function)


Explanation: An abend has been trapped in Procedure during the processing of MVS Function.

System Action: The IOS request has been suppressed.


User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC8499E Abend abend code occurred in Procedure offset offset

Explanation: An abend has been trapped in Procedure at offset.

System Action: The IOS request has been suppressed.


User Response: Contact Code Coverage Customer Support.

Module: XVTCIOS

XVTC9999S EXTRACT INITIATION FAILED.

Explanation: An attempt to initiate an extract of Code Coverage data failed.


System Action: Code Coverage data will not be extracted.

User Response: A common cause for this failure is that write access to file XVTCEXTR is not
permitted. Ensure that Code Coverage users have write access to XVTCEXTR. Otherwise,
obtain a dump and contact Code Coverage Customer Support.
A-100 Xpediter/Code Coverage Mainframe User/Reference Guide

Module: XVTCP1

Abends
XVAB

Explanation: A previous message was issued. The message number is also in register 2 in the
dump.

User Response: Follow the user response in the accompanying message.

XVCM

Explanation: An internal error has occurred.

User Response: Contact Code Coverage Customer Support.

Activity Log Messages


Messages will be generated for CICS Code Coverage and CICS System Flow collection and
termination. These messages will be written to the transient data queue (LOGQ) defined in the
Code Coverage global table XVTCGBLM. The messages will have the format:

XVTC3nnns date time applid userid action System Name= name TESTID=testid.

Example 1 (126 bytes):

XVTC3001I 03 Nov 2003 10:24:42 H01AC093 PFHKJR01 Code Coverage started for
System Name=xxxxxxxxxxxxxxx Testid=yyyyyyyyyyyyyyy.

Example 2 (125 bytes):

XVTC3002I 03 Nov 2003 10:24:42 H01AC093 PFHKJR01 Code Coverage halted for
System Name=xxxxxxxxxxxxxxx Testid=yyyyyyyyyyyyyyy.

Commands for which Activity Messages are Generated


Messages would be generated for each of the following commands:

SC (Start Coverage)

XVTC3001I 03 Nov 2003 10:24:42 H01AC093 PFHKJR01 Code Coverage started for
System Name=xxxxxxxxxxxxxxx Testid=yyyyyyyyyyyyyyy.

SF (Start System Flow)

XVTC3003I 03 Nov 2003 10:24:42 H01AC093 PFHKJR01 System Flow started for
System Name=xxxxxxxxxxxxxxx Testid=yyyyyyyyyyyyyyy.

SB (Start Both, Code Coverage and System Flow)

XVTC3001I 03 Nov 2003 10:24:42 H01AC093 PFHKJR01 Code Coverage started for
System Name=xxxxxxxxxxxxxxx Testid=yyyyyyyyyyyyyyy.

XVTC3003I 03 Nov 2003 10:24:42 H01AC093 PFHKJR01 System Flow started for
System Name=xxxxxxxxxxxxxxx Testid=yyyyyyyyyyyyyyy.

H (Halt, Code Coverage or System Flow or both)

XVTC3002I 03 Nov 2003 10:24:42 H01AC093 PFHKJR01 Code Coverage halted for
System Name=xxxxxxxxxxxxxxx Testid=yyyyyyyyyyyyyyy.
Code Coverage Messages A-101

XVTC3004I 03 Nov 2003 10:24:42 H01AC093 PFHKJR01 System Flow halted for
System Name=xxxxxxxxxxxxxxx Testid=yyyyyyyyyyyyyyy.

E, ES (Extract, Extract System, Extract all)

XVTC4001I 05 FEB 2004 08:52:42 H01AC093 PFHKJR01 DATA EXTRACT COMPLETE for
System Name=xxxxxxxxxxxxxxx,Testid=yyyyyyyyyyyyyyy.
A-102 Xpediter/Code Coverage Mainframe User/Reference Guide
G-1

Glossary moved and is still available. The default DDIO


dataset name is contained in the Results Reposi-
tory. The DDIO Override screen can be accessed
from the DEFAULTS menu.
branch coverage. A method for tracking the
number of paths which were taken during execu- Function Modification ID (FMID). An FMID
tion of a conditional statement. For Code Cover- identifies the function of a product when the
age, this method designates a specific type of product is modified.
statistic. Branch coverage is supported only for
COBOL and must be implemented in order to indi- Installation JCL Customization Facility. A Code
cate whether the next verb in succession is Coverage facility consisting of a set of screens that
intended for execution. The collection of branch prompt you to enter installation information. This
coverage statistics is optional during a Code Cov- information is used to build the jobs necessary to
erage session. perform the Code Coverage SMP/E installation.
Qualifying condition statement types for branch filtering. The process of determining what per-
coverage include IF, ON n, and WHEN. In terms of centage of certain statements are used within a
reliability, branch coverage is considered the most program. While using a filter, the user can identify
thorough method required for the testing of spe- (for example) that 75% of the lines modified were
cialized application programs. not executed. Code Coverage reporting allows two
types of filters.
breakpoint. Xpediter/TSO and Xpediter/CICS
method of pausing program execution during merging. The process of combining coverage data
debugging. Setting a breakpoint in a program halts from multiple program runs. This occurs automat-
execution of the program when a statement is ically when multiple Code Coverage repositories
about to be executed. Breakpoints may be set as are opened (when running or generating reports).
conditional or unconditional and to occur either The user may decide to use the Merge Utility of
before or after the event. Code Coverage to merge one or more repository
records/files. Only results for programs with the
At a breakpoint, the user may view all the tables
same compile date and compile time can be
and areas necessary to solve a problem. After inter-
merged. In addition, when the user specifies
rogating the problem, the user may continue nor-
which repositories to combine, the user can
mal execution of the system.
choose to “merge” debug and non-debug runs of
Consolidated Software Inventory (CSI). A the same program.
VSAM cluster or series of clusters that control all
shared directory. A variable-length record VSAM
SMP/E product installation and maintenance
RRDS that maintains information about language
information. The Code Coverage CSI contains
processing along with the attached database activ-
three SMP/E zones.
ity.
Compuware Shared Services (CSS). A set of
source listing. A compiled listing and other
components used by several Compuware products
information about a file stored in a source listing
to provide storage, retrieval, and maintenance for
file.
source listings and abend reports.
source listing file. A file containing source list-
DDIO. A Compuware file access method.
ings and accessed by DDIO. This term is more
DDIO file. A generic name for an Abend-AID or generic than a DDIO file because the source listing
CICS Abend-AID/FX report file, or an Xpe- file may be a DDIO file, a Shared database, or a
diter/TSO or Xpediter/CICS source listing file. shared directory.

DDIO file member. A generic name for an abend System Flow. A feature which allows the user to
report in an Abend-AID or CICS Abend-AID/FX capture linkage information between programs
report file, or an Xpediter/TSO or Xpediter/CICS during an Xpediter/CICS, Xpediter/TSO, or Xpe-
source listing in a source listing file. diter/IMS test, storing the information in a Code
Coverage repository. This data can be analyzed
DDIO Override. This provides the user an ability using Xpediter/Code Coverage to report on trans-
to override the DDIO dataset name to be used at action (Xpediter/CICS) and program invocations
reporting time, just in case the source has been that occurred during the test session.
G-2 Xpediter/Code Coverage Mainframe User/Reference Guide

System Modification Program Extended


(SMP/E). A patented and trademarked method for
installing software products in an MVS environ-
ment.

system name. Allows the user to group different


Code Coverage results together. The name chosen
can be from one to fifteen characters in length.
The resultant advantage to the user is a logically
assigned grouping of shared programs which can
be reported on separately.

Test Data Optimization (TDO). Test Data Opti-


mization is the process which may be useful in
paring down large input files in order to achieve a
comparable degree of verb coverage. Under Xpe-
diter/TSO or Xpediter/IMS, information is col-
lected for supported file types that can indicate
which input records were active when each state-
ment was first executed.

verb coverage. Verb coverage designates a spe-


cific type of Code Coverage statistic. Verb coverage
serves as an indicator to define the execution sta-
tus of each unique verb. Verb coverage can be
achieved when Xpediter sets unique, or “special”
Code Coverage breakpoints on all statements.

VSAM RRDS. Virtual Storage Access Method Rela-


tive Record Data Set.

unconditional breakpoint. For a statement set


with an unconditional breakpoint, Xpediter/TSO
receives control and temporarily halts execution
of the program before or after this statement.
I-1

Index E
EDIT command, 7-5
A END command, 7-5
example, 1-1
EXEC PGM field, 7-6
Acrobat PDF online documentation, xi Export Utility screen, 5-13
ALLOC command, 8-4
annotated listing, 3-7
ATTACH command, 7-9 F

B File List/JCL Member field, 8-6


FORMAT command, 13-4
FrontLine, xi
Branch and Frequency data, 7-9, 8-9
Branch Coverage, 7-8, 8-8
BTSIN command, 8-4 G
C GENERATE command, 13-7
generating reports, 3-1
Global Filter File, 2-4–2-6, 2-9–2-13
CICS abend codes, A-100
CICS Code Coverage transactions, 10-5
XVCC, 10-5 H
XVCI, 10-23
XVIC, 10-5
CICS messages, A-21 HTML documentation, xi
CICS Populater, 12-1
Code Coverage breakpoints, 7-8
Code Coverage Capture, 8-2 I
Code Coverage Collection Process, 7-8, 8-8
Code Coverage Data Collection, 7-3
Code Coverage Data, Collecting, 8-2 ICALL command, 7-5
Code Coverage Repository, 7-2, 7-6 Import Utility screen, 5-15
Code Coverage support, 7-1 IMS Code Coverage Support, 8-1
Code Coverage System Name, 7-6, 8-2 IMS User ID Support, 8-6
Code Coverage test, 7-6 IMS User ID/Data Value Intercept Support, 8-5–8-6
Code Coverage Test?, 8-6 IMS USERID field, 8-6
COLLECT command, 13-5 IMS/MPP test screen, 8-3
Compuware FrontLine customer support website, xi INITSCR field, 7-6, 8-5
Confirm Delete screen, 5-13 intended audience, ix
CONNECT command, 7-9 INter command, 8-4
Connect Status screen, 7-5 Interactive Code Coverage, 7-4
Connection Security Check, 7-9 Interactive Code Coverage with Test Data Optimize,
COPY command, 13-5 7-4
CREATE command, 8-2 introduction, ix
CTLBRCOV, 7-9 Customer Support, xi
Customer Support, xi

J
D
JCL, editing, 7-10
DATA field, 8-5 Job Information screen, 2-2
Dataset field, 7-5
defaults, 2-1
DEFAULTS menu, 2-1 L
DELETE command, 13-6
DIR command, 13-7
List/Delete Utility screen, 5-4
I-2 Xpediter/Code Coverage Mainframe User/Reference Guide

M S
MAX field, 8-5 scenario, 1-1
Merge Utility screen, 5-16 SEtup command, 7-5, 8-4
messages, A-1–A-100 Source Listing Override screen, 2-3
CICS, A-21 START field, 8-5
TSO/ISPF, A-1 STATUS command, 7-5, 7-9
STEPNAME field, 7-6
SUBMIT command, 7-5
N syntax
conventions, x
diagrams, x
NBA field, 8-6 System field, 8-7
notation rules, x System Name, 8-2
System Selection screen, 5-7
system-level report, 3-6
O
T
OBA field, 8-6
optimized programs, 6-1
overview, 1-1 Test Definition Update screen, 10-8
Test Unattended?, 8-6
TRANCODE field, 8-5
P TSO/ISPF messages, A-1

PARM Passing Option field, 8-6 U


PDF documentation, xi
Populater, 12-1
POSTSCR field, 8-5 UCALL command, 7-5
Primary Menu, 1-2 Unattended Code Coverage, 7-4
Process JCL screen, 7-5 Unattended Code Coverage with Test Data Optimize,
PROCNAME field, 7-6 7-4
PROCSTEP field, 7-6 usage, 1-1
PRODUCT FEATURES, 8-1 Using Code Coverage with Optimized Programs, 6-1
PROGRAM field, 7-6, 8-4 UTILITIES menu, 5-1
Program Inventory Utility, 13-1 utilities, using, 5-1–5-18
Program Preparation Facility, 7-3 JCL, 5-1
Program Selection screen, 5-10
Program Type field, 8-5
program-level report, 3-6 V
R Verb Coverage, 7-8, 8-8

related publications, xi X
Report Filters screen, 2-4
reports, 3-5
annotated listing, 3-7 Xpediter/CICS, using Code Coverage with, 10-1
program-level, 3-6 Xpediter/Code Coverage Customer Support, xi
system-level, 3-6 Xpediter/DevEnterprise, installing, 1-1
Reports screen, 3-1 Xpediter/IMS, using Code Coverage with, 8-1
reports, generating, 3-1 Xpediter/TSO, using Code Coverage with, 7-1
repository dataset, 1-1, 2-3, 3-2, 4-2, 5-2, 7-2, 7-7, 8-2, XPLIBDEF CLIST, 7-1, 8-1
8-7 XVCC transaction, using, 1-1
Repository screen, 2-3
Repository Utility screen, 5-2
Retain Breakpoints? field, 8-6
RUN command, 7-5

You might also like