Chapter 16. Debug Tool and subsystems 487
16.3.1 Traditional methods of debugging under IMS
Traditionally, the hardest part of preparing for debugging of an IMS program or transaction is
setting the runtime options.
For compilation, the instructions given in the individual language chapters should be used.
For runtime options, there has traditionally never been a way to specify command-line
runtime options under IMS. In releases prior to IMS V8, you must use one of the following
ways to set the runtime options for a transaction or program:
򐂰 An LE CEEUOPT
򐂰 The #pragma runopts (for C/C++)
򐂰 PLIXOPT for PL/I
Full-screen 3270 single terminal mode is not available under IMS. Dual terminal or a remote
debugger should be used.
16.3.2 Debugging with IMS V8 and later
If you have Debug Tool Utilities and Advanced Functions installed on your system and are
using IMS Version 8, there are some new DTU facilities that allow you to easily change your
LE runtime options on the fly. The new V4.1 Debug Tool interface uses the IMS Single Point
of Control facilities that are described in the IMS books, but provides an easy-to-use full
featured interface tailored towards Debug Tool users.
In the past, the only way to provide the TEST runtime option that is required to bring up
Debug Tool was to compile it into the program (with a CEEUOPT or using #pragma runopts
with C/C++). This caused problems because:
򐂰 All users of the program were affected by this change, not simply the person debugging
the program.
򐂰 Two people could not debug the same program simultaneously because only one VTAM
LUNAME or TCP/IP address could be given.
򐂰 The CEEUOPT or program had to be recompiled and relinked every time your TCP/IP
address or available VTAM terminal changed.
A second set of features is usable without IMS Version 8 and allows you to create or edit
setup files for your IMS program using Debug Tool Utilities.
Linking an application to allow the managing of runtime options
IMS uses a customized version of the LE CEEBXITA to allow LE runopts to be specified. This
exit is called DFSBXITA and is found in SDFSSMPL. This exit can be used in one of two
ways:
򐂰 You can assemble and link it with your application in order to allow dynamic changing of
the LE runtime options for that application only.
򐂰 Your system programmer can assemble and then link it into the SCEERUN(CEEBINIT)
module. When this SCEERUN is used with your IMS region, it will allow the new
functionality to be used with
all applications running in the region. The JCL shown in
Example 16-10 is the assembled DFSBXITA that was in HLQ.MY.OBJECT(CEEBXITA).
Example 16-10 JCL
//LKED EXEC PGM=IEWL,REGION=4M,
// PARM='CALL,LIST,XREF,LET,RENT,REFR,MAP,AMODE=24,RMODE=24'
//SYSLIB DD DSN=CEE.SCEELKED,DISP=SHR
488 Supporting On Demand Business Applications with the IBM Problem Determination Tools
// DD DSN=CEE.SCEERUN,DISP=SHR
//MYOBJ DD DSN=HLQ.MY.OBJECT,DISP=SHR
//SYSLMOD DD DSN=<>,DISP=SHR
//SYSUT1 DD DSN=&&SYSUT1,UNIT=SYSDA,SPACE=(CYL,(3,1)),
// DCB=BLKSIZE=1024
//SYSPRINT DD SYSOUT=*
//SYSLIN DD DDNAME=SYSIN
//SYSIN DD *
INCLUDE MYOBJ(CEEBXITA)
REPLACE CEEBXITA
INCLUDE SYSLIB(CEEBINIT)
ORDER CEEBINIT
MODE AMODE(24),RMODE(24)
ENTRY CEEBINIT
NAME CEEBINIT(R)
/*
Debug Tool IMS support
Option 4 on Debug Tool Utilities panel, as shown in Figure 16-29, provides the IMS debug
support facilities, as shown in Figure 16-30 on page 489.
Figure 16-29 Debug Tool Utilities option 4 selection
Chapter 16. Debug Tool and subsystems 489
Figure 16-30 IMS panel
Two options are available for customization. The panel shown in Figure 16-31, arrived at by
selecting option 1 in the previous panel, requires you to enter the IMS Plex ID. All other fields
are optional and can be used to reduce the number of entries on the following panel. Unless
you have a large number of entries or know specifically which entry you are looking for, it may
not be a good idea to specify any query qualifiers.
This facility allows the specification of runtime options to be as global as the whole IMS plex,
or as specific as a given program in a given transaction from a given terminal submitted by a
specific user ID. Simply stating the transaction you are looking for may not find all profiles that
apply to that transaction.
Figure 16-31 IMS PLEX ID

Get Supporting On Demand Business Applications with the IBM Problem Determination Tools (APA, DT, DT with Advanced Facilities, FA, File Export, FM, WS) now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.