Northwest Regional Data Center

The Ultimate Solution to Simplify Your Data Center

CICS COBOL Compile Procedures

Please read the recent update to the CICS compile process that details the changes made to support CICS release 3.1 including four new PROCS and four discontinued PROCS.

NWRDC provides a unique procedure library for each of our CICS customer institutions. Click here for details.

Procedure Description
CICOBISL COBOL MVS compile and link with INTERTEST support from a sequential library using the integrated CICS pre-compiler.
CICOBMPL COBOL MVS compile and link with INTERTEST support from a Panvalet library
CIDBCISL DB2/COBOL MVS compile and link with INTERTEST support from a sequential library using the integrated CICS pre-compiler and the DB2 SQL Co-processor.
CICOBMSL COBOL MVS compile and link with INTERTEST support from a sequential library 
CIDBCMSL DB2/COBOL MVS compile and link with INTERTEST support from a sequential library 
CPCOBISL COBOL MVS compile and link from a sequential library using the integrated CICS pre-compiler.
CPCOBMPL COBOL MVS compile and link from a Panvalet library 
CPCOBMSL COBOL MVS compile and link from a sequential library 
CPDBCISL DB2/COBOL MVS compile and link from a sequential library using the integrated CICS pre-compiler and the DB2 SQL Co-processor.
CPDBCMSL DB2/COBOL MVS compile and link from a sequential library 

Click on the procedure name for more information.

Note: INTERTEST support means the COBOL source is made available to the INTERTEST/SYMDUMP debugging tools and has NO effect on the object code generated. Compiling without " INTERTEST support" does not preclude you from using INTERTEST online utilities.  Newcopy and monitoring support is always fully functional. Debugging is simply easier if the COBOL source is available. There is minor cost increase when the INTERTEST procs are used.


BMS Mapping And Related Procedures

PROC Name Description
CPMAPPL BMS map assembly and link from a Panvalet library.
CPMAPSL BMS map assembly and link from a sequential library.
CPMAPST BMS map assembly and link from a sequential library that also produces HTML document template data.
GTAUTIL ASSIST/GT general purpose utility.
GTBUTIL BMS/TS general purpose utility.
BMSGCONV Import existing pre-existing IBM mapset into BMS/GT.
BMSGPMAC Export BMS/GT mapset to IBM macros.
BMSGCATL Produce COPYBOOK and object components of a BMS/GT mapset.

Click on the procedure name for more information.

Additional BMS/TS file maintenance information can be found at the BMS/TS Technique page.


CICS Private Procedure Library Considerations

Private PROCLIBs
The procedures provided for CICS related compiles reside in a variety of programming enclave-oriented private PROCLIBs.

Private PROCLIBs are accessed via the JCLLIB statement:

//x JCLLIB ORDER=(CICS.PROCLIB.iii)

where iii is derived from the following table:
 

Data Set Name By Enclave Intended Users
CICS.PROCLIB.CJC Chipola Junior College
CICS.PROCLIB.DCU Division of Colleges and Universities (formerly Board of Regents)
CICS.PROCLIB.DOE Department of Education
CICS.PROCLIB.FAM Florida A&M University
CICS.PROCLIB.FAU Florida Atlantic University
CICS.PROCLIB.FIU Florida International University
CICS.PROCLIB.FSU Florida State University
CICS.PROCLIB.GTE Gateway (PAEC) - Financial system
CICS.PROCLIB.GTS Gateway (PAEC)  - Student system
CICS.PROCLIB.NWR Northwest Regional Data Center
CICS.PROCLIB.STR Santa Rosa School District
CICS.PROCLIB.UCF University of Central Florida
CICS.PROCLIB.USF University of South Florida
CICS.PROCLIB.UWF University of West Florida

The NWRDC provides a set of private procedure libraries, load libraries, copy libraries and INTERTEST symbolic files for each programming enclave described above. The use of the private procedure libraries will ensure the appropriate users get the appropriate data sets.


CICOBISL

Compile and link with INTERTEST symbolic support from a sequential data set using the integrated CICS pre-compiler. The appropriate symbolic parameters for this procedure are:

