ILE COBOL Programmer's Guide
A description of the parameters for the CRTCBLMOD command are defined in
this section. The parameters and options are described in the order
they appear on the prompt displays.
The default values are displayed first, and are underscored for
identification.
All object names specified for the CRTCBLMOD command must follow
iSeriesnaming conventions: the names may be basic names, ten characters
in length, composed of alphanumeric characters, the first of which must be
alphabetic; or the names may be quoted names, eight characters in length,
enclosed in double quotes.
You can specify various compiler options by using the OPTION parameter of
the CRTCBLMOD command or from within the source program using the PROCESS
statement. Any options specified in the PROCESS statement override the
corresponding options on the CRTCBLMOD command.
- MODULE Parameter:
- Specifies the module name and library name for the module object you are
creating. The module name and library name must conform to iSeries
naming conventions. The possible values are:
- *PGMID
- The name for the module is taken from the PROGRAM-ID paragraph in
the outermost ILE COBOL source program of the compilation unit.
- module-name
- Enter a name to identify the compiled ILE COBOL module. If
you specify a module name for this parameter, and compile a sequence of
source programs (multiple compilation units in a single source file
member) the first module in the sequence uses this name; any other
modules use the name specified in the PROGRAM-ID paragraph in the
corresponding outermost ILE COBOL source program of the compilation
unit.
The possible library values are:
- *CURLIB
- The created module object is stored in the current library.
If you have not assigned a library as the current library, QGPL is
used.
- library-name
- Enter the name of the library where the created module object is to
be stored.
- SRCFILE Parameter:
- Specifies the name of the source file and library that contains the ILE
COBOL source code to be compiled. This source file should have a record
length of 92. The possible values are:
- QCBLLESRC
- Specifies that the source file, QCBLLESRC, contains the ILE COBOL
source code to be compiled.
- source-file-name
- Enter the name of the source file that contains the ILE COBOL source
code to be compiled.
The possible library values are:
- *LIBL
- The library list is searched to find the library where the source
file is located.
- *CURLIB
- The current library is used. If you have not assigned a
library as the current library, QGPL is used.
- library-name
- Enter the name of the library where the source file is
located.
- SRCMBR Parameter:
- Specifies the name of the member that contains the ILE COBOL source code
to be compiled. You can specify this parameter only if the source file
referred to in the SRCFILE parameter is a database file. The possible
values are:
- *MODULE
- The source file member with the same name as the module name
specified on the MODULE parameter, is used.
If you do not specify a module name for the MODULE parameter, the first
member of the database source file is used.
- source-file-member-name
- Enter the name of the member that contains the ILE COBOL source
code.
- SRCSTMF Parameter:
- Specifies the path name of the stream file containing the ILE COBOL source
code to be compiled. The path name can be either absolutely or
relatively qualified. An absolute path name starts with
'/'; a relative path name starts with a character other than
'/'. If absolutely-qualified, the path name is
complete. If relatively-qualified, the path name is completed by
appending the job's current working directory to the path name.
The SRCMBR and SRCFILE parameters cannot be specified with the SRCSTMF
parameter.
- OUTPUT Parameter:
- Specifies if the compiler listing is generated or not. The possible
values are:
- *PRINT
- A compiler listing is generated. If a member is being compiled, the output file has the same name as
the member. If a stream file is being compiled and *PGMID is specified
in the PGM parameter, the output file has the name COBOLPGM00.
Otherwise, it has the same name as the program.
- *NONE
- No compiler listing is generated.
- GENLVL Parameter:
- Specifies the severity level that determines if a module object is
created. The severity level corresponds to the severity level of the
messages produced during compilation. This parameter applies
individually to each compilation unit in a source file member. Other
compilation units in the source file member will still be compiled even if a
previous compilation unit fails.
The possible values are:
- 30
- No module object is created if errors occur with a severity level
equal to or greater than 30.
- severity-level
- Specify a one or two-digit number, 0 through 30, which is the
severity level you want to use to determine if a module object is to be
created. No module object is created if errors occur with a severity
level equal to or greater than this severity level.
- TEXT Parameter:
- Allows you to enter text that briefly describes the module and its
function.
- *SRCMBRTXT
- The same text that describes the database file member containing the
ILE COBOL source code, is used to describe the module object. If the
source comes from a device or inline file, specifying *SRCMBRTXT has the same
effect as specifying *BLANK.
- *BLANK
- No text is specified.
- text-description
- Enter text briefly describing the module and its function.
The text can be a maximum of 50 SBCS characters in length and must be enclosed
in single quotation marks. The single quotation marks are not part of
the 50-character string.
- OPTION
Parameter:
- Specifies the options to use when the ILE COBOL source code is
compiled.
Options specified in the PROCESS statement of an ILE COBOL source program
override the corresponding options of the OPTION parameter.
The possible values of the OPTION parameter are:
- *SOURCE or *SRC
- The compiler produces a source listing, consisting of the ILE COBOL
source program and all compile-time error messages.
- *NOSOURCE or *NOSRC
- The compiler does not produce the source part of the listing.
If you do not require a source listing, you should use this option because
compilation may take less time.
- *NOXREF
- The compiler does not produce a cross-reference listing for the ILE
COBOL source program.
- *XREF
- The compiler produces a cross-reference listing for the source
program.
- *GEN
- The compiler creates a module object after the ILE COBOL source is
compiled.
- *NOGEN
- The compiler does not create a module object after the ILE COBOL
source program is compiled. You might specify this option if you want
only error messages or listings.
- *NOSEQUENCE
- The reference numbers are not checked for sequence errors.
- *SEQUENCE
- The reference numbers are checked for sequence errors.
Sequence errors do not occur if the *LINENUMBER option is specified.
- *NOVBSUM
- Verb usage counts are not printed.
- *VBSUM
- Verb usage counts are printed.
- *NONUMBER
- The source-file sequence numbers are used for reference
numbers.
- *NUMBER
- The user-supplied sequence numbers (columns 1 through 6) are used
for reference numbers.
- *LINENUMBER
- The sequence numbers created by the compiler are used for reference
numbers. This option combines ILE COBOL program source code and source
code introduced by COPY statements into one consecutively numbered
sequence. Use this option if you specify FIPS (Federal Information
Processing Standards) flagging.
- *NOMAP
- The compiler does not list the Data Division map.
- *MAP
- The compiler lists the Data Division map.
- *NOOPTIONS
- Options in effect are not listed for this compilation.
- *OPTIONS
- Options in effect are listed for this compilation.
- *QUOTE
- Specifies that the delimiter quotation mark (") is used for
nonnumeric literals, hexadecimal literals, and Boolean literals. This
option also specifies that the value of the figurative constant QUOTE has the
EBCDIC value of a quotation mark.
- *APOST
- Specifies that the delimiter apostrophe (') is used for
nonnumeric literals, hexadecimal literals, and Boolean literals. This
option also specifies that the value of the figurative constant QUOTE has the
EBCDIC value of an apostrophe.
- *NOSECLVL
- Second level message text is not listed for this compilation.
- *SECLVL
- Second level message text is listed for this compilation, along with
the first-level error text, in the message section of the compiler
listing.
- *PRTCORR
- Comment lines are inserted in the compiler listing indicating which
elementary items were included as a result of the use of the CORRESPONDING
phrase.
- *NOPRTCORR
- Comment lines are not inserted in the compiler listing when the
CORRESPONDING phrase is used.
- *MONOPRC
- The program-name (literal or word) found in the PROGRAM-ID
paragraph, the CALL, CANCEL, or SET ENTRY statements, and the END PROGRAM
header is converted to all uppercase characters (monocasing) and the rules for
program-name formation are enforced.
- *NOMONOPRC
- The program-name (literal or word) found in the PROGRAM-ID
paragraph, the CALL, CANCEL, or SET ENTRY statements, and the END PROGRAM
header is not converted to all uppercase characters (no monocasing) and the
rules for program-name formation are not enforced. This option allows
special characters not allowed for standard COBOL to be used in the CALL
target.
- *RANGE
- At run time, subscripts are verified to ensure they are within the
correct ranges, but index ranges are not verified. Reference
modification and compiler-generated substring operations are also
checked.
The contents of date-time items are checked to make sure their format is
correct, and that they represent a valid date, time, or timestamp.
- *NORANGE
- Ranges are not verified at run time.
- Note:
- The *RANGE option generates code for checking subscript ranges. For
example, it ensures that you are not attempting to access the element 21 of a
20-element array.
The *NORANGE option does not generate code to check subscript
ranges. As a result, the *NORANGE option produces faster running
code.
- *NOUNREF
- Unreferenced data items are not included in the compiled
module. This reduces the amount of storage used, allowing a larger
program to be compiled. You cannot look at or assign to an unreferenced
data item during debugging when the *NOUNREF option is chosen. The
unreferenced data items still appear in the cross-reference listings produced
by specifying OPTION (*XREF).
- *UNREF
- Unreferenced data items are included in the compiled module.
- *NOSYNC
- The SYNCHRONIZED clause is syntax checked only.
- *SYNC
- The SYNCHRONIZED clause is compiled by the compiler. The
SYNCHRONIZED clause causes the position of a data item to be aligned such that
the right-hand (least-significant) end is on the natural storage
boundary. The natural storage boundary is the next nearest 4-byte,
8-byte, or 16-byte boundary in storage depending on the length and type of
data being stored. Extra storage is reserved adjacent to the
synchronized item to achieve this alignment. Each elementary data item
that is described as SYNCHRONIZED is aligned to the natural storage boundary
that corresponds to its data storage assignment.
- *NOCRTF
- Disk files that are unavailable at the time of an OPEN operation are
not created dynamically.
- *CRTF
- Disk files that are unavailable at the time of an OPEN operation are
created dynamically.
- Note:
- The maximum record length for a file that will be created dynamically is
32 766. Indexed files will not be dynamically created even though
the *CRTF option has been specified.
- *NODUPKEYCHK
- Does not check for duplicate primary keys for INDEXED files.
- *DUPKEYCHK
- Checks for duplicate primary keys for INDEXED files.
- *NOINZDLT
- Relative files with sequential access are not initialized with
deleted records during the CLOSE operation if the files have been opened for
OUTPUT. The record boundary is determined by the number of records
written at OPEN OUTPUT time. Subsequent OPEN operations allow access
only up to the record boundary.
- *INZDLT
- Relative files with sequential access are initialized with deleted
records during the CLOSE operation if the files were opened for OUTPUT.
Active records in the files are not affected. The record boundary is
defined as the file size for subsequent OPEN operations.
- *NOBLK
- The compiler allows blocking only of SEQUENTIAL access files with no
START statement. The BLOCK CONTAINS clause, if specified, is ignored,
except for tape files.
- *BLK
- When *BLK is used and a BLOCK CONTAINS clause is specified, the
compiler allows blocking for DYNAMIC access files and SEQUENTIAL access files
with a START statement. Blocking is not allowed for RELATIVE files
opened for output operations. The BLOCK CONTAINS clause controls the
number of records to be blocked.
When *BLK is used and no BLOCK CONTAINS clause is specified, the compiler
allows blocking only of SEQUENTIAL access files with no START
statement. The operating system determines the number of records to be
blocked.
- *STDINZ
- For those items with no VALUE clause, the compiler initializes data
items to default values. The value assigned to each area of storage of
the first level-01 or level-77 data item that occupies the area.
- *NOSTDINZ
- For those items with no VALUE clause, the compiler does not
initialize data items to system defaults.
- *STDINZHEX00
- For those items with no VALUE clause, the compiler initializes data
items to hexadecimal zero.
- *NODDSFILLER
- If no matching fields are found by a COPY DDS statement, no field
descriptions are generated.
- *DDSFILLER
- If no matching fields are found by a COPY DDS statement, a single
character FILLER field description, "07 FILLER PIC X", is always
created.
- *NOIMBEDERR
- Error messages are not included in the source listing section of the
compiler listing. Error messages only appear in the error message
section of the compiler listing.
- *IMBEDERR
- First level error messages are included in the source listing
section of the compiler listing, immediately following the line where the
error occurred. Error messages also appear in the error message section
of the compiler listing.
- *STDTRUNC
- This option applies only to USAGE BINARY data. When *STDTRUNC
is selected, USAGE BINARY data is truncated to the number of digits in the
PICTURE clause of the BINARY receiving field.
- *NOSTDTRUNC
- This option applies only to USAGE BINARY data. When
*NOSTDTRUNC is selected, BINARY receiving fields are truncated only at
half-word, full-word, or double-word boundaries. BINARY sending fields
are also handled as half-words, full-words, or double-words. Thus, the
full binary content of the field is significant. Also, the DISPLAY
statement will convert the entire content of a BINARY field, with no
truncation.
- Note:
- *NOSTDTRUNC has no effect on the VALUE clause.
- *NOCHGPOSSGN
- Hexadecimal F is used as the default positive sign for zoned and
packed numeric data. Hexadecimal F is the system default for the OS/400
operating system.
- *CHGPOSSGN
- Hexadecimal C is used as the default positive sign for zoned and
packed numeric data. This applies to all results of the MOVE, ADD,
SUBTRACT, MULTIPLY, DIVIDE, COMPUTE, and INITIALIZE statements, as well as the
results of the VALUE clause.
- *NOEVENTF
- Do not create an Event File for use by CoOperative Development
Environment/400 (CODE/400). CODE/400 uses this file to provide error
feedback integrated with the CODE/400 editor. An Event File is normally
created when you create a module or program from within CODE/400.
- *EVENTF
- Create an Event File for use by CODE/400. The Event File is created
as a member in file EVFEVENT in the library where the created module or
program object is to be stored. If the file EVFEVENT does not exist it
is automatically created. The Event File member name is the same as the
name of the object being created.
CODE/400 uses this file to provide error feedback integrated with the
CODE/400 editor. An Event File is normally created when you create a
module or program from within CODE/400.
- *MONOPIC
- All alphabetic characters in a PICTURE character-string will be
converted to uppercase (monocasing).
- *NOMONOPIC
- The currency symbol used in the PICTURE character-string is case
sensitive. That is, the lowercase letters corresponding to the
uppercase letters for the PICTURE symbols A, B, E, G, N, P, S, V, X, Z, CR,
and DB are equivalent to their uppercase representations in a PICTURE
character-string. All other lowercase letters are not equivalent to
their corresponding uppercase representations.
- *NOCRTARKIDX
- Temporary alternate record key (ARK) indexes are not created if
permanent ones cannot be found.
- *CRTARKIDX
- Temporary alternate record key (ARK) indexes are created if
permanent ones cannot be found.
- CVTOPT
Parameter:
- Specifies how the compiler handles date, time, and timestamp field types,
DBCS-graphic field type, variable-length field types, and floating-point field
types passed from externally-described files to your program through COPY
DDS. The possible values are:
- *NOVARCHAR
- Variable-length fields are declared as FILLER fields.
- *VARCHAR
- Variable-length fields are declared as group items, and are
accessible to the ILE COBOL source program.
- *NODATETIME
- Date, time, and timestamp data items are declared as FILLER
fields.
- *DATETIME
- Date, time, and timestamp DDS data items are given COBOL data item
names based on their DDS names. The category of the COBOL data item is
alphanumeric, unless one of the CVTOPT parameter values *DATE, *TIME, or
*TIMESTAMP is specified. In this case, the category of the COBOL data
item is date, time, or timestamp, respectively.
- *NOPICXGRAPHIC
- DBCS-graphic data items are declared as FILLER fields.
- *PICXGRAPHIC
- Fixed-length DBCS-graphic data items are declared as fixed-length
alphanumeric fields, and are accessible to the ILE COBOL source
program.
When the *VARCHAR option is also in use, variable-length DBCS-graphic data
items are declared as fixed-length group items, and are accessible to the ILE
COBOL source program.
- *PICGGRAPHIC
- Fixed-length DBCS-graphic data items are declared as fixed-length G
fields, and are accessible to the ILE COBOL source program.
When the *VARCHAR option is also in use, variable-length DBCS-graphic data
items are declared as fixed-length group items (made of a numeric field
followed by G type field), and are accessible to the ILE COBOL source
program.
- *NOPICGGRAPHIC
- DBCS-graphic data items are declared as FILLER fields.
*NOPICGGRAPHIC will be printed as *NOPICXGRAPHIC in the listing.
- *PICNGRAPHIC
- Fixed-length graphic data items associated with CCSID 13488 are
declared as fixed-length N fields, and are accessible to the ILE COBOL source
program.
When the *VARCHAR option is also in use, variable-length graphic data items
with CCSID 13488 are declared as fixed-length group items (made of a numeric
field followed by N type field), and are accessible to the ILE COBOL source
program.
- *NOPICNGRAPHIC
- The processing of graphic fields depends upon the values specified
for the PICXGRAPHIC/NOPICXGRAPHIC and PICGGRAPHIC/NOPICGGRAPHIC
options.
- *NOFLOAT
-
Floating-point data items are declared as FILLER fields with a USAGE of
binary.
- *FLOAT
- Floating-point data items are brought into the program with their DDS
names and a USAGE of COMP-1 (single-precision) or COMP-2
(double-precision). The fields are made accessible to the ILE COBOL
source program.
- *NODATE
- Date data items are declared as category alphanumeric COBOL data items,
for example:
06 FILLER PIC X(10).
The COBOL data item name is determined by the *NODATETIME/*DATETIME CVTOPT
parameter.
- *DATE
- DDS date data items are declared as category date COBOL data items, for
example:
06 FILLER FORMAT DATE '@Y-%m-%d'.
The COBOL data item name is determined by the *NODATETIME/*DATETIME CVTOPT
parameter.
- *NOTIME
- DDS time data items are declared as category alphanumeric COBOL data
items, for example:
06 FILLER PIC X(8).
The COBOL data item name is determined by the *NODATETIME/*DATETIME CVTOPT
parameter.
- *TIME
- DDS time data items are declared as category time COBOL data items, for
example:
06 FILLER FORMAT TIME '%H:%M:%S'.
The COBOL data item name is determined by the *NODATETIME/*DATETIME CVTOPT
parameter.
- *NOTIMESTAMP
- DDS timestamp data items are declared as category alphanumeric COBOL data
items, for example:
06 FILLER PIC X(26).
The COBOL data item name is determined by the *NODATETIME/*DATETIME CVTOPT
parameter.
- *TIMESTAMP
- DDS timestamp data items are declared as category timestamp COBOL data
items, for example:
06 FILLER FORMAT TIMESTAMP.
The COBOL data item name is determined by the *NODATETIME/*DATETIME CVTOPT
parameter.
- *NOCVTTODATE
- DDS data items with the DATFMT keyword (excluding DDS date data items) are
declared in ILE COBOL based on their original DDS type.
- *CVTTODATE
- DDS data items with the DATFMT keyword (excluding DDS date data items) are
declared in ILE COBOL as date data items. For more information about
using the *CVTTODATE option, refer to Specifying Date, Time, and Timestamp Data Types.
- MSGLMT Parameter:
- Specifies the maximum number of messages of a given error severity level
that can occur for each compilation unit before compilation stops. As
soon as one compilation unit reaches the maximum, compilation stops for the
entire source member.
For example, if you specify 3 for the maximum number of messages and 20 for
the error severity level then compilation will stop if three or more errors
with a severity level of 20 or higher occur. If no messages equal or
exceed the given error severity level, compilation continues regardless of the
number of errors encountered.
- number-of-messages
- Specifies the maximum number of messages. The possible values
are:
- *NOMAX
- Compilation continues until normal completion regardless of the
number of errors encountered.
- maximum-number
- Specifies the maximum number of messages that can occur at or above
the specified error severity level before compilation stops. The valid
range is 0-9999.
- message-limit-severity
- Specifies the error severity level used to determine whether or not to
stop compilation. The possible values are:
- 30
- Compilation stops if the number of errors with severity level 30 or
higher exceeds the maximum number of messages specified.
- error-severity-level
- Enter a one or two-digit number, 0 through 30, which is the error
severity level you want to use to determine whether or not to stop
compilation. Compilation stops if the number of errors with this
severity level or higher exceeds the maximum number of messages you
specified.
- DBGVIEW Parameter:
- Specifies options that control which views of the source program or
generated listing are available for debugging the compiled module. The
possible values are:
- *STMT
- The compiled module can be debugged using symbolic names and
statement numbers.
- *SOURCE
- The primary source member, as well as copied source members which
were included through COPY statements, will have source views available for
debugging the compiled module. These views are available only if the
primary source member and copied source members come from local database
source files. Do not change or delete members during the time between
compile and debug.
- *LIST
- A listing view, which shows the source code after the processing of
any COPY and REPLACE statements, will be made available for debugging the
compiled module. This option increases the size of the compiled module,
without affecting the runtime performance of the compiled module.
The listing view will include the cross-reference listing, Data Division
map, and verb usage counts when the corresponding compiler options are
requested. For example, a cross-reference listing will be included if
OPTION(*XREF) is specified.
Listing views can be generated regardless of where the primary source
members or copied source members come from. Listing views are not
affected by changes to or deletion of the source members following the
compilation.
- *ALL
- Equivalent to specifying *STMT, *SOURCE, and *LIST combined.
- *NONE
- The compiled module cannot be debugged. This reduces the size
of the compiled program, but does not affect its runtime performance.
When this option is specified, a formatted dump can not be taken.
- OPTIMIZE Parameter:
- Specifies the level of optimization of the module. The possible
values are:
- *NONE
- No optimization is performed on the compiled module.
Compilation time is minimized when this option is used. This option
allows variables to be displayed and changed during debugging.
- *BASIC
- Some optimization (only at the local block level) is performed on
the compiled module. This option allows user variables to be displayed
but not changed during debugging.
- *FULL
- Full optimization (at the global level) is performed on the compiled
module. This optimization increases compilation time but also generates
the most efficient code. This option allows user variables to be
displayed but not changed during debugging. The displayed values of the
variables may not be their current values. Some variables may not be
displayable.
- Note:
- Regardless of the optimization level chosen, all information to allow full
optimization is generated. The user can change optimization levels of
the module object from *NONE to *FULL using the CHGMOD command without having
to recompile the source program.
- FLAGSTD
Parameter:
- Specifies the options for FIPS flagging. (Select the *LINENUMBER
option to ensure that the reference numbers used in the FIPS messages are
unique.) The possible values are:
- *NOFIPS
- The ILE COBOL source program is not FIPS flagged.
- *MINIMUM
- FIPS flag for minimum subset and higher.
- *INTERMEDIATE
- FIPS flag for intermediate subset and higher.
- *HIGH
- FIPS flag for high subset.
- *NOOBSOLETE
- Obsolete language elements are not flagged.
- *OBSOLETE
- Obsolete language elements are flagged.
- EXTDSPOPT Parameter:
- Specifies the options to use for extended ACCEPT and extended DISPLAY
statements for workstation I/O. The possible values are:
- *DFRWRT
- Extended DISPLAY statements are held in a buffer until an extended
ACCEPT statement is encountered, or until the buffer is filled.
The contents of the buffer are written to the display when the extended
ACCEPT statement is encountered or the buffer is full.
- *NODFRWRT
- Each extended DISPLAY statement is performed as it is
encountered.
- *UNDSPCHR
- Displayable and undisplayable characters are handled by extended
ACCEPT and extended DISPLAY statements.
- *NOUNDSPCHR
- Only displayable characters are handled by extended ACCEPT and
extended DISPLAY statements.
Although you must use this option for display stations attached to remote
3174 and 3274 controllers, you can also use it for local workstations.
If you do use this option, your data must contain displayable characters
only. If the data contains values less than hexadecimal 20, the results
are not predictable, ranging from unexpected display formats to severe
errors.
- *ACCUPDALL
- All types of data are predisplayed in the extended ACCEPT statements
regardless of the existence of the UPDATE phrase.
- *ACCUPDNE
- Only numeric edited data are predisplayed in the extended ACCEPT
statements that do not contain the UPDATE phrase.
- FLAG Parameter:
- Specifies the minimum severity level of messages that will appear in the
compiler listing. The possible values are:
- 0
- All messages will appear in the compiler listing.
- severity-level
- Enter a one or two-digit number that specifies the minimum severity
level of messages that you want to appear in the compiler listing.
Messages that have severity levels of this specified value or higher will
appear in the compiler listing.
- REPLACE Parameter:
- Specifies if a new module is created when a module of the same name in the
specified or implied library already exists. The possible values
are:
- *YES
- A new module is created and it replaces any existing module of the
same name in the specified or implied library. The existing module of
the same name in the specified or implied library is moved to library
QRPLOBJ.
- *NO
- A new module is not created if a module of the same name already
exists in the specified or implied library. The existing module is not
replaced, a message is displayed, and compilation stops.
- AUT Parameter:
- Specifies the authority given to users who do not have specific authority
to the module object, who are not on the authorization list, or whose group
has no specific authority to the module object. You can change the
authority for all users, or for specific users after the module object is
created by using the GRTOBJAUT (Grant Object Authority) or RVKOBJAUT (Revoke
Object Authority) commands.
The possible values are:
- *LIBCRTAUT
- The public authority for the object is taken from the CRTAUT keyword
of the target library (the library that is to contain the created module
object). This value is determined when the module object is
created. If the CRTAUT value for the library changes after the module
object is created, the new value does NOT affect any existing objects.
- *ALL
- Provides authority for all operations on the module object except
those limited to the owner or controlled by authorization list management
authority. The user can control the module object's existence,
specify security for it, change it, and perform basic functions on it, but
cannot transfer its ownership.
- *CHANGE
- Provides all data authority and the authority for performing all
operations on the module object except those limited to the owner or
controlled by object authority and object management authority. The
user can change the object and perform basic functions on it.
- *USE
- Provides object operational authority and read authority;
authority for basic operations on the module object. The user can
perform basic operations on the object but is prevented from changing the
object.
- *EXCLUDE
- The user cannot access the module object.
- authorization-list-name
- The name of an authorization list of users and authorities to which
the module is added. The module object is secured by this authorization
list, and the public authority for the module object is set to *AUTL.
The authorization list must exist on the system when the CRTCBLMOD command is
issued. Use the Create Authorization List (CRTAUTL) command to create
your own authorization list.
- LINKLIT Parameter:
- Specifies the linkage type for external CALL/CANCEL 'literal'
target and the SET ENTRY target. You may override this option for
specific external CALL/CANCEL 'literal' target and the SET ENTRY
target lists by specifying the following sentence in the SPECIAL-NAMES
paragraph:
LINKAGE TYPE IS implementer-name FOR target-list.
The possible values for LINKLIT are:
- *PGM
- Target for CALL/CANCEL or SET ENTRY is a program object.
- *PRC
- Target for CALL/CANCEL or SET ENTRY is an ILE procedure.
- TGTRLS
Parameter:
- Specifies the release of the operating system on which you intend to use
the object being created. In the examples given for the *CURRENT and
*PRV values, and when specifying the target-release value, the
format VxRxMx is used to specify the release, where Vx is the version, Rx is
the release, and Mx is the modification level. For example, V2R3M0 is
version 2, release 3, modification level 0.
Valid values for this parameter change every release. The possible
values are:
- *CURRENT
- The object is to be used on the release of the operating system
currently running on the system. For example, if V2R3M5 is running on
the system, *CURRENT means that you intend to use the object on a system with
V2R3M5 installed. The object can also be used on a system with any
subsequent release of the operating system installed.
- Note:
- If V2R3M5 is running on the system, and the object is to be used on a system
with V2R3M0 installed, specify TGTRLS(V2R3M0), not TGTRLS(*CURRENT).
- *PRV
- The object is to be used on the previous release with modification
level 0 of the operating system. For example, if V2R3M5 is running on
the system, *PRV means that you intend to use the object on a system with
V2R2M0 installed. You can also use the object on a system with any
subsequent release of the operating system installed.
- target-release
- Specify the release in the format VxRxMx. The object can be used on
a system with the specified release or with any subsequent release of the
operating system installed.
Valid values depend on the current version, release, and modification
level, and they change with each new release. If you specify a
target-release that is earlier than the earliest release level
supported by this command, an error message is sent indicating the earliest
supported release.
- Note:
- The current version of the command may support options that are not available
in previous releases of the command. If the command is used to create
objects that are to be used on a previous release, it will be processed by the
compiler appropriate to that release, and any unsupported options will not be
recognized. The compiler will not necessarily issue any warnings
regarding options that it is unable to process.
- SRTSEQ Parameter:
- Specifies the sort sequence used when NLSSORT is associated with an
alphabet-name in the ALPHABET clause. The SRTSEQ parameter is used in
conjunction with the LANGID parameter to determine which system-defined or
user-defined sort sequence table the module will use. The possible
values are:
- *HEX
- No sort sequence table will be used, and the hexadecimal values of
the characters will be used to determine the sort sequence.
- *JOB
- The sort sequence will be resolved and associated with the module at
compile time using the sort sequence of the compile job. The sort
sequence table of the compile job must exist in the system at compile
time. If at run time, the CCSID of the runtime job differs from the
CCSID of the compile time job, the sort sequence table loaded at compile time
is converted to match the CCSID of the runtime job.
- *JOBRUN
- The sort sequence of the module will be resolved and associated with
the module at run time. This value allows a module to be compiled once
and used with different sort sequences at run time.
- *LANGIDUNQ
- Specifies that the sort sequence table being used must contain a
unique weight for each character in the code page. The sort sequence
table used will be the unique weighted table associated with the language
specified in the LANGID parameter.
- *LANGIDSHR
- Specifies that the sort sequence table being used can contain the
same weight for multiple characters in the code page. The sort sequence
table used will be the shared weighted table associated with the language
specified in the LANGID parameter.
- table-name
- Enter the name of the sort sequence table to be used. The
table contains weights for all characters in a given code page. A
weight is associated with the character that is defined at the code
point. When using a sort sequence table name, the library in which the
object resides can be specified. The valid values for the library
are:
- *LIBL
- The library list is searched to find the library where the sort
sequence table is located.
- *CURLIB
- The current library is used. If you have not assigned a
library as the current library, QGPL is used.
- library-name
- Enter the name of the library where the sort sequence table is
found.
- LANGID Parameter:
- Specifies the language identifier which is used in conjunction with the
sort sequence. The LANGID parameter is used only when the SRTSEQ value
in effect is *LANGIDUNQ or *LANGIDSHR. The possible values are:
- *JOBRUN
- The language identifier of the module will be resolved at run
time. This value allows a module to be compiled once and used with
different language identifiers at run time.
- *JOB
- The language identifier of the module will be resolved at compile
time by using the language identifier of the compile job.
- language-identifier-name
- Enter a valid 3-character language identifier.
- ENBPFRCOL Parameter:
- Specifies whether performance measurement code should be generated
in the module or program. The data collected can be used by the system
performance tool to profile an application's performance.
Generating the addition of the performance measurement code in a compiled
module or program will result in slightly larger objects and may affect
performance.
- *PEP
- Performance statistics are gathered on the entry and exit of the program
entry procedure only. Choose this value when you want to gather overall
performance information for an application. This support is equivalent
to the support formally provided with the TPST tool. This is the
default.
- *ENTRYEXIT
- Performance Statistics are gathered on the entry and exit of all the
procedures of the program. This includes the program PEP
routine.
This choice would be useful if you want to capture information on all
routines. Use this option when you know that all the programs called by
your application were compiled with either the *PEP, *ENTRYEXIT or *FULL
option. Otherwise, if your application calls other programs that are
not enabled for performance measurement, the performance tool will charge
their use of resources against your application. This would make it
difficult for you to determine where resources are actually being used.
- *FULL
- Performance statistics are gathered on the entry and exit of all
procedures. Also statistics are gathered before and after each call to
an external procedure.
Use this option when you think that your application will call other
programs that were not compiled with either *PEP, *ENTRYEXIT or *FULL.
This option allows the performance tools to distinguish between resources that
are used by your application and those used by programs it calls (even if
those programs are not enabled for performance measurement). This
option is the most expensive, but allows for selectively analyzing various
programs in an application.
- PRFDTA
Parameter:
- Specifies the program profiling data attribute for the module.
Program profiling is an advanced optimization technique used to reorder
procedures and code within the procedures based on statistical data (profiling
data). For more information about collecting profiling data, refer to Collecting Profiling Data.
- *NOCOL
- This module is not enabled to collect profiling data. This is the
default.
- *COL
- This module is enabled to collect profiling data.
- Note:
- *COL can be specified only when the optimization level of the module is
*FULL.
- CCSID Parameter:
- Specifies the coded character set identifier (CCSID) that records in
files, and data associated with LOCALEs, are converted to at run time.
- *JOBRUN
- The CCSID of the program is resolved at run time. When the compiled
program is run, the current job's CCSID is used.
- *JOB
- The current job's CCSID at compile time is used.
- *HEX
- The CCSID 65535 is used, which indicates that data in the fields is
treated as bit data, and is not converted.
- coded-character-set-identifier
- Specifies the CCSID to be used.
- ARITHMETIC Parameter:
- Specifies the arithmetic mode for numeric data. The possible values
are:
- *NOEXTEND
- This option specifies the default arithmetic mode for numeric data.
The intermediate result of a fixed-point arithmetic expression can be up to 30
digits and numeric literals may only have a maximum length of 18
digits.
- *EXTEND31
- Use this option to increase the precision of intermediate results for
fixed-point arithmetic. The intermediate result of a fixed-point
arithmetic expression can be up to 31 digits and numeric literals may have a
maximum length of 31 digits.
- *EXTEND63
- Use this option to increase the precision of intermediate results for
fixed-point arithmetic. The intermediate result of a fixed-point
arithmetic expression can be up to 63 digits and numeric literals may have a
maximum length of 63 digits.
- NTLPADCHAR Parameter:
- This option specifies padding characters for the MOVE statement, when a
national data item receives single-byte, double-byte, or national
characters. Specify the padding characters in the following
order:
- Single-byte to national
The sending item is a single-byte item, such as alphabetic or
alphanumeric. Specify a national hexadecimal character. The
default is NX"0020".
- Double-byte to national
The sending item is a double-byte item. Specify a national
hexadecimal character. The default is NX"3000".
- National to national
The sending item is a national item. Specify a national hexadecimal
character. The default is NX"3000".
- LICOPT Parameter:
- Specifies one or more Licensed Internal Code compile-time options.
This parameter allows individual compile-time options to be selected, and is
intended for the advanced programmer who understands the potential benefits
and drawbacks of each selected type of compiler option.
- INCDIR Parameter:
- Specifies one or more directories to add to the search path used by the
compiler to find copy files. The compiler will search the directories
specified here if the copy files specified in the source code cannot be
resolved.
- *NONE
- No user directories are searched for copy files. By default, the
current directory will still be searched.
- directory
- Specify up to 32 directories in which to search for copy files. In
addition to the specified directories, the current directory is also searched
for copy files.
- PGMINFO Parameter:
- Specifies whether program interface information should be generated into a
stream file.
- *NO
- Program interface information will not be generated.
- *PCML
- PCML (Program Call Markup Language) will be generated into a stream
file. The generated PCML makes it easier for Java programs to call this
COBOL program, with less Java code. The name of a stream file that will
contain the generated PCML must be specified on the INFOSTMF option.
- INFOSTMF Parameter:
- Specifies the path name of the stream file to contain the generated
program interface information specifed on the PGMINFO option. The path
name can be either absolutely or relatively qualified. An absolute path
name starts with '/'; a relative path name starts with a
character other than '/'. If absolutely-qualified, the path
name is complete. If relatively-qualified, the path name is completed
by appending the job's current working directory to the path name.
This parameter can only be specified when the PGMINFO parameter has a value
other than *NO.
[ Top of Page | Previous Page | Next Page | Table of Contents | Index ]
(C) Copyright IBM Corporation 1992, 2005. All Rights Reserved.