Preparing Enterprise COBOL for z/OS® Version 3 and COBOL for OS/390® and VM programs

Perform the following steps for compiling your Enterprise COBOL for z/OS® Version 3 and COBOL for OS/390® and VM programs using the compiler options suggested in Examples of compiler options and source information files that are supported by ADFz products for Enterprise COBOL for z/OS Version 3 and COBOL for OS/390 and VM:
  1. Create libraries (PDSE is suggested unless PDS is required in your organization) for SYSDEBUG files. Allocate one or more SYSDEBUG libraries for each environment, such as test, and production.
  2. Create a corresponding SYSDEBUG library for each load library. Specify LRECL=(80 to 1024),RECFM=FB,BLKSIZE=(multiple of lrecl < 32K).
  3. For all programs in both test and production environments, use TEST(NONE,SYM,SEPARATE),LIST,MAP,SOURCE,NONUMBER,XREF(SHORT).

    TEST is required by z/OS® Debugger.

    The SEPARATE suboption produces a SYSDEBUG file. Specifying NONE with SEPARATE produces a production-ready module that can still be debugged.

    If OPTIMIZE is specified, the debugger JUMPTO and GOTO commands are disabled. These commands are enabled when NOOPTIMIZE is specified.

  4. The LIST, MAP, SOURCE, and XREF options are needed only if a compiler listing or a LANGX file is used to provide source information to Fault Analyzer for z/OS® or Application Performance Analyzer for z/OS®. If a SYSDEBUG file is used with these products, or if you are not using Fault Analyzer for z/OS® or Application Performance Analyzer for z/OS®, the LIST, MAP, SOURCE, and XREF options are optional.
  5. The NONUMBER compiler option is needed only if a compiler listing file is used to provide source information to Application Performance Analyzer for z/OS®. If a SYSDEBUG file is used with Application Performance Analyzer for z/OS®, or if you are not using Application Performance Analyzer for z/OS®, the NONUMBER option is optional.
  6. Code a SYSDEBUG DD in the JCL of the compiler step.
    //SYSDEBUG DD DSN= SYSDEBUG.pds(pgmname),DISP=SHR
    Save the SYSDEBUG file that is produced by the compiler in the SYSDEBUG library and specify a member name that is equal to the program name of your application program. This file is the source information file for z/OS® Debugger, Fault Analyzer for z/OS® and Application Performance Analyzer for z/OS®.
  7. Modify the promotion process to promote SYSDEBUG files. When a load module is promoted, for example from test to production, promote the corresponding SYSDEBUG file or files. A promotion can be a recompile, copy, or move. Perform the same steps with the SYSDEBUG file that you perform with the module during promotion.
  8. Optionally, include a z/OS® Debugger Language Environment® exit module into the load module during the linkage editor step. This inclusion is one way to enable z/OS® Debugger panel 6 in ISPF, a simple panel-driven method to start the debugger automatically when a program runs, without JCL changes, based on the program name and user ID. Use module EQADBCXT for batch programs (including IMS batch), EQADICXT for IMS/TM programs and EQADDCXT for DB2® stored procedures. Do not include the exit module for CICS® programs.

    You can also use module EQAD3CXT for batch programs, IMS/TM, IMS BTS programs, and DB2® type MAIN stored procedures.