[COBOL] [COPYLIB,COPYLIBn ] [DEBUG ] [FORM ] [LC] [LKSYSLn] [LOADLIB] [MAPLIB] [MEMBER(r) ] [OUTC]

where "(r)" means that parameter is required. For example:

//STEP EXEC CICOBISL,MEMBER=XXAAAA
//CICS.SYSIN DD DISP=SHR,DSN=II.USER.SOURCE(XXAAAA)

CICOBMPL

Compile and link with INTERTEST symbolic support from a PANVALET library. The appropriate symbolic parameters for this procedure are:

[COBOL] [COPYLIB,COPYLIBn ] [DEBUG ] [FORM ] [LC] [LKSYSLn] [LOADLIB] [MAPLIB] [MEMBER(r) ] [OUTC] [OUTPC] [PANNAME ] [SOURCE] [USER(r)]

where "(r)" means that parameter is required. For example:

//STEP EXEC CICOBMPL,USER=UCF,MEMBER=XXAAAA
//PAN1.SYSIN DD *
++WRITE WORK,XXAAAA

CICOBMSL

Compile and link with INTERTEST symbolic support from a sequential data set. The appropriate symbolic parameters for this procedure are:

[COBOL] [COPYLIB,COPYLIBn ] [DEBUG ] [FORM ] [LC] [LKSYSLn] [LOADLIB] [MAPLIB] [MEMBER(r) ] [OUTC] [OUTPC] [SOURCE ]

where "(r)" means that parameter is required. For example:

//STEP EXEC CICOBMSL,MEMBER=XXAAAA
//CICS.SYSIN DD DISP=SHR,DSN=II.USER.SOURCE(XXAAAA)

CIDBCISL

(*** NOTE: THIS PROC HAS BEEN TEMPORARILY DISABLED***)

Compile and link for DB2 with INTERTEST symbolic support from a sequential library using the integrated CICS pre-compiler and the DB2 SQL Co-processor.. The appropriate parameters for this procedure are:

[COBOL] [COPYLIB,COPYLIBn ] [DBRMLIB(r)] [DEBUG ] [FORM] [LC] [LKSYSLn] [LOADLIB] [MAPLIB] [MEMBER(r) ] [OUTC]

where "(r)" means that parameter is required. For example:

//STEP EXEC CIDBCISL,DBRMLIB='ii.uuu.DBRMLIB',MEMBER=XXAAAA
//CICS.SYSIN DD DISP=SHR,DSN=ii.uuu.SOURCE(XXAAAA)
//BIND.SYSTSIN DD *                                                     
  DSN SYSTEM(DB2T)                                                      
  (your particular BIND parameters go here)                                             
  END

CIDBCMSL

Compile and link for DB2 with INTERTEST symbolic support from a sequential library. The appropriate parameters for this procedure are:

[COBOL] [COPYLIB,COPYLIBn ] [DBRMLIB(r)] [DEBUG ] [FORM] [LC] [LKSYSLn] [LOADLIB] [MAPLIB] [MEMBER(r) ] [OUTC] [OUTPC ] [SOURCE ] [SRCLIBn]

where "(r)" means that parameter is required. For example:

//STEP EXEC CIDBCMSL,DBRMLIB='ii.uuu.DBRMLIB',MEMBER=XXAAAA
//CICS.SYSIN DD DISP=SHR,DSN=ii.uuu.SOURCE(XXAAAA)
//BIND.SYSTSIN DD *                                                     
  DSN SYSTEM(DB2T)                                                      
  (your particular BIND parameters go here)                                    
  END

CPCOBISL

Compile and link from a sequential data set using the integrated CICS pre-compiler.. The appropriate symbolic parameters for this procedure are:

[COBOL] [COPYLIB,COPYLIBn] [DEBUG] [FORM] [LC] [LKSYSLn] [LOADLIB] [MAPLIB] [MEMBER(r)] [OUTC]

where "(r)" means that parameter is required. Example:

