This section describes run-time options, and how they are used to control execution of your program. You can override some of the global options by:

  • Passing run-time options in the JCL EXEC statement parameter string
  • Specifically including an application-specific run-time options module with your main VS COBOL II program
  • With certain environments, link-editing an application-specific run-time options module with the appropriate library routine

You can control how your program runs in eight ways:

  • Debugging and error handling
  • Dynamic invocation of access method services (AMS)
  • Simulation of variable-length relative-organization data sets
  • Storage control and performance tuning
  • Reusable run-time environment
  • Clear working storage
  • Setting UPSI switches
  • Allowing mixed RES/NORES (Migration Assistance)

Run-time options

  • DEBUG 4*. NODEBUG - NODEBUG suppresses the batch debugging features specified by the USE FOR DEBUGGING declaratives. Debugging lines (D in column 7) are not affected by this option, but are always active if they have been compiled. You must have the WITH DEBUGGING MODE clause in order to compile the debugging sections and debugging lines. DEBUG is the default supplied by IBM.
  • NOSSRANGE & SSRANGE - NOSSRANGE suppresses run-time checking of index, subscript, reference modification and variable length group ranges. NOSSRANGE turns off run-time checking if compiled with SSRANGE. Run-time option SSRANGE is the default supplied by IBM.
  • NOSTAE & STAE - NOSTAE prevents the run-time environment from intercepting an abend. Do not specify NOSTAE if you want COBOL to handle abends by providing a system dump and formatted dumps and then cleaning up the COBOL run-time environment. Neither NOSTAE nor STAE has any effect on run units being executed under the control of the Debug Tool. STAE is the default.
  • AIXBLD & NOAIXBLD - AIXBLD invokes access method services for VSAM indexed data sets (KSDS) to complete the alternate index. When you use AIXBLD include a SYSPRINT DD statement in your job control procedure for access method services messages. The default, NOAIXBLD, is the more common choice. Use NOAIXBLD when you have already built the alternate index. Performance is enhanced with NOAIXBLD. If you use AIXBLD, your program requires more storage for execution.
  • SIMVRD & NOSIMVRD - SIMVRD use a VSAM KSDS to simulate variable length relative organization data sets. NOSIMVRD is the default.
  • LANGUAGE - Used to specify the language and character set for those run-time messages generated prior to the full initialization of the VS COBOL II run time environment.
  • SPOUT & NOSPOUT - SPOUT issues a message, using WTP (write to programmer), describing the amount of storage the COBOL space manager allocated during execution. You can use this information to customize a space-management-tuning table. Application-specific tuning tables can have the effect of reducing the number of times the COBOL space manager must make system requests to acquire free storage. This may result in fewer storage requests (and thus, some performance improvement) for the application. NOSPOUT is the default. The message also includes what run-time options were in effect for the run and what default options were overridden. Under CICS, the message is written to the temporary storage queue, CEBRxxxx, where xxxx is the terminal-id of the transaction. The SPOUT message is not issued when running with the RTEREUS run-time option.
  • LIBKEEP & NOLIBKEEP - LIBKEEP regains the library routines in memory between calls to COBOL RES main programs (until the task terminates). This option improves the performance when COBOL main programs are invoked repeatedly by non-COBOL programs. NOLIBKEEP is the default.
  • RTEREUS & NORTEREUS - RTEREUS implicitly initializes" the run-time environment for reusability when the first COBOL program is invoked. NORTEREUS is the default supplied by IBM.
  • WSCLEAR" & NOWSCLEAR - WSCLEAR clears all External Data records acquired by a program, and the working storage acquired by a RENT program, to binary zeros (except where value clauses are specified). NOWSCLEAR is the default supplied by IBM.
  • UPSI(nnnnnnnn) & UPSl(OOOOOOOO) - Sets the eight UPS1 switches on or off. n represents one UPSI switch between 0 and 7, the leftmost n representing the first switch. Each n can either be 0 (off) or 1 (on). UPS 1(00000000) is the default supplied by IBM.
  • MIXRES & NOMIXRES - MIXRES allows a mixture of RES and NORES compiled programs to run within a single thread. All combinations of RES and NORES, and OS/VS COBOL and VS COBOL II programs are supported. NOMIXRES is the default supplied by IBM.

For options listed above the negative form of the option is listed. This is because, for some run-time options, only the negative form has an effect on execution. Specifying the DEBUG and SSRANGE options at run time is meaningless because these options must be selected at compile time.

Therefore, only the negative form of these options (NODEBUG and NOSSRANGE) has any effect on execution. STAE is always in effect by default for execution, so only the option to turn it off (NOSTAE) has any effect on execution.

When OS/VS COBOL NORES programs are running with the VS COBOL II library and there is no VS COBOL II program involved in the run unit, specifying STAE/NOSTAE, SPOUT/NOSPOUT, or SSRANGE/NOSSRANGE options at run time is meaningless, since they are not OS/VS COBOL run-time options.

Specify run-time options in the PARM parameter of the EXEC statement that starts execution. Code the PARM parameter as follows: FARMS'[user-parameter][/execution-options]'

Where user-parameter is the parameter to be passed to the VS COBOL II program being executed. This parameter is then accessed by a USING phrase in your application program. If the user-parameter in the list contains a slash, add a trailing slash. All data following this second slash is considered to be COBOL run­time options. The last slash and the data following it are passed to the program when the data following the last slash does not contain any valid COBOL run-time options. In this case, the entire PARM parameter is passed to the program and the COBOL run-time message IGZ019I is sent.

If there are no run-time options, failure to add the trailing slash will cause the user-parameter data to the right of the last slash to be treated (erroneously) as run-time options. The Linkage Section record (level-01) that is to receive the user-parameter data passed by the PARM string must be defined, taking into account the halfword length field inserted in front of the string by the system. The program can test this field length for nonzero, to verify that PARM-string data has in fact been passed.

The execution-options is a list of run-time options. A slash must immediately precede the first run­ time option.

All rights reserved © 2018 Wisdom IT Services India Pvt. Ltd Protection Status

IBM Mainframe Topics