Milestone 4 Configure Code Debug CICS — New Installation
Related topic
This section will guide you through configuration of a new installation of Code Debug CICS 17.02.
If you are performing an upgrade instead, go to Milestone 5: Configure Code Debug CICS — Upgrade.
The following roles are involved in this milestone:
- z/OS Security Administrator
- Code Debug CICS Installer
- z/OS System Programmer
- CICS System Programmer.
Task 4.1 External Security Considerations
Complete the following tasks to configure a new installation of Code Debug CICS.
This milestone requires the z/OS Security Administrator.
Task 4.1.1 Transaction Security
To help you to set up security groups for external security, the following tables list the Code Debug CICS (and Code Coverage) transactions and their uses. The tables also identify started transactions and provide recommended external security settings.
The terms used in the “Security Recommended” column are defined as follows:
- NO - All users of Code Debug, including the user ID associated with PLTPI programs, should be permitted to execute these transactions.
- YES - These transactions provide capabilities beyond the needs of a typical end user of Code Debug. Access may be limited to those responsible for installation, configuration, etc.
- EITHER - No recommendation.
Code Debug CICS Transactions
Trans | Program | Use | Started | Security |
|---|---|---|---|---|
DBFL | DBUGFILE | File utility | • | NO |
DBPA | DBUGPPM2 | PLT startup | • | NO |
DBXG | DBUGSP00 | Remote traps | • | NO |
DMAP | DBUGMAPS | Display BMS maps |
| EITHER |
NEWC | DBUGNEWC | Newcopy (PHASEIN) programs |
| EITHER |
XACH | CWDEMACH | Demo program |
| EITHER |
XASL | CWCEEASM | Demo program |
| EITHER |
XASM | CWDEMASM | Demo program |
| EITHER |
XCB2 | CWDEMCB2 | Demo program |
| EITHER |
XCBN | CWDEMCBN | Demo program |
| EITHER |
XCCC | CWDEMC | Demo program |
| EITHER |
XCCH | CWDEMCCH | Demo program |
| EITHER |
XDBP | DBUGDBPA | Process Code Debug CICS System Facilities and Code Coverage Test Parameters |
| YES |
XIVP | DBUGINST | Installation Verification Program |
| EITHER |
XLGI | DBUGLOGC | File Utility logging | • | NO |
XLOG | DBUGLOGM | Activate, terminate, or switch data sets |
| YES |
XPCH | CWCEMPCH | Demo program |
| EITHER |
XPCI | DBUGCRTL | Remote Operations Command Interface (ROCI) | • | EITHER |
XPED | DBUGSP00 | Access Code Debug |
| EITHER |
XPFS | DBUGCSFS | SLS Data set Services | • | NO |
XPGD | XDPIMIRS | Secure Code Debug CICS access from Code Debug Eclipse |
| EITHER |
XPLE | CWDEMPE | Demo program |
| EITHER |
XPLI | CWDEMPL | Demo program |
| EITHER |
XPN0 | DBUGEND0 | Automatic session termination | • | NO |
XPNC | DBUGCRTL | Newcopy (PHASEIN) program from batch |
| EITHER |
XPND | DBUGEND | Automatic session termination | • | NO |
XPOF | DBUGDBXX | Shutdown Code Debug |
| EITHER |
XPRT | DBUGSP00 | Access Code Debug |
| EITHER |
XPSP | DBUGSP00 | Access Code Debug with system facilities |
| YES |
XPWD | DBUGWRAM | Disable Code Debug’s dynamic transaction routing exit |
| YES |
XPWI | DBUGWRAM | Enable Code Debug’s dynamic transaction routing exit |
| YES |
XREL | DBUGNEWC | Internal Code Debug transaction |
| NO |
XROI | DBUGROIC | Data collection for BMC’s zAdviser | • | NO |
XSIT | DBUGSIT | Process Code Debug CICS Parameters |
| YES |
XSOC | DBUGSOCK | Code Debug Eclipse connections |
| NO |
XSTA | DBUGSTA0 | Access Code Debug in multiple AORs |
| EITHER |
XZCH | CWDEMZCH | Demo program |
| EITHER |
Code Coverage Transactions
Trans | Program | Use | Started | Security |
|---|---|---|---|---|
XVCC | XVTCMGR | Code Coverage definition update |
| YES |
XVKP | XVTCEXTR | Internal Code Coverage transaction | • | NO |
XVSC | XVTCMGR | Code Coverage definition update |
| YES |
XVSI | XVTCSIT | Process Code Debug CICS Code Coverage Parameters |
| YES |
XVTQ | XVTCCCIN | Internal Code Coverage quiesce tran ID | • | NO |
Started Transaction User Security
The following tables list the recommended user security for Code Debug CICS and Code Coverage started transactions.
User Security for Code Debug CICS Started Transactions.
Trans | Program | Use | UserID |
|---|---|---|---|
DBFL | DBUGFILE | File utility | Assigned the userID of the terminal accessing the file utility. |
DBPA | DBUGPPM2 | PLT startup | Assigned the same userID as the CPLT transaction. |
DBXG | DBUGSP00 | Remote traps | Assigned the userID of the trapping terminal. |
XLGI | DBUGLOGC | Activate, terminate, or switch logging | Assigned the userID of the terminal accessing transaction XLOG. |
XPCI | DBUGCRTL | Remote Operations Command Interface (ROCI) | For security considerations, see to “Installing-and-Customizing-the-Remote-Operations-Command-Interface” in the Code Debug CICS Advanced Configuration Guide. |
XPFS | DBUGCSFS | SLS Data set Services | Assigned the userID of the Code Debug CICS initiator or DFLTUSER. If initiated via PLTPI, assigned PLTPIUSR or the CICS region userID. |
XPGD | XDPIMIRS | Code Debug Eclipse | |
XPN0 | DBUGEND0 | Automatic session termination | Assigned the userID of the terminal at which it runs (when started via autoinstall terminal delete). |
XPND | DBUGEND | Automatic session termination | Same as XPN0. |
XREL | DBUGNEWC | Release held programs | Runs when all breakpoints are removed from a program. Assigned the userID of the terminal for which the breakpoints were removed. |
XROI | DBUGROIC | Data collection for BMC’s zAdviser | Assigned the userID of the Code Debug CICS initiator. If initiated via PLTPI, assigned PLTPIUSR or DFLTUSER userID. If initiated via terminal, assigned userID of the terminal. |
XSRE | DBUGREMS | Triggers Code Debug Eclipse remote events | Assigned the userID of the Code Debug CICS initiator or DFLTUSER. |
XTMO | DBUGXTMO | Checks for inactive session termination | Assigned the userID of the Code Debug CICS initiator or DFLTUSER. If initiated via PLTPI, assigned PLTPIUSR or the CICS region userID. |
User Security for Code Coverage Started Transactions
Trans | Program | Use | UserID |
|---|---|---|---|
XVKP | XVTCEXTR | Code Coverage auto-extract transaction | Assigned the userID of the Code Debug CICS initiator or DFLTUSER. If initiated via PLTPI, assigned PLTPIUSR or the CICS region userID. |
XVTQ | XVTCCCIN | Code Coverage quiesce transaction | Assigned the userID of the Code Debug CICS initiator or DFLTUSER. If initiated via PLTPI, assigned PLTPIUSR or the CICS region userID. |
Task 4.1.2 Security Exits
If you need to control activity in the Code Debug CICS File Utility, see to the section entitled “Implementing-the-File-Utility-Security-Exit” in the Code Debug CICS Advanced Configuration Guide.
Task 4.1.3 INQUIRE ASSOCIATION Considerations
The Code Debug CICS start-of-task exit uses the EXEC CICS INQUIRE ASSOCIATION call to obtain the client IP address associated with the task. This allows the terminal emulator IP address to be identified when a trap/breakpoint is taken. The ASSOCIATION command is subject to CICS command security checking using the resource identifier (ASSOCIATION). Code Debug CICS will need a profile created that allows all CICS users to have READ access for resource identifier ASSOCIATION.
Task 4.1.4 BMC PARMLIB Reports
Code Debug CICS has replaced the z/OS services (dynamic allocation and file open/write/close) used to produce the BMC PARMLIB Reports with the use of CICS Extrapartition Transient Data Queues and CICS services. As part of this refactoring, three new TDQ definitions have been included in the SMXDSAMP member CSDXDFIL. PARMLIB Parameter Reports table lists the default TDQ names, the BMC PARMLIB Report associated with the TDQ, and the PARMLIB overrides used to change the TDQ names if required.
Whether you are performing a new install or upgrading to a new release, these queues should be defined to produce the BMC PARMLIB reports during PARMLIB processing. Review member CSDXDFIL and add these queues to your RDO definitions. If you decide to modify the queue names, be aware that you must also add the appropriate parameter changes to your BMC PARMLIB members. If you decide not to install these TDQ definitions, be aware that:
- Additional messages may be written to the CSMT queue indicating that the TDQ definitions are not present.
- The report produced by the Installation Verification Program (transaction XIVP) will display warning messages for any missing queues.
The global tables supplied with the product have also had their default values for the report ddnames changed to reflect the new TDQ queues. If you install the new TDQ definitions and do not change the default names, you should not encounter any errors.
BMC PARMLIB parameters that are being deprecated by this change are:
- CODE_COVERAGE_PARMLIB_REPORT_ALLOCATION
- CODE_COVERAGE_PARMLIB_REPORT_SYSOUT_CLS
- DBPA_REPORT_ALLOCATION
- DBPA_REPORT_SYSOUT_CLASS
- PARMLIB_REPORT_ALLOCATION
- PARMLIB_REPORT_SYSOUT_CLASS
The following BMC PARMLIB parameters are being repurposed from supplying a one- to eight-character ddname to providing a one- to four-character TDQ name (if it is necessary to override the new TDQ names):
- CODE_COVERAGE_PARMLIB_REPORT_DDNAME
- DBPA_REPORT_DDNAME
- PARMLIB_REPORT_DDNAME
The reports produced have had minor cosmetic changes made to better describe what the reports represent and the names of the TDQ that they are written to.
BMC PARMLIB Parameter Reports
Queue | Report Produced | PARMLIB | |
|---|---|---|---|
Member | Parameter Override | ||
XGBR | Code Debug CICS Parameters | XDGB | PARMLIB_REPORT_DDNAME |
XDBR | Code Debug CICS System Facilities and | XDDB | DBPA_REPORT_DDNAME |
XVGR | Code Coverage Parameters | XVGB | CODE_COVERAGE_PARMLIB_REPORT_DDNAME |
Task 4.1.5 Additional Considerations
The following security considerations are covered in more detail in Milestone 6: Configure Workbench Integration.
Enabling CICS Transaction for XSKL User ID
The user ID associated with transaction XSKL must be permitted to start a CICS transaction as a surrogate for the Workbench for Eclipse user (for example: read access to *.DFHSTART in CLASS SURROGAT).
Verifying Transaction Definition for Controlling Access from Workbench for Eclipse
XPGD is the default transaction code for controlling access to Code Debug CICS from Workbench for Eclipse. If XPGD is not already defined, a sample is in SMXDSAMP member CSDXDTRN.
Task 4.2 Prepare the ISPF Edit Macro
This milestone requires the Code Debug CICS Installer.
XDUPDATE is an ISPF edit macro that can be used to automate the entry of site-specific JCL parameters. Using this macro saves you from having to repeatedly type in the same information and ensures your JCL parameters are always entered correctly.
To use the edit macro, first copy member XDUPDATE from the SMXDSAMP member into your CLIST library. Then enter your site-specific information in the XDUPDATE macro. The macro includes instructions for entering the information. Your CLIST library must be allocated to your ISPF session. You can verify that your CLIST library is accessible to ISPF by entering the command TSO LISTA or TSO ISRDDN.
The edit macro can be used during Code Debug installation each time you are instructed to edit JCL. To run it, first open the JCL member for editing. You can then look at the JCL before any changes are made. Type XDUPDATE in the COMMAND field of the ISPF EDIT screen and press Enter.
Task 4.3 Integrate Code Debug CICS with MVS
This milestone requires the Code Debug CICS z/OS System Programmer
In this step, you will authorize the Code Debug CICS target library that ends with the qualifier SMXDAUTH. You will also define the Code Debug Service Provider program properties to MVS and define it as an MVS subsystem.
Task 4.3.1 Authorize the Code Debug SMXDAUTH Library
Ensure the Code Debug CICS 17.02 SMXDAUTH library is APF authorized. The Code Debug CICS APF authorized library is backward compatible. BMC suggests you add the data set to your IEAAPFxx or PROGxx list, as appropriate, so it will be APF authorized at each system IPL.
Task 4.3.2 Define the Code Debug Service Provider Program Properties to MVS
- Add program DBUGSTC to the MVS program properties table (PPT) member in SYS1.PARMLIB using either of the following methods:
- Copy SMXDSAMP member SCHEDXD to SYS1.PARMLIB, then add XD to the SCH=(xx) directive of IEASYSxx in SYS1.PARMLIB. For example, change SCH=00 to SCH=(00,XD).
- Append SMXDSAMP member SCHEDXD to your SCHEDxx member in SYS1.PARMLIB.
- Update the MVS PPT by issuing one of the following MVS operator commands:
SET SCH=(xx,XD) | where xx is the suffix of the SCHEDxx member used during the last IPL and XD is the suffix of the SCHEDxx member which contains the MVS PPT entry for DBUGSTC. |
SET SCH=xx | where xx is the suffix of the SCHEDxx member which contains the MVS PPT entry for DBUGSTC. |
Task 4.3.3 Define the Code Debug Service Provider as an MVS Subsystem
You may optionally specify the Code Debug CICS subsystem ID in SYS1.PARMLIB(IEFSSNxx) for system documentation purposes using either of the following methods:
-
- Copy SMXDSAMP member IEFSSNXD to SYS1.PARMLIB, then add XD to the SSN=(xx) directive of IEASYSxx in SYS1.PARMLIB. For example, change SSN=00 to SSN=(00,XD).
- Append SMXDSAMP member IEFSSNXD to your IEFSSNxx member in SYS1.PARMLIB.
You are not required to perform an IPL to use the Code Debug Service Provider. If an MVS subsystem entry has not already been defined, Code Debug CICS will build one dynamically during initialization.
Task 4.4 Update the CICS Resource Definitions
This milestone requires the CICS System Programmer
This task explains how to update your site’s CICS resource definitions. Observe the following general considerations:
- Some Code Debug CICS control blocks are GETMAINed in accordance with the TASKDATALOC specified for the transaction being tested. Code Debug’s use of below the line storage can be reduced by specifying TASKDATALOC=ANY for your eligible transactions.
- Code Debug CICS does not support programs with RELOAD:YES in the program resource definition. Remove this option for programs that you plan to debug with Code Debug.
- Do not define temporary storage queues with an XP prefix as remote.
- In DFHSITxx, do not specify SRT=NO.
- If your site will be initializing Code Debug CICS using PLT startup, observe the following conditions:
- Add the Code Debug CICS program DBUGPPM2 to the PLT program initialization (PLTPI) table.
- Shutdown of Code Debug CICS via the PLT is supported. To enable this support, add program DBUGPLTS to the PLTSD table. In your CICS shutdown PLT, before the line reading DFHPLT TYPE=ENTRY,PROGRAM=DFHDELIM, add the following entry:
Do not put DBUGPPM2 in the PLTSD table.
Task 4.4.1 Using RDO to Update Resource Definitions
- The previous method of using z/OS dynamic allocation and file open/close/write services to produce BMC PARMLIB reports has been removed from the product and replaced with the use of transient data queues. PARMLIB Parameter Reports table describes the queues, the report written to each queue, and the PARMLIB member prefix and parameter needed to override the queue name (if necessary). The definitions of these queues are in SMXDSAMP member CSDXDFIL. The only modifications you may need to make are to the TDQUEUE name and the ddname. The other definition values should not be changed. Changing the TDQUEUE name will require you to use the appropriate PARMLIB parameter so that the correct queue is used to produce the report during parameter processing. The ddname parameters must not conflict with existing ddnames in your region’s JCL or other TDQUEUE definitions.
While BMC suggests defining all three queues, you can decide to define only one and use the appropriate PARMLIB parameters to point the reports to that single queue—or use INDirect queues to point to a single queue. The report queues cannot be defined as INTra or Remote. Review the supplied JCL member DBCRDO. See to the following table and use the SYSIN in resource members CSDXDFIL, CSDXDPRG, and CSDXDTRN. If Code Debug’s program autoinstall is implemented during customization, CSDXDPRG can be omitted
- The Code Debug CICS resource group created in this step must be added to a CICS group list, which in turn is specified in the system initialization parameter GRPLIST
- CSDXDFIL contains an ENQMODEL. Ensure that this ENQMODEL definition is added to all CICS regions that share the same Code Debug CICS Profile Data set.
Submit JCL member DBCRDO to batch the required CEDA transactions.
Resource Members
SYSIN Member for JCL Member DBCRDO or CSD2BAS |
|---|
CSDXDFIL |
CSDXDPRG (omit if using autoinstall for Code Debug programs) |
CSDXDTRN |
CSDXDDB2 (DB2ENTRY and DB2TRAN entries for Db2 sites only) |
CSDXDDYN (if using Code Debug’s CICSPlex TOR support) |
Task 4.5 Initialize the Code Debug Service Provider
This milestone requires the Code Debug CICS z/OS System Programmer
- The Code Debug Service Provider Subsystem can be executed as a batch job or as a started task.Edit sample SMXDSAMP member XDSSPROC to make sure the STEPLIB DD statement specifies the Code Debug CICS APF authorized data set (SMXDAUTH) used at your site.
- If you change the value of the SSID parameter value, make sure you change the global parameter SERVICE_PROVIDER_SUBSYSTEM_NAME to match. For details on other Code Debug Service Provider parameters, see “Specifying-Code-Debug-Service-Provider-Parameters” in the Code Debug CICS Advanced Configuration Guide.
- Copy member XDSSPROC from SMXDSAMP member to a JCL procedure data set defined to JES.
- The Code Debug Service Provider Subsystem can be executed as a batch job or as a started task.
-
- To run the subsystem as a batch job:
1. If you change the value of the SSID parameter value in member XDSSJCL, make sure you change the global parameter SERVICE_PROVIDER_SUBSYSTEM_NAME to match.
2. Submit XDSSJCL.
-
To run the subsystem as a started task, issue the following operator command:
S XDSSPROC{,SSID=xxxx}
where {,SSID=xxxx} is an optional parameter used to override the default subsystem identifier, XDSS, with the identifier used at your site.
If you would like the Code Debug Service Provider to be initialized automatically during MVS startup, add the following start command to SYS1.PARMLIB member COMMNDxx:
S XDSSPROC,SSID=xxxx
where xxxx is the subsystem identifier. XDSS is the default. Place the start command for the Code Debug Service Provider after your start of TCPIP.
Task 4.6 Allocate a Profile File (DBCDEFPF)
This milestone requires the
Code Debug CICS
Installer.
Installing the profile file enables you to individually define PF key settings, footing options, scroll values, and trap and trace options.
Submit SMXDSAMP member DBCDEFPF to define the VSAM KSDS profile file.
The resource definition for DBUGPRF was installed as part of Update the CICS Resource Definitions.
Task 4.7 Set Up Test Assets
This milestone requires the
Code Debug CICS
Installer.
This task will guide you through setting up test assets that will be used for installation verification and demonstration purposes.
Task 4.7.1 Assemble/Compile and Link-Edit the Test Programs
The following table show the program name for each test program found in the SMXDSAMP library and the language that it is used for. The tables also include the name of the Assembler subroutine that is called by each of these programs.
Test Programs.
Program Name | Language |
|---|---|
CWDEMCB2 | COBOL |
CWDEMCBN | COBOL (w/nested programming) |
CWDEMASM | Assembler |
CWCEEASM | LE-enabled Assembler |
CWCDSUBA | Assembler Subroutine |
CWDEMPL | PL/I |
CWDEMPE | Enterprise PL/I |
CWDEMC | C |
Additional Test Programs Using Channels and Containers
Program Name | Language |
|---|---|
CWDEMACH | Assembler |
CWDEMCCH | COBOL |
CWDEMPCH | Enterprise PL/I |
CWDEMZCH | C |
Setting Up CSS Language Processor JCL
For specific information on compiling your programs using the BMC Language Processors (LPs), see to the BMC AMI Common Shared Services User/Reference Guide. This guide will provide information on using the correct LP (COBOL, PL/I, Assembler, or C). If you do not already have compile JCL which uses LP, use the appropriate sample JCL provided in the Enterprise Common Components (ECC) sample library SLCXCNTL to modify your existing compile JCL. For example, member CXCOBPRE provides JCL that uses the LP COBOL preprocessor to compile a COBOL program, and member CXCOB1 provides JCL that uses the LP COBOL postprocessor when compiling a COBOL program.
Verify Test Programs Function
Complete the following steps to ensure that the test programs function properly:
Assemble program CWCDSUBA. If you have the Assembler option, process it using the BMC Assembler language processor. For detailed information, see “Assembler Language Processor” in theBMC AMI Common Shared Services User/Reference Guide. The CWCDSUBA routine does not contain any CICS commands and, therefore, does not need to be translated. CWCDSUBA must be included when CWDEMCB2, CWDEMCCH, CWDEMPE, or CWDEMPCH are link-edited.
If you have the COBOL option, compile the CWDEMCB2 program with the modified compile/link-edit JCL that includes the BMC COBOL language processor. Use the NODYNAM parameter in the COBOL compile step and make sure that the library for CWCDSUBA is in the SYSLIB data set. For detailed information, see “COBOL https://docs.compuware.com/cy/CY1702/html/CSS_UserRef/Responsive%20HTML5/index.html#t=CSS_UserRef%2Fcobol_lp%2Fcobol_lp.htmLanguage Processor” in the BMC AMI Common Shared Services User/Reference Guide. (You may also compile CWDEMCCH.)
If you have the PL/I option, compile the CWDEMPE program with the modified compile/link-edit JCL that includes the BMC PL/I language processor. Make sure that the library for CWCDSUBA is in the SYSLIB data set. For detailed information, see “PL/I confluencePage:id:995987012Language Processor” in the BMC AMI Common Shared Services User/Reference Guide. (You may also compile CWDEMPCH.)
If you have the Assembler option, assemble CWDEMASM using the modified assembly/link-edit JCL that includes the BMC Assembler language processor. For detailed information, see “Assembler Assembler-Language-ProcessorLanguage Processor” in the BMC AMI Common Shared Services User/Reference Guide. (You may also assemble CWCEEASM and CWDEMACH.)
- If you have the C option, compile the CWDEMC program with the modified compile/link-edit JCL that includes the BMC C language processor. (You may also compile CWDEMZCH.) For detailed information, see “Compiling-and-Binding-C-Test-Programs” in the Code Debug CICS Advanced Configuration Guide.
Task 4.7.2 Allocate and Initialize the Employee File (DBCDEFEM)
The employee data set (keyed sequential) is required to run the test (demonstration) programs.
Define a VSAM KSDS file using the JCL in SMXDSAMP member DBCDEFEM. The JCL loads the file with five records. The test programs require that these records be present.
The resource definition for DBUGEMP was installed as part of Update the CICS Resource Definitions.
Task 4.8 Update the CICS Startup JCL
This milestone requires the
Code Debug CICS
Installer.
Change your site’s CICS startup JCL as follows:
- Make the CSS load library accessible to Code Debug CICS by adding it to the DFHRPL concatenation in the CICS startup JCL. The CSS load library is named CPWR.LCXnnn.SLCXLOAD (nnn is the release of CSS) and is included in the installation of Enterprise Common Components.
Add the appropriate Code Debug CICS load library listed in the following table to the DFHRPL concatenation:
Load Libraries for CICS Release Support.CICS Release
Data set Name
CICS TS 5.6
CPWR.VMXD170.SMXDO73L
CICS TS 6.1
CPWR.WMXD170.SMXDO74L
CICS TS 6.2
CPWR.XMXD170.SMXDO75L
CICS TS 6.3 CPWR.YMXD170.SMXDO76L - Define one or more SLS data sets to CICS using one or any combination of the following methods. (The maximum number of ddnames is specified by PARMLIB parameter MAXIMUM_SLS_FILES_TO_SEARCH. For more information, see the section entitled “Configuration-Parameters” in the Code Debug CICS Advanced Configuration Guide.
- Enable dynamic allocation by using PARMLIB parameter ENABLE_DYNAMIC_FILE_DEF_FOR_SLS_FILES and naming the SLS data sets as required for that feature. For more information, see the description of ENABLE_DYNAMIC_FILE_DEF_FOR_SLS_FILES in the section entitled “Configuration-Parameters” in the Code Debug CICS Advanced Configuration Guide.
Add a DD statement and/or RDO definition for each SLS standard DDIO data set or shared directory to the CICS startup JCL.
- If you are not dynamically allocating CICS data sets, add a DD statement for the profile file created in Allocate a Profile File(DBCDEFPF).
- If you are not dynamically allocating CICS data sets, add a DD statement for the employee file created in Allocate and Initialize the Employee File (DBCDEFEM).
Task 4.9 Verify the Basic Code Debug CICS Installation and Configuration
This milestone requires the Code Debug CICS Installer.
To verify that the Code Debug CICS installation has been successful, Code Debug CICS runs the Installation Verification Process (IVP). This procedure, performed automatically when the product is initialized in the CICS region, detects any changes introduced in the region that would cause the product not to function. You may request verification by using the XIVP transaction. This transaction routes the resulting output messages to the destination of your choice. The syntax for XIVP is as follows:

DEST=TERMINAL | Causes the output to go to the terminal at which XIVP is entered. This is the default. |
DEST=NONE | Causes all output to go only to transient data destination CSMT. |
DEST=tempstg-queue | Causes the output to go to the temporary storage queue name supplied. |
The PARMLIB parameter SEVERITY_OF_IVP_MESSAGES_TO_CSMT_QUEUE controls the destination of messages. To change this parameter, see to Milestone 7: Specifying Additional Configuration Parameters and “Parameter-Descriptions” in the Code Debug CICS Advanced Configuration Guide.
All discrepancies detected by XIVP are assigned a severity level of SEVERE, ERROR, WARNING, or INFORMATIONAL.
If severe errors are detected during initialization, they are placed in the temporary storage queue XPEDXIVP, and Code Debug CICS abends with a code of DBI0. For information on the abend code, see to the section entitled “Abend-Codes” in the Code Debug CICS Messages and Codes section. If the product is being initialized at a terminal where errors are detected, the following messages are directed to the terminal user before the abend is issued:
ERRORS WERE DETECTED DURING INITIALIZATION
USE CEBR TO BROWSE TEMPSTG QUEUE XPEDXIVP, OR
EXAMINE TRANSDATA DESTINATION CSMT FOR MESSAGES, OR
EXECUTE TRANSACTION XIVP DEST=TERMINAL TO SEE ERRORSIf ERROR level discrepancies are detected during initialization, they are placed in the temporary storage queue XPEDXIVP, and Code Debug CICS initialization will continue. If the product is being initialized at a terminal, the messages shown as follows will be directed to the terminal user. If the user responds NO to the CONTINUE INITIALIZATION prompt, Code Debug CICS abends with DBI0.
ERRORS DETECTED THE PRODUCT MAY BE USED, BUT UNPREDICTABLE RESULTS
MAY OCCUR, UP TO AND INCLUDING POSSIBLE REGION
OUTAGES. CORRECT THESE ERRORS AS SOON AS POSSIBLE.CONTINUE INITIALIZATION? ==> (YES/NO)If product is initialized with ERROR level discrepancies, a message “Code Debug initialization error, execute XIVP” will be issued to the terminal when a new Code Debug CICS session is started. This will alert each user to the fact that there may be problems with the product's configuration. These errors should be corrected as soon as possible.
Task 4.10 Review Automatic Session Termination
This milestone requires the CICS System Programmer.
Code Debug CICS can be tailored to terminate an active debugging session automatically if a terminal is disconnected, logged off, and/or signed off from CICS. BMC highly recommends that you install automatic session termination to release the resources of sessions that have not been manually terminated.
The following tasks will be sufficient for most sites where terminal autoinstall is used. For other methods, see to the section entitled “Configuring-Automatic-Session-Termination” in the Code Debug CICS Advanced Configuration Guide.
Task 4.10.1 Modify the Terminal Autoinstall Exit DFHZATDX
If your site uses a different autoinstall exit, its name can be found in the SIT parameter AIEXIT.
Add the following line of code to DFHZATDX in the “Delete Processing Section” after the IBM Put Delete Code Here comment:
EXEC CICS START INTERVAL (0) TRANSID (’XPN0’) FROM (DELETE_TERM_ID)- Reassemble and link edit DFHZATDX (or whatever VTAM terminal autoinstall exit is used at your site).