//STEP EXEC CPCOBISL,MEMBER=XXAAAA
//CICS.SYSIN DD DISP=SHR,DSN=II.USER.SOURCE(XXAAAA)

CPCOBMPL

Compile and link from a PANVALET library. The appropriate symbolic parameters for this procedure are:

[COBOL] [COPYLIB,COPYLIBn] [DEBUG] [FORM] [LC] [LKSYSLn] [LOADLIB] [MAPLIB] [MEMBER(r)] [OUTC] [OUTPC] [PANNAME ] [SOURCE] [USER(r)]

where "(r)" means that parameter is required. Example:

//STEP EXEC CPCOBMPL,USER=UCF,MEMBER=XXAAAA
//PAN1.SYSIN DD *
++WRITE WORK,XXAAAA

CPCOBMSL

Compile and link from a sequential data set. The appropriate symbolic parameters for this procedure are:

[COBOL] [COPYLIB,COPYLIBn] [DEBUG] [FORM] [LC] [LKSYSLn] [LOADLIB] [MAPLIB] [MEMBER(r)] [OUTC] [OUTPC] [SOURCE]

where "(r)" means that parameter is required. Example:

//STEP EXEC CPCOBMSL,MEMBER=XXAAAA
//CICS.SYSIN DD DISP=SHR,DSN=II.USER.SOURCE(XXAAAA)

CPDBCISL

(*** NOTE: THIS PROC HAS BEEN TEMPORARILY DISABLED***)

Compile and link for DB2 from a sequential library using the integrated CICS pre-compiler and the DB2 SQL Co-processor.. The appropriate parameters for this procedure are:

[COBOL] [COPYLIB,COPYLIBn] [DBRMLIB(r)] [DEBUG] [FORM] [LC] [LKSYSLn] [LOADLIB] [MAPLIB] [MEMBER(r)] [OUTC]

where "(r)" means that parameter is required. Example:

//STEP EXEC CPDBCISL,DBRMLIB='ii.uuu.DBRMLIB',MEMBER=XXAAAA
//CICS.SYSIN DD DISP=SHR,DSN=ii.uuu.SOURCE(XXAAAA)
//BIND.SYSTSIN DD *                                                     
  DSN SYSTEM(DB2T)                                                      
  (your particular BIND parameters go here)                                           
  END

 

CPDBCMSL

Compile and link for DB2 from a sequential library. The appropriate parameters for this procedure are:

[COBOL] [COPYLIB,COPYLIBn] [DBRMLIB(r)] [DEBUG] [FORM] [LC] [LKSYSLn] [LOADLIB] [MAPLIB] [MEMBER(r)] [OUTC] [OUTPC] [SOURCE] [SRCLIBn]

where "(r)" means that parameter is required. Example:

//STEP EXEC CPDBCMSL,DBRMLIB='ii.uuu.DBRMLIB',MEMBER=XXAAAA
//CICS.SYSIN DD DISP=SHR,DSN=ii.uuu.SOURCE(XXAAAA)
//BIND.SYSTSIN DD *                                                     
  DSN SYSTEM(DB2T)                                                      
 (your particular BIND parameters go here)                                  
  END

CPMAPPL

Assemble and link from a PANVALET Library. The appropriate symbolic parameters for this procedure are:

[MEMBER(r) ] [PANNAME ] [USER(r)] [LOADLIB] [MAPLIB]

where "(r)" means that parameter is required.

CPMAPSL

Assemble and link from a sequential library. The appropriate symbolic parameters for this procedure are:

[LOADLIB] [MEMBER(r)]  [MAPLIB]

where "(r)" means that parameter is required.

CPMAPST

BMS map assembly and link from a sequential library that also produces HTML document template data.. The appropriate symbolic parameters for this procedure are:

[HTMLLIB] [LOADLIB] [MEMBER(r)]  [MAPLIB]

where "(r)" means that parameter is required.

GTAUTIL

This procedure invokes GTAUTIL, the basic batch maintenance facility of ASSIST/GT and BMS/GT. Some of the functions performed by this utility are BACKUP (backup library to tape) and RESTORE (restore library from tape).

