Using an autoinstall control program - IBM - AS/400

CICS/400 supplies source for a sample autoinstall control program. Alternatively, you can create your own customized autoinstall control program. You can use the supplied program source and customize it to your own needs, or you can write the program yourself. It is highly recommended that you customize the supplied program source, because it contains the proper structures for passing parameters between CICS/400 and your program.

The CICS/400-supplied autoinstall control program
The CICS/400-supplied autoinstall control program is a COBOL/400 program, named AEGTCACP. Like the installation verification program source, the source code for AEGTCACP, and for its associated copybook DFHTCUDO, are supplied as members of the source file QCICSSAMP/QLBLSRC.

The default action of the autoinstalled terminal supplied program AEGTCACP on installation is to select the first model in the list, move the terminal identifier generated by masking to the output terminal identifier, set the return code, and return to CICS/400. If there are no models in the list, it returns with no action.

The default action on autoinstalled terminal deletion is to address the passed parameter list, and return to CICS/400 with no action.

How does CICS/400 know to call an autoinstall control program?
If an AEGTCACP PPT entry is defined to the CICS/400 system, the program referred to by that entry is called during installation of an autoinstall terminal and when an autoinstalled terminal is being deleted. To use an autoinstall controlprogram, you should:

  • Create a PPT definition for AEGTCACP. The PGMOBJ parameter in the PPT definition must refer to the program object of the autoinstall control program you intend to use. Note that the program object can be given any name you wish.
  • Translate and compile the autoinstall control program. Be sure you create the program object with the proper name.

Creating a PPT definition for AEGTCACP
A PPT entry must be created with PGMID parameter of AEGTCACP. For example,
ADDCICSPPT LIB(QTEST) GROUP(AUTO) PGMID(AEGTCACP)
SYSID(*NONE) PGMOBJ(CICSWORK/AEGTCACP) CICSDEBUG(*NODEBUG)

The PPT definition must be defined as local (SYSID(*NONE)) and must be enabled.If the PPT definition is defined as remote, or is disabled, there will be no autoinstall processing.

Remember, if there is no PPT definition for AEGTCACP, CICS/400 will use masking to define autoinstall terminal identifiers.

Translating the autoinstall control program
Whether or not you use the CICS/400-supplied program or your own customized autoinstall control program, the program must be translated and compiled using the CICS/400 supplied CL command CRTCICSCBL. The following example shows the CRTCICSCBL command for the CICS/400-supplied program AEGTCACP in source file QCICSSAMP/QLBLSRC. To translate the program, enter:
CRTCICSCBL

and press F4.The panel in Figure 59 is displayed. You have to type in only the first three fields highlighted. The source member field should be entered if the source member name differs from the program object name. The remaining fields have acceptable defaults.

Figure. The Create CICS COBOL screen

The Create CICS COBOL screen

Notes:

  1. This is the name of the OS/400 program object that is generated. The object name can be any name you wish, however the AEGTCACP PPT entry PGMOBJ parameter must refer to this object name.
  2. This is the library that holds the OS/400 program object. This can be any existing library you wish.
  3. This is the name of the source file that contains the program source code.

Security
Be sure that the users of your autoinstall control program are authorized to any objects referenced by your autoinstall control program; for example, writing records as part of autoinstall installation to an audit file. If your user is not authorized to write to that file, the program will get a NOTAUTH error on the write request. If the program does not allow for this possibility, the autoinstall control program fails and the user will not be allowed into the CICS system.

Program object security
You must ensure that the submitter of the STRCICS command for starting your CICS system is authorized to the PGMOBJ referred to by the AEGTCACP PPT definition. If the submitter is not authorized, an error message is written to the system message log CSMT and to the STRCICS process job log, indicating that autoinstall will not be active for that CICS system.

In addition, each user of the CICS system must be authorized to the autoinstall control program. If an individual user who attempts to log into the CICS system is not authorized to the program, that user will be prevented from autoinstalling into that CICS system.

Autoinstall delete security considerations
When the autoinstall control program is called in an IC batch shell during CATD transaction processing, the user profile of the submitter of the STRCICS command is used as the user profile for the IC batch job.

However, if the autoinstall control program is called because autoinstall has failed within a shell, the program is called within the process where the STRCICSUSR command was issued. In this case, the user profile for that process is used.

Batch shell considerations
Autoinstall delete processing is normally executed using the CICS/400-supplied transaction CATD. The CATD transaction is executed in an Interval Control batch shell. If you are using an autoinstall control program, you may need to define more Interval Control batch shells to your CICS system. The ITVCTL parameter of the ADDCICSSIT command is used to define the maximum and minimum number of batch shells for the CICS system.

Storage considerations
CICS/400 allocates a large internal table to hold the areas required by the autoinstall control program AEGTCACP. If you are using an autoinstall control program, your CICS/400 shells require 5KB more space to allow for autoinstall processing requirements.

CEMT INQUIRE/SET PROGRAM and EXEC CICS INQUIRE/SET PROGRAM
PPT entries within CICS/400 that begin with AEG are not allowed to be DISABLED in an active CICS system. Because the PPT entry for the autoinstall control program must be called AEGTCACP, you are not able to DISABLE the program using CEMT or the EXEC CICS SET PROGRAM equivalent. However, you are allowed to use an updated version of your autoinstall control program by setting a new copy of the program into the CICS system by using the CEMT SET PROGRAM(AEGTCACP) NEWCOPY command or its equivalent EXEC CICS SET PROGRAM(AEGTCACP) NEWCOPY in an application program.

Turning off autoinstall in an active CICS system
There are many ways to accomplish this. One way would be to discard all the autoinstall models in the CICS system. Another way would be to install an AEGTCACP PPT entry with the program status PGMSTS(*DISABLED), using either the CEDA transaction or the INSCICSGRP CL command. In addition, if the submitter of the STRCICS command is not authorized to the program object referred to by the AEGTCACP PPT entry, autoinstall processing is not active for that CICS system.

Attempting to install an AEGTCACP PPT entry defined as remoteIf you attempt to install an AEGTCACP PPT entry that is defined as remote, CICS/400 rejects the installation request with an error message written to the CSMT log and the job log indicating that the AEGTCACP PPT entry has been rejected.

All rights reserved © 2020 Wisdom IT Services India Pvt. Ltd DMCA.com Protection Status

IBM - AS/400 Topics