- Cedf
- specifies the action of the execution diagnostic facility (EDF) when
the program is running under EDF control.
- NO
- The EDF diagnostic screens are not displayed.
- YES
- The EDF diagnostic screens are displayed. If the program is translated
with the NOEDF option, only the program initiation and termination EDF screens
are displayed.
- Concurrency
- specifies whether the program is written to threadsafe standards, or
is only quasi-reentrant. You can specify the CONCURRENCY attribute for all CICS® executable program objects:
- User application programs
- PLT programs
- User-replaceable programs
- Global user exit programs
- Task-related user exit programs
However, there are special considerations for user-replaceable programs,
task-related user exit programs, and global user exit programs. See the CICS Customization Guide for information about these categories
of threadsafe program.
- QUASIRENT
- The program is quasi-reentrant only, and relies on the serialization
provided by CICS when accessing shared resources.
The program is restricted
to the CICS permitted programming interfaces, and must comply with the CICS
quasi-reentrancy rules. For details of these, seethe
CICS Application Programming Guide.
This value is supported for all executable programs.
CICS ensures that the program always executes under the QR TCB, even
when control is returned after it has invoked a JVM or an open API task-related
user exit, or when it interacts with threadsafe programs.
- THREADSAFE
- The program is written to threadsafe standards, and when it accesses
shared resources it takes into account the possibility that other programs
may be executing concurrently and attempting to modify the same resources.
The progam, therefore, uses appropriate serialization techniques when accessing
any shared resources.
Note that JVM programs must be defined as threadsafe.
For information about CICS DB2® application programs, see the CICS DB2 Guide.
For information about writing threadsafe application
programs, see the CICS Application Programming Guide.
This value
is supported for all executable programs. Threadsafe programs must be Language Environment®-conforming, or be assembler programs.
You can also specify the program CONCURRENCY attribute using a
program autoinstall exit, if program autoinstall is active.
- Datalocation
- Commands using the SET option can return a data address to an application
program; this operand specifies the location of the data.
- ANY
- The program can handle 31-bit addresses. The address of the data can
be above or below the 16MB line.
- BELOW
- The program can handle only 24-bit addresses and must therefore only
be given data located below the 16MB line. If necessary, data is copied below
the 16MB line before passing its address to the application program.
- Description
- (Optional.) Specifies a 1- to 30-character description of the resource.
- Dynamic
- specifies whether, if the program is the subject of a program-link request,
the request can be dynamically routed.
- NO
- If the program is the subject of a program-link request, the dynamic
routing program is not invoked.
For a distributed program link (DPL) request,
the server region on which the program is to execute must be specified explicitly
on the REMOTESYSTEM attribute of the PROGRAM definition or on the SYSID option
of the EXEC CICS LINK command; otherwise it defaults to the local region.
- YES
- If the program is the subject of a program-link request, the CICS dynamic
routing program is invoked. Providing that a remote server region is not named
explicitly on the SYSID option of the EXEC CICS LINK command, the routing
program can route the request to the region on which the program is to execute.
The DYNAMIC attribute takes precedence over the REMOTESYSTEM attribute--see
the description of the REMOTESYSTEM attribute.
For guidance information
about the dynamic routing of DPL requests, see the CICS Intercommunication Guide.
- Execkey
- specifies the key in which CICS gives control to the program, and determines
whether the program can modify CICS-key storage.
- CICS
- This specifies that CICS is to give control to the program in CICS key
when it is invoked.
- USER
- This specifies that CICS is to give control to the program in user key
when it is invoked.
- Executionset
- Specifies whether you want CICS to link to and run a program as if it
were running in a remote CICS region.
- DPLSUBSET
- Specify DPLSUBSET if you want CICS to link to the program and run it
with the API restrictions of a remote DPL program.
- FULLAPI
- Specify FULLAPI if you want CICS to link to the program and run it without
the API restrictions of a DPL program. The program can use the full CICS API.
- Hotpool(NO|YES)
- Specifies whether or not the Java™ program object is to be run in a preinitialized
Language Environment enclave reused by multiple invocations of the program,
under control of an H8 TCB. Programs defined with Hotpool (YES) must also
be defined with CONCURRENCY (THREADSAFE).
HOTPOOL is valid
only in CICS Transaction Server 2.2 and 2.3.
Note:
A Java program
object is a Java program that has been processed by the VisualAge® for Java
Enterprise Toolkit for OS/390® bytecode binder.
- NO
- The Java program object is not to be run in a preinitialized Language
Environment enclave.
- YES
- The Java program object is to be run in a preinitialized Language Environment
enclave.
- Jvm
- specifies whether or not the program is a Java program that has to operate
under the control of a Java Virtual Machine (JVM).
- NO
- The program is not to operate under a JVM.
- YES
- The program is to operate under a JVM. Specify a class name in the JVMCLASS
attribute if you specify JVM(YES).
Note:
In addition to YES and NO, you can also specify DEBUG,
but in compatibility mode only. DEBUG is valid only in CICS Transaction Server
1.3.
- Jvmclass
- specifies the main class in a Java program to be run under the control
of a JVM.
This class name can be overridden using the user-replaceable
programs DFHJVMAT (see the CICS Customization Guide). You can
use DFHJVMAT to specify a class name larger than 255 characters.
Note that
this attribute applies only to Java applications running under the control
of a JVM. If you specify JVM(NO), at program execution time CICS ignores any
value specified in the JVMClass field.
- JVM Profile
- specifies the JVM profile name. The default value is DFHJVMPR. The name
can be up to eight characters in length.
Do not use profile names beginning with DFH, because these characters are
reserved for use by CICS.
- Language
- specifies the program language.
- ASSEMBLER
- This is an assembler language program.
- C
- This is a C/370™ program not compiled by a Language Environment-conforming
compiler.
- COBOL
This is a COBOL program.
- LE370
- LANGUAGE(LE370) must be specified if the program exploits multi-language
support, or if the program has been compiled by a Language Environment-conforming
compiler.
- PLI
- This is a PL/I program.
- RPG
- For CICS/MVS 2.1.2 system, an RPG program.
In most cases, you do not need to specify the LANGUAGE attribute, because
the CICS program manager deduces the correct language and ignores the value
you have specified. However, in the following cases, CICS cannot deduce the
language, and you must specify the appropriate value:
- Programs written in assembler that do not have the DFHEAI stub
If the language is not specified, and CICS cannot deduce it, transactions
that attempt to use the program will aband with code ALIG.
Although, in
most cases, you do not need to specify a value for this attribute, you should
be aware that the value specified is returned in the LANGDEDUCED and LANGUAGE
options of the INQUIRE PROGRAM command. Programs
that use this command may be affected if you change the value of this attribute.
This attribute is irrelevant for JVM programs; CICS deduces that the
program is a Java program to run under the control of a JVM when JVM(YES)
is specified.
If you intend to share the CSD file with a level of CICS
prior to CICS/ESA 4.1, do not leave this field blank, because -- in the earlier
release -- the default value is COBOL, which may not be correct.
- Name
- Specify a 1- to 8-character name for the program definition.
- Reload
- specifies whether a program control link, load, or XCTL request is to
bring in a fresh copy of a program. This attribute does not apply to JVM programs.
For more information about the RELOAD attribute, see CICS Performance Guide.
- Remotename
- (Optional.) specifies, if the program resides on a remote system, the
name by which the program is known in the remote CICS region. If you specify RemoteSystem
and omit Remotename, the Remotename attribute defaults to the same name as
the local name (that is, the program name on this resource definition).
- RemoteSystem
(Optional.) If you want CICS to
ship a DPL request to another CICS system, specify the system ID of the remote system.
This value must be the name of the connection definition (CONNDEF) for the
link to the remote system.
CICSPlex® SM uses this system ID only if the program
is part of a resource group that is directly associated with a resource description
(via RESINDSC). If the program is being assigned by a resource assignment
(RASGNDEF), CICSPlex SM sets the remote system according to the rules, as follows:
- USAGE MODE
- Action
- LOCAL N/A
- Remotesystem value from PROGDEF is used
- REMOTE STAT
- Remotesystem value set to SYSID of the related system
- REMOTE DYNAM
- Remotesystem value from PROGDEF is used
- RESGROUP
- (Optional.) Specify the name of an existing resource group to which
the definition is to be automatically added.
- Resident
- specifies the residence status of the program. This attribute does not
apply to JVM programs.
For more information about the effects of the RESIDENT
attribute, see the CICS Performance Guide.
- For CICS/MVS™ 2.1.2 systems, specify the resource security value to
be associated with the program:
- 0
- Transactions with RSL checking specified are not allowed to access the
program.
- value
- A resource security value, in the range 1 through 24.
- PUBLIC
- Any transaction is allowed to access the program.
For systems running a version of CICS other than CICS/MVS 2.1.2, leave
this field blank.
- Status
- specifies the program status.
- DISABLED
- The program may not be used.
- ENABLED
- The program may be used.
- Transid
- If the program is dynamic, this is the default TRANSID used for the
distributed program link (DPL) request. If the program is not dynamic, this
specifies the name of the transaction you want the remote CICS to attach,
and under which it is to run the remote program. If you do not specify a transaction
name on the TRANSID attribute, the remote region executes the DPL program
under one of the following CICS-supplied default mirror transactions:
- CPMI
- This is the CICS mirror transaction for LU6.2 connections that specify
data conversion.
- CSMI
- This is the CICS ISC mirror transaction for MRO and LU6.2 connections
with sync level 2.
- CVMI
- This is the CICS/VM mirror transaction for LU6.2 connections with synclevel
1.
- Usage
- specifies when the storage for this program is released. This attribute
does not apply to JVM programs.
- NORMAL
- When the use count for this program reaches zero, it becomes eligible
for removal from storage as part of the normal dynamic program compression
process.
This value must be specified if RELOAD(YES) is specified.
- TRANSIENT
- When the use count for this program becomes zero, the storage for this
program is released. This value should be specified for programs that are
referenced infrequently.
- UseLPAcopy
- specifies whether the program is to be used from the link pack area
(LPA). This attribute does not apply to JVM programs.
- NO
- The program is not to be used from the LPA. It is loaded into the CICS
address space.
- YES
- The program can be used from the LPA if LPA=YES is specified as a system initialization parameter.
- User Data
- (Optional.) Three 8-character fields provided for any site-specific
data related to the program. CICSPlex SM makes no use of this user data.
- Version
- (Optional.) Specify an integer in the range 1 through 15. Specify 0
or leave blank for CICSPlex SM to assign the first available version id in the
range 1 through 15.