Example: Print documentation for help windows whose names start with "NWAS"

//xxxxxxxx JOB (xxxxx,....),'UTILITY',TIME=(,2)
//*
//PRINT EXEC GTAUTIL,USER=NWRV
//ASSIST.SYSIN DD *
PRINT SET=*WINDOW,MAP=NWAS*

Symbolic parameters: (r) means required.

USER       (r) First node of the DSN for the BMS/GT library
NAME The rest of the DSN for the BMS/GT library, default is 'GT.MASTER.FILE'
DISP Disposition of the BMS/GT library, default is 'SHR'
CLASS SYSOUT class for report, default is '*'
FORM SYSOUT form parameter for report, default is '' (null)
COPIES SYSOUT copies parameter for report, default is '1'

GTBUTIL

This procedure invokes GTBUTIL, the basic batch maintenance facility of BMS/GT. Some of the functions performed by this utility are: DLIST - Print directory of library. PRINT - Produce hard-copy documentation of map.

Example: Print documentation for BMS/GT mapset "MPTEST"

//xxxxxbms JOB (xxxxx,....),'BMSGT,UTILITY',TIME=(,2)
//*
//PRINT EXEC GTBUTIL,USER=NWRV
//BMSGT.SYSIN DD *
PRINT MAPSET=MPTEST,MAP=*

Symbolic parameters: (r) means required.

USER       (r) First node of the DSN for the BMS/GT library
NAME The rest of the DSN for the BMS/GT library, default is 'GT.MASTER.FILE'
DISP Disposition of the BMS/GT library, default is 'SHR'
CLASS SYSOUT class for report, default is '*'
FORM SYSOUT form parameter for report, default is '' (null)
COPIES SYSOUT copies parameter for report, default is '1'

 

BMSGCONV

Converts standard IBM BMS screens to BMS/GT format. This process is driven by the "object" and "symbolic" maps produced by assembling BMS macros, not the BMS macros themselves.

Procedure description: A BMS/GT utility processes the "object" map from the CICS load library, matches it with the "symbolic" map from the CICS copy library, and builds a BMS/GT screen image. The BMS/GT screen image is placed in a special BMS/GT library, called the "transfer" library. Before the screen can be altered on-line it must be "COPIED" from the transfer library and placed in the appropriate BMS/GT MASTER library. The on-line panel for this task can be accessed by typing "2.2" at the main menu. The transfer library can be bypassed by specifying the symbolics "USER" and "NAME" to identify your BMS/GT Master library. The Master library must be "closed" on-line for this option to work.

WARNING: This utility will not replace a mapset in either the transfer file or your BMS/GT library. Any old versions of a to-be-replaced mapset must be deleted or renamed first. If you want to overlay an existing mapset, just add the keyword "DELETE" to your control card as illustrated below. The delete option should always be used in conjunction with the transfer file.

Example: Convert BMS mapset "MPTEST"

//xxxxxbms JOB (xxxxx,....),'xxx CONVERT',TIME=(,2)
//PROCLIB JCLLIB ORDER=(CICS.PROCLIB.xxx)
//CONV EXEC BMSGCONV
//BMSGT.SYSIN DD *,DCB=CICS.COPYLIB.xxx
 CONVERT MAPSET=MPTEST,LANG=C,PREFIX=MPTEST-,DELETE
// DD DSN=CICS.COPYLIB.xxx(MPTEST),DISP=SHR

Symbolic parameters:

USER       First node of the DSN for the BMS/GT library, defaults to 'NWRV'
NAME The rest of the DSN for the BMS/GT library, default is 'GT.TRANSFER.FILE'
DISP Disposition of the BMS/GT library, default is 'SHR'
CLASS Sysout class for report, default is '*'
FORM SYSOUT form parameter for report, default is '' (null)
COPIES SYSOUT copies parameter for report, default is '1'

BMSGPMAC

