Turns the IBM Distributed Debugger on and off.
CDCN [TERMID=termId] [SYSID=sysId] [TRANSID=transId] [PROGRAM=programName ] [DISPLAY=display] [ ON | OFF ]
CDCN is a CICS-supplied transaction that turns the IBM Distributed Debugger on and off. CDCN is not supported on Windows.
The IBM Distributed Debugger can be used to diagnose errors in a transaction that is identified by naming a resource in one of the following classes:
When a transaction meets one or more of the criteria that CDCN sets, the IBM Distributed Debugger starts. To distinguish between different configurations, CDCN stores data on a per-user principle. Users must sign on with their user IDs before accessing CDCN. This prevents conflicts in configuration. For example, user A should not be able to change user B's configuration. Every CDCN configuration data is stored in a file. If the region is stopped and restarted, CDCN configuration data is loaded and the resources that were configured for debugging are available for debugging again. CDCN configuration is stored in debug.cfg file which resides in the region’s data directory. This file is only for internal use of TXSeries. It should not be opened in any editor or edited manually.
To find the identifier of an autoinstalled terminal, you can run the CEMT INQ TERMINAL transaction, which lists all the terminals that are logged on to the CICS® region. Alternatively, you can look at the autoinstall message in the CSMT log, in the file /var/cics_regions/region_name/data/CSMT.out.
You need to set the value of AllowDebugging attribute in the Region Definitions (RD) to yes to use CDCN.
CDCN CICS Debugging Configuration Transaction
DISPLAY :( ) DEBUG : ON
To configure for a terminal specify the TERMID TERMID : ( )
To configure for a system specify the SYSID SYSID : ( )
To configure for a transaction specify the TRANSID TRANSID: ( )
To configure for a program specify the PROGRAM PROGRAM: ( )
ENTER: COMMIT SELECTION
PF1 : HELP PF2 : DEBUG ON/OFF PF3 : EXIT
PF4 : MESSAGES PF5 : UNDEFINED PF6 : UNDEFINED
PF7 : UNDEFINED PF8 : UNDEFINED PF9 : UNDEFINED
PF10: UNDEFINED PF11: UNDEFINED PF12: UNDEFINED
The data entry fields, which are indicated by parentheses, are where you can enter data that corresponds to the parameters.
After you have filled in the fields that you want, press ENTER from the main screen.
The program function keys have the following functions:
When you use CDCN to turn on the IBM Distributed Debugger for a named resource, it does not cause the IBM Distributed Debugger to start immediately. If you satisfy the security checks, and you are able both to run the CDCN transaction and to access the region database entries to turn on the IBM Distributed Debugger for the resource, the resource that you name acts as a “trigger”. Startup of the IBM Distributed Debugger is triggered later, depending on the type of resource that is involved:
Resource | Startup of the IBM Distributed Debugger triggered by |
---|---|
termid | The next transaction that is run on that terminal |
sysid | The next transaction that is run as a result of a request from that system |
transid | The next invocation of that transaction |
program | The next invocation of that program |
When the IBM Distributed Debugger is first started, it remains attached to the CICS application server (cicsas) process, debugging one or more programs, until the end of the transaction (even when it has been triggered to debug a program), or until you choose to quit from the IBM Distributed Debugger. The IBM Distributed Debugger is “attached” when it is attached to the cicsas process (that is, actually debugging one or more programs); the IBM Distributed Debugger is “detached” when it is no longer attached to the cicsas process (that is, when it has finished debugging a transaction and is waiting to be triggered again). When the IBM Distributed Debugger has started, it can be terminated only in one of two ways:
Each “trigger resource” can have only one session of the IBM Distributed Debugger started for it, and the implied sequence of precedence is as follows:
This means, for example, that, if you turn on debugging both for a terminal that has identifier AR01 and for a transaction that has identifier ALAN, and you run transaction ALAN on terminal AR01, only one session of the IBM Distributed Debugger is started (that associated with terminal AR01), because two debug sessions cannot debug the same physical copy of the code, and the terminal trigger takes precedence over the transaction trigger. A second invocation of ALAN that is run from a different terminal, however, will also start a session of the IBM Distributed Debugger (that associated with transaction ALAN). It is therefore possible to have multiple copies of the same program code being debugged at the same time.
Note that only programs that are compiled for debug produce symbolic output from the IBM Distributed Debugger when run under control of the IBM Distributed Debugger. If the IBM Distributed Debugger is triggered for a program that has not been compiled for debug, the IBM Distributed Debugger displays the program as assembler statements.