CEMT INQUIRE PROGRAM
Retrieve information about programs, maps, and partition sets.
In the CICS Explorer, the Programs operations view provides a functional equivalent to this command.
Description
INQUIRE PROGRAM returns information about the programs, map sets, and partition sets that are defined to your system. Java™ programs that run in a JVM return a subset of values.
A program that is defined as part of an application installed on a platform is private to that version of that application. A program is private if the PROGRAM resource is defined in a CICS® bundle that is packaged and installed as part of an application, either as part of the application bundle, or as part of the application binding bundle. A program that is auto-installed by a task for an application that is deployed on a platform is also private to that version of the application. Private programs are not visible when you use the CEMT INQUIRE PROGRAM command. To inquire on or browse private programs, use the CICS Explorer® or the EXEC CICS INQUIRE PROGRAM system programming command. Note that a private program that is declared as an application entry point becomes a public program when the CICS bundle containing the statement of the application entry point is made available.
The APPLICATION, APPLMAJORVER, APPLMINORVER, APPLMICROVER, OPERATION, and PLATFORM fields for CEMT INQUIRE PROGRAM display information about a public PROGRAM resource that is defined as an application entry point.
The resource signature
You can use this command to display the resource signature fields. You can use these fields to manage resources by capturing details of when the resource was defined, installed, and last changed. For more information, see Auditing resources. The resource signature fields are CHANGEAGENT, CHANGEAGREL, CHANGETIME, CHANGEUSRID, DEFINESOURCE, DEFINETIME, INSTALLAGENT, INSTALLTIME, and INSTALLUSRID. See Summary of the resource signature field values for detailed information about the content of the resource signature fields.
Input
- Type CEMT INQUIRE PROGRAM. You get a display that lists the status.
- Type CEMT INQUIRE PROGRAM followed by as many of the other attributes that are necessary to limit the range of information that you require. For example, if you enter cemt i prog c e, the resulting display shows you the details of only those programs that are written in C language and are enabled.
- (value)
- A 1 - 8 character program identifier which is the name of a specific
program entry in the table of installed program definitions. If you
omit the program name, the ALL option is assumed by default. You can
also use the wildcard character * to return a selection of programs;
for example, entering CEMT INQUIRE PROGRAM(DFH*) returns
all programs that begin with DFH.
You cannot specify the CLASS option and a program name.
- ALL
- The default.
- CLASS(value)
- The two character suffix of a program list table (PLT). Use this
option to inquire on those programs defined in the specified PLT.
Unlike a shutdown PLT, it is not mandatory to define a program definition
for a startup PLT. However, if you want to use the CLASS option,
you must define and install a program resource definition for the
PLT specified by clasid.
If the clasid specified is the suffix of a PLT that does not have a program definition, the INQUIRE PROGRAM CLASS(clasid) command returns a CLASS NOT FOUND message.
Displayed fields
- APPLICATION
- Displays the name of the application for which this program is defined as an entry point. If the program is not defined as an application entry point, the field is blank.
- APIST
- Displays the API attribute of the installed program definition.
- CICSAPI
- The program is restricted to use of the CICS permitted application programming interfaces
only.
If the program is defined with CONCURRENCY(QUASIRENT) it always runs on the quasi-reentrant (QR) TCB. If the program is defined with CONCURRENCY(THREADSAFE) it runs on whichever TCB is in use by CICS at the time that is determined as suitable. If the program is defined with CONCURRENCY(REQUIRED) it always runs on an L8 open TCB.
- OPENAPI
- The program is not restricted to the CICS permitted application programming interfaces.
CICS runs the program on its own L8 or L9 mode open TCB, depending on the value of the EXECKEY attribute. If the program is defined with CONCURRENCY(REQUIRED), CICS uses an L9 TCB if EXECKEY(USER) is set and an L8 TCB if EXECKEY(CICS) is set. If, when running a CICS command, CICS requires a switch to QR TCB, it returns to the open TCB before handing control back to the application program. OPENAPI requires the program to be coded to threadsafe standards.
- APPLMAJORVER
- Displays the major version number of the application for which this program is defined as an entry point. If the program is not defined as an application entry point, the field is blank.
- APPLMICROVER
- Displays the micro version number of the application for which this program is defined as an entry point. If the program is not defined as an application entry point, the field is blank.
- APPLMINORVER
- Displays the minor version number of the application for which this program is defined as an entry point. If the program is not defined as an application entry point, the field is blank.
- CEDFSTATUS
- Displays the action that the execution diagnostic facility (EDF)
is to take for this program when the program runs under EDF.
- CEDF
- When EDF is active, CEDF initiation and termination screens are shown by CEDF while this program is running. Other screens are also shown unless the program was translated using the NOEDF translator option.
- NOCEDF
- All CEDF activities, including initiation and termination screens, stop while this program is being processed.
- CHANGEAGENT(value)
- Displays a value that identifies the agent that made the last change to the resource definition.
You cannot use CEMT to filter on some of these values because they are duplicated. The possible
values are as follows:
- AUTOINSTALL
- The resource was autoinstalled.
- CREATESPI
- The resource definition was last changed by an EXEC CICS CREATE command.
- CSDAPI
- The resource definition was last changed by a CEDA transaction or the programmable interface to DFHEDAP.
- CSDBATCH
- The resource definition was last changed by a DFHCSDUP job.
- DREPAPI
- The resource definition was last changed by a CICSPlex SM BAS API command.
- DYNAMIC
- The resource definition was last changed by a Link to Liberty application.
- SYSTEM
- The resource definition was last changed by the CICS or CICSPlex system.
- CHANGEAGREL(value)
- Displays the 4-digit number of the CICS release that was running when the resource definition was last changed.
- CHANGETIME(date time)
- Displays the date and time when the resource definition was last changed. The format of the date depends on the value that you selected for the DATFORM system initialization parameter for your CICS region. The format of the time is hh:mm:ss.
- CHANGEUSRID(value)
- Displays the 8-character user ID that ran the change agent.
- CONCURRENCY
- Displays the concurrency attribute of the specified program.
- QUASIRENT
- The program is defined as not threadsafe, and requires the automatic serialization provided by QR TCB.
- THREADSAFE
- The program is defined as being threadsafe, using appropriate serialization techniques to access shared resources. It does not need the automatic serialization provided by the CICS QR TCB, and can safely run on an open TCB.
- OREQUIRED
- The program is defined as threadsafe, and must run on an open
TCB. The type of open TCB used depends on the API setting.
A value of CONCURRENCY(OREQUIRED) is equivalent to CONCURRENCY(REQUIRED) on the program definition. CEMT uses a value of OREQUIRED to distinguish it from a value of REQUIRED on the option COPYSTATUS. You can use the filter OREQUIRED to return all programs with the concurrency setting of REQUIRED.
- COPYSTATUS
- Displays the load status of the specified program.
- NOTREQUIRED
- The program status is such that you do not have to specify CEMT SET PROGRAM NEWCOPY or CEMT SET PROGRAM PHASEIN to make the program available. If the program is already available for use and you have a new version in the DFHRPL or a dynamic LIBRARY concatenation, issue a NEWCOPY or PHASEIN command to replace the current version.
- REQUIRED
- A search for the program failed during a load operation, and the
program is marked as not loadable to avoid further load attempts.
You must specify CEMT SET PROGRAM NEWCOPY or CEMT SET PROGRAM PHASEIN to enable the program to be loaded. Ensure that a copy of the program is in the search order of LIBRARY concatenations, including DFHRPL and dynamic libraries.
You can reset this value by typing over it using the following values:- NEWCOPY
- CICS uses a new copy of the program if all the transactions currently using the program have finished (RESCOUNT equal to zero). If RESCOUNT is not zero, NEWCOPY fails. CICS loads the new version either from the search order of LIBRARY concatenations (including DFHRPL and dynamic LIBRARYs) or uses an LPA-resident version, depending on the PRIVATE or SHARED options. PRIVATE is the default setting.
- PHASEIN
- CICS uses a new copy of the program now for all new transaction requests. CICS continues to use the old copy for all currently running transactions until they have finished (RESCOUNT equal to zero). CICS loads the new version either from the search order of LIBRARY concatenations (including DFHRPL and dynamic LIBRARYs) or uses an LPA-resident version, depending on the PRIVATE or SHARED options. PRIVATE is the default setting.
- DATALOC
- Displays whether the program can accept data addresses higher
than 16 MB. The values are as follows:
- ANY
- The program can handle 31-bit addresses. The address of the data can be above or below 16 MB. CICS returns an address above 16 MB if possible.
- BELOW
- The program can handle only 24-bit addresses and must therefore be given addresses of data located below 16 MB. If required, CICS copies data below 16 MB before passing its address to the application program.
- DEFINESOURCE(value)
- Displays the source of the resource definition. The DEFINESOURCE value depends on the CHANGEAGENT option. For details, see Summary of the resource signature field values.
- DEFINETIME(date time)
- Displays the date and time when the resource was created. The format of the date depends on the value that you selected for the DATFORM system initialization parameter for your CICS region. The format of the time is hh:mm:ss.
- DYNAMSTATUS
- Displays whether, if the program is the subject of a program-link
request, the request can be dynamically routed.
- DYNAMIC
- If the program is the subject of a program-link request, the CICS dynamic routing program is called. 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 run.
- NOTDYNAMIC
- If the program is the subject of a program-link request, the dynamic
routing program is not called.
For a distributed program link (DPL) request, the server region on which the program is to run must be specified explicitly on the REMOTESYSTEM option of the PROGRAM definition or on the SYSID option of the EXEC CICS LINK command; otherwise, it defaults to the local region.
For information about the dynamic routing of DPL requests, see Dynamically routing DPL requests.
- EXECKEY
- Displays the access key in which the program is running.
- CEXECKEY
- The program runs in CICS access key, and has read and write access to both CICS-key and user-key storage.
- UEXECKEY
- The program runs in user access key, and has write access to user-key storage, but read-only access to CICS-key storage.
- EXECUTIONSET
- Displays whether the program is restricted to the API subset as
for a distributed program link request. The values are as follows:
- DPLSUBSET
- The program is restricted to the DPL API subset, as for a distributed
program link request, when it runs in the local CICS region.
A program is always restricted to the DPL subset when it is called in a remote region with a DPL request, even if this option is not specified.
- FULLAPI
- The program is not restricted to the DPL subset of the CICS API when it runs in the local CICS region and can use the full
API.
A program is always restricted to the DPL subset when it is called in a remote region with a DPL request, regardless of this option.
You can reset this value by typing over it with a different value.
- INSTALLAGENT(value)
- Displays a value that identifies the agent that installed the resource. You cannot use CEMT to
filter on some of these values because they are duplicated. The possible values are as follows:
- AUTOINSTALL
- The resource was autoinstalled.
- BUNDLE
- The resource was installed by a bundle deployment.
- CREATESPI
- The resource was installed by an EXEC CICS CREATE command.
- CSDAPI
- The resource was installed by a CEDA transaction or the programmable interface to DFHEDAP.
- DYNAMIC
- The resource definition was last installed by a Link to Liberty application.
- GRPLIST
- The resource was installed by GRPLIST INSTALL.
- SYSTEM
- The resource was installed by the CICS or CICSPlex SM system.
- INSTALLTIME(date time)
- Displays the date and time when the resource was installed. The format of the date depends on the value that you selected for the DATFORM system initialization parameter for your CICS region. The format of the time is hh:mm:ss.
- INSTALLUSRID(value)
- Displays the 8-character user ID that installed the resource.
- JVMCLASS
- Displays the name of the main class in the Java program or OSGi service, as specified in the PROGRAM definition, up to a maximum of 255 characters.
- JVMPROFILE
- Displays the name of the JVM profile that is used for the pooled JVM in which this Java program runs.
- JVMSERVER
- Displays the name of the JVMSERVER resource that is used to run this OSGi service in a JVM server.
- LANGUAGE
- Displays the language in which the program is written.
- PLI, COBOL, C, Lenv, or Assembler
- Supported languages. Lenv Means that the module, whatever its language, uses multi-language support or was compiled with a Language Environment®-conforming compiler.
- JAVA
- The program is written in Java.
- NOTAPPLIC
- The language is not specified in the resource definition, and is not loaded.
- NOTDEFINED
- The language in which the program is written is not defined.
- LENGTH(value)
- Displays the size of the program in bytes. The value returned is 0000000000 if the program is not loaded during this CICS run. No value is returned if the module is a remote program or a Java program that runs in a JVM.
- LIBRARY(value)
- Displays the 8-character name of the LIBRARY from which the program
is currently loaded. Note:
- If the program was loaded from an installed LIBRARY resource, the library and library data set names are returned.
- If the program was loaded from a LIBRARY resource that is disabled, the library name is returned but the library data set name is blank.
- If the program was loaded from a LIBRARY resource that is discarded, both library and library data set name are blank.
- LIBRARYDSN(value)
- Displays the 44-character name of the data set within the LIBRARY
from which the program is currently loaded. Note:
- If the program was loaded from an installed LIBRARY resource, the library and library data set names are returned.
- If the program was loaded from a LIBRARY resource that is disabled, the library name is returned but the library data set name is blank.
- If the program was loaded from a LIBRARY resource that is discarded, both library and library data set name are blank.
- OPERATION
- Displays the name of the application operation for which this program is defined as an entry point. If the program is not defined as an application entry point, the field is blank.
- PLATFORM
- Displays the platform name of the application for which this program is defined as an entry point. If the program is not defined as an application entry point, the field is blank.
- PROGRAM(value)
- Indicates that this panel relates to a PROGRAM inquiry and displays an 8-character program identifier (1 - 8 characters), which is the name of a specific program entry in the table of installed program definitions.
- PROGTYPE
- Displays the type of program:
- PROGRAM
- The entry is defined in the CICS system definition as a program.
- MAPSET
- The entry is defined in the CICS system definition as a map set.
- PARTITIONSET
- The entry is defined in the CICS system definition as a partition set.
- REMOTESYSTEM(value)
- Displays the 4-character name of the remote system in which the program is to run.
- RESCOUNT(value)
- Displays a 3-character string identifying the number of separate
invocations of this program that are taking place at the time of this
inquiry. No value is returned if the module is a remote program or
a Java program that runs in
a JVM.
This number is not necessarily the same as the number of times the module has been loaded from DFHRPL or a dynamic LIBRARY concatenation.
- RESIDENCY(value)
- Displays the program's residency attributes:
- RESIDENT
- The program is permanently resident. It is defined as RESIDENT(YES).
- NONRESIDENT
- The program is defined as RESIDENT(NO).
- RUNTIME
- Displays information about the runtime environment of the program.
- JVM
- The program is a Java program that runs in a Java Virtual Machine (JVM).
- Lenv
- The program is running with Language Environment runtime support.
- NATIVE
- The program is running with its native language runtime support (not Language Environment).
- NOTKNOWN
- The runtime environment is not known because the program was not loaded by CICS. The source language, which dictates the runtime environment to be used, cannot be deduced.
- XPLINK
- The program is a C or C++ program which was compiled using the XPLINK option.
- SHARESTATUS
- Displays, when the next NEWCOPY or PHASEIN request is received, where the next new copy of the
program is to be loaded from.
- SHARED
- CICS is using a shared copy of the program from the link pack area (LPA). If no LPA version is available, the program is loaded from DFHRPL or a dynamic LIBRARY concatenation.
- PRIVATE
- The next new copy of the program is to be loaded from DFHRPL or a dynamic LIBRARY concatenation.
You can reset this value by typing over it with a different value.
- STATUS
- Displays whether the program is available for use using of the following values:
- ENABLED
- The program is available for use.
- DISABLED
- The program is unavailable for use.
Programs beginning with DFH cannot be disabled because these characters are reserved for use by CICS.
You can reset this value by typing over it with a different value.
- USECOUNT(value)
- Displays a 10-character string identifying the total number of times the program has run since
the start of the current CICS session. The use count is
provided for all modules including Java programs, except for
remote programs. No value is returned if the program is remote.
The maximum value is 2147483647. The use count is not changed after this value is reached.