This procedure invokes GTBPUNCH, a utility that produces BMS MACROs from BMS/GT library data. Due to extensions provides by BMS/GT some things may not have an equivalent MACRO entry. See the GTBPUNCH section later in this document for additional parameters and restrictions.

Example: Produce and print BMS MACROs for BMS/GT mapset "MPTEST"

//xxxxxbms JOB (xxxxx,....),'xxx PUNCH',TIME=(,2)
//*
//PMAC EXEC BMSGPMAC,USER=NWRV,
//    LIB='II.UUU.MAPS'
//BMSGT.SYSIN DD *
 PUNCH MAPSET=MPTEST,LONGNAME  
//

Symbolic parameters: (r) means required.

USER       (r) First node of the DSN for the BMS/GT library
NAME The rest of the DSN for the BMS/GT library, default is 'GT.MASTER.FILE'
DISP Disposition of the BMS/GT library, default is 'SHR'
CLASS SYSOUT class for report, default is '*'
FORM SYSOUT form parameter for report, default is '' (null)
COPIES SYSOUT copies parameter for report, default is '1'
LIB (r) DSN of the repository of the macros produced. Member name will be the same as the MAPSET name.

The following describes the options supported by this utility. Note that all are controlled by the content of the "PUNCH" parameter card.

(GTBPUNCH) Macro Generator Utility

The MACRO GENERATOR was created for those installations which must distribute their maps to other facilities in source format. This utility reads the BMS/GT library and builds duplicate BMS macro source for distribution purposes. This chapter is intended to help the new user get acquainted with the functions of the MACRO GENERATOR. It has been put together in narrative form with examples to show its ease of use.

During the execution of the MACRO GENERATOR, a listing will be produced showing the macro(s) generated. The macro will be catalogued in the source library or PDS using this MAPSET name. Sample JCL for GTBPUNCH is shown below.
 

FUNCTION     This utility will build the BMS macro from the BMS/GT definitions in the library. The macros can be produced in several variations to accommodate almost any user.
INPUT (Example) PUNCH MAPSET=aaaaaa,STORAGE=bbbb,TYPE=cccc, CNTRL=dddd,TIOAPFX=eeee,LANG=ffff,SUFFIX=g
MAPSET (Required) Specify the MAPSET to be built. If TEST versions of a map exist, then the PRODUCTION version will NOT be included.
CNTRL (Optional) Normally,  IEBUPDTE (OS) cards are built for ease in cataloging the macros to a source library. If you wish these cards NOT be generated, then specify CNTRL=NO (YES is the default).

Note: If the above parameters are the only entries on the PUNCH statement, then the DFHMSD macro will NOT be built. This allows for the user to insert his/her own DFHMSD macro in front of the generated map macros.

STORAGE (Optional) STORAGE=YES or STORAGE=AUTO will generate the appropriate parameter in the DFHMSD macro. Default is STORAGE=NO.
TYPE (Optional) STORAGE=MAP will insert this parameter on the DFHMSD macro. Default is TYPE=DSECT. If you wish TYPE=&SYSPARM, then you must specify TYPE=S or TYPE=SYSPARM.
TIOAPFX (Optional) TIOAPFX=YES will insert this parameter on the DFHMSD macro. Default is TIOAPFX=NO.
LANG (Optional) Specify the language for which the DSECT is to be generated. Valid choices are: ASM, COBOL, PLI, RPG. Default is COBOL.
SUFFIX (Optional) Specify the character to be appended to the MAPSET name. This should be a character defined by your CICS system administrator.
MODE (Optional) Default is MODE=INOUT. BMS/GT defaults to input/output type maps. Specify MODE=IN for input only DSECTS or MODE=OUT for output only DSECTS.
BASE (Optional) Default is none. If you need a BASE entry for your COBOL or PL/I programs use this parameter to specify up to an eight (8) character name. This entry indicates that the same storage base will be used for the symbolic description maps from more than one map set.
PRINT (Optional) Default is PRINT=NO. Use PRINT=YES to turn on the BMS PRINT option. This must be specified if the printer is to be started.
OBFMT (Optional) Default is OBFMT=NO. OBFMT=YES indicates that all maps within this mapset are eligible for use in outboard formatting.
LDC (Optional) Default is none. This entry, LDC=mnemonic, specifies the mnemonic to be used by CICS to determine the logical device code that is to be used by BMS.
LONGNAME (Optional) Tells the utility to produce full field names. Only CICS 3.3 and above support long BMS field names.

