Customizing for processing COBOL copybooks

To use the view, edit, copy, print, or data create functions with a COBOL copybook, you need to make a COBOL compiler available to File Manager.

This functionality requires ADATA, therefore the COBOL compiler must have the ADATA capability. COBOL compilers such as VS COBOL II, and OS/COBOL, which do not support ADATA, cannot be used. All currently supported versions of IBM® Enterprise COBOL for z/OS® and OS/390® provide this support, and can therefore be used.

File Manager provides two internal versions of the COBOL compiler, for use in preference to a supported COBOL compiler, or when a supported COBOL compiler is not available, (for example, if you are using File Manager in a production environment, where the COBOL compiler is not used). These compilers are installed into FMN.SFMNMOD1, if you installed File Manager into the default libraries, with load modules named FMN8xxxx or FMN9xxxx. (The File Manager COBOL compilers are reduced-function compilers and cannot be used to generate executable COBOL programs.)

The File Manager COBOL compiler to be used is selected with the ALTCOB option. See the table Available COBOL compilers for details.

The following table indicates the checking sequence to determine which COBOL compiler will be used.
Table 1. COBOL compiler order of precedence
Option Version COBOL Module Notes
FMNCOB DD DUMMY Internal FMNxRCTL Can be allocated in job step, TSO procedure, or via ALLOC.
FMNCOB DD DSN=compiler library External IGYCRCTL Can be allocated in job step, TSO procedure, or via ALLOC.
RACROUTE STATUS=ACCESS FACILITY Class Profile FILEM.COBOL.INTERNAL READ access or higher Internal FMNxRCTL Forces File Manager to use internal compiler.
If none of the above, File Manager will LOAD module IGYCRCTL Local site licensed compiler External IGYCRCTL This is the default compiler.
If IGYCRCTL load fails, File Manager will load module FMNxRCTL Internal FMNxRCTL See the table, Available COBOL compilers, under the ALTCOB option for internal COBOL versions provided.
Note:
  • External refers to licensed site COBOL compiler (IGYCRCTL).
  • Internal refers to the cutdown COBOL compiler shipped with File Manager (FMN8RCTL or FMN9RCTL).
File Manager will use its own COBOL compiler when a supported COBOL compiler cannot be accessed, or when it encounters this DD statement for FMNCOB:
//FMNCOB DD DUMMY

Normally, if a supported COBOL compiler is found, this will be used. If a supported COBOL compiler cannot be found then the File Manager COBOL compiler will be used.

However, on occasions, even if a supported COBOL compiler is available, you may want to use the File Manager COBOL compiler, for example, if you are asked to do so by IBM® support.

For information about using a supported COBOL compiler, see Using a licensed site COBOL compiler. For more information about using the File Manager internal COBOL compiler, see Using the File Manager COBOL compiler.

Use the SHOWCOB command to check whether File Manager is using its internal COBOL compiler or another compiler.

  • In batch, submit a File Manager batch job with this control statement:
    $$FILEM SHOWCOB
    If a licensed, supported COBOL compiler is available to File Manager, the job output will show:
    FMN0024I The Customer Licensed COBOL Compiler will be used.
    If File Manager is using its own COBOL compiler, the job output will show:
    FMN0023I The File Manager supplied COBOL Compiler will be used
  • Under ISPF, enter SHOWCOB on any File Manager command line. If a licensed, supported COBOL compiler is available to File Manager, this message is displayed:
    Using Licensed COBOL
    If File Manager is using its own COBOL compiler, this message is displayed:
    The File Manager supplied COBOL Compiler will be used
Note: Additional messages will be produced detailing why the File Manager COBOL compiler is being used.

Note that your COBOL compiler must be both licensed and supported. If you are using a licensed, non-supported compiler (for example, a licensed version of VS COBOL II), the message will still be: Using Licensed COBOL but any attempt to compile copybooks will fail.