In addition to the preceding parameters, the macro generator accepts special card images which are simply 'passed through' to the output file. This allows the user to add special comments, date cards, etc. to the macro assembly. To pass a card image to the spooler, enter a '%' (percent sign) in the first position. If the first position is a '%', the card image will be shifted one position to the left and written to the output file. For example:

%* ASSEMBLY DATE=@DATE
% PUNCH ' XXXXXXXXXXXXXX'
% TITLE 'MAPSET FOR GENERAL LEDGER'

BMSGCATL

Produces the object and symbolic forms of the map as required for use by a CICS application.

Procedure description: A BMS/GT utility produces the object and symbolic maps and these are passed to IEBUPDTE and the Linkage Editor for processing. This is the batch equivalent of the online "SUBMIT" process.

Example: Catal the BMS/GT mapset "MPTEST"

//xxxxxBMS JOB (xxxxx,....),'CATAL',TIME=(,2)
//PROCLIB JCLLIB ORDER=(CICS.PROCLIB.xxx)
//CATAL EXEC BMSGCATL,USER='NWRV'
//BMSGT.SYSIN DD *
 CATAL MAPSET=MPTEST

Symbolic parameters: (r) means required.

USER (r) First node of the DSN for the BMS/GT library
NAME The rest of the DSN for the BMS/GT library, default is 'GT.MASTER.FILE'
DISP Disposition of the BMS/GT library, default is 'SHR'
CLASS SYSOUT class for report, default is '*'
FORM SYSOUT form parameter for report, default is '' (null)
COPIES SYSOUT copies parameter for report, default is '1'
LIB (r) DSN of the repository of the macros produced. Member name will be the same as the MAPSET name.
COPYLIB (r)DSN of the PDS into which the copybook is to be placed.
LOADLIB (r)DSN of the PDS into which the load module is to be placed.

 

Symbolic Parameters Used In Various Compile Procedures

COBOL
Controls the style that the CICS precompiler uses as it transforms EXEC CICS commands to COBOL CALL statements.
Say "COBOL=COBOL2" for the original style.
Say "COBOL=COBOL3" for the new style

COPYLIB,COPYLIB1, COPYLIB2....COPYLIB9
Dataset names of PDS source libraries used to resolve user COPY statements. COPYLIB='III.PRIVATE.COPYLIB'

DBRMLIB
Fixed blocked PDS for storage of the DB2 BIND data. DBRMLIB='III.USER.DBRMLIB'

DEBUG
This default setting for this parameter will include the COBOL line number as part of the CEDF display. May be set to "NODEBUG" for last compile before a move to production. This will result in a smaller load module.

FORM
JES2 form ID, defaults to "STD".

HTMLLIB
The PDS or PDSE that is to contain the generated HTML doctemplate data.

LC
Command level precompiler's "Line Count" value, defaults to 60.

LKSYSL1, LKSYSL2, .... , LKSYSL8
PDS names of  subroutine libraries for linkedit processing.

LOADLIB
DSN of the load library into which the resultant load module should be stored.

MAPLIB
DSN of the source of BMS map copybooks.

MEMBER
The name of your program or map in the CICS test load library. MEMBER=AATTTT

OUTC
Compiler SYSOUT class, defaults to "*".

OUTPC
Precompiler SYSOUT class, defaults to "*".

PANNAME
Defaults to "PANVALET". May be used to specify the last part of the PANVALET dataset name.

SOURCE
Defaults to "SOURCE". May be set to "NOSOURCE" to suppress the precompiler listing.

SRCLIBn
Used to specify the DSNs of the various PDS's for "SQL INCLUDE" statements.

USER
Used to specify the first part of the PANVALET dataset name.


CICS Compile Procedure Update

We are ready to finalize the upgrade to CICS 3.1 by implementing that release’s enhanced COBOL components. This action will allow CICS applications to use the new CICS features like Channels and Containers as well as implement other major changes to the compile process.

What’s New

The most dramatic additions to the CICS application arsenal are:

  • Channels and Containers
  • SOAP implementation with full WSDL support.
  • Integrated pre-compilers for CICS and DB2 (NOTE: The DB2 integrated pre-compiler procedures have been temporarily disabled)

Channels and Containers are the long awaited replacement for the venerable Commarea. No longer must a single 32K limited item be passed between programs and transactions.  Now virtually unlimited amounts of data can be passed between components of a CICS application. The definitive reference on the new Channels and Containers can be found in the IBM Red Book:CICS Transaction Server V3R1 Channels and Containers Revealed.

The CICS support of the SOAP environment means that CICS applications can service WSDL based NET applications without the servers knowing the intricacies of our mainframe environment. They see a fancy XML construct, CICS sees a standard COMMAREA or Container.

This release of CICS allows the elimination of the COBOL and DB2 pre-compiler steps. The advantages of this are significant.

  • Your compile runs are faster and cheaper
  • The source line numbers referenced during debugging will be accurate.
  • You may implement EXEC CICS and EXEC SQL constructs in copybooks with full REPLACING support.

 New Procedures

 Due to the extensive JCL changes required to implement the new integrated pre-compilers, we have provided 4 new compile procedures in support of the new features.

Procedure Name Description
CICOBISL COBOL compile with INTERTEST support from a sequential data set
CIDBCISL COBOL – DB2 compile with INTERTEST support from a sequential data set
CPCOBISL COBOL compile from a sequential data set
CPDBCISL COBOL – DB2 compile from a sequential data set

(Panvalet users will need to prefix their compile JCL with an execution of the PAN1 procedure.)

 COPYLIB Changes in the new PROCs

 The DB2 pre-compiler SYSLIB symbolics SRCLIB1 through SRCLIB8 (used to resolve SQL INCLUDE statements) have not been included in the new integrated compile procedures. Use COPYLIB and COPYLIB1 through COPYLIB7 to specify the set of PDS’s where either COBOL COPY statements or EXEC SQL INCLUDE statements can be resolved.

 Discontinued Procedures

 We have not brought the following PROCS forward

Procedure Name Description
CPCOBMP >COBOL MVS compile from a Panvalet library (No Linkedit)
CPCOBMS COBOL MVS compile from a sequential library  (No Linkedit)
CPMAPP BMS map assembly from a Panvalet library.  (No Linkedit)
CPMAPS BMS map assembly from a sequential library.  (No Linkedit)

 Additional Considerations

 The elimination of the CICS pre-compile step is transparent as far as EXEC CICS syntax is concerned.

 The elimination of the DB2 pre-compiler is not completely transparent as far as EXEC SQL syntax is concerned. 

 DB2 calls their integrated pre-compiler the “DB2 SQL Coprocessor”

 A summary of the syntax differences are:

DB2 pre-compiler DB2 SQL Coprocessor
EXEC SQL INCLUDE EXEC SQL INCLUDE statements do not have to end in a period Treats EXEC SQL INCLUDE statement just like the COBOL COPY command. This adds a requirement for a period (“.”) at the end of each EXEC SQL INCLUDE statement. Note: that required period is stripped after the processing of the COPY statement.
Data following END-EXEC Ignores any code that follows the END-EXEC statement on the same line Does not ignore code that follows the END-EXEC statement on the same line
Unique Host Variables Does not require that host variable references be unique. The first definition that maps to a valid DB2 data type is used. Requires that each host variable reference be unique. The coprocessor diagnoses non-unique references to host variables. You must fully qualify host variable references
Column requirements and continuation rules Requires that EXEC SQL statements start in columns 12 through 72. Continuation lines of the statements can start anywhere in columns 8 through 72 Requires that all lines of an EXEC SQL statement, including continuation lines, be coded in columns 12 through 72.