CICS group and alias function

The CICS group and alias function enables you to do the following:

These two facilities operate through the CICS parameter in the following way. In its basic and simplest form, the CICS(applid) specifies the VTAM applid of a target CICS region. However, you can also use the parameter to reference a PDS member of a data set that contains one or more target CICS region VTAM applids. Whether CICS BAC uses the CICS parameter value as a real region applid, or as the member of a data set, depends on the presence or absence in a data set of a PDS member name that matches the name of the specified CICS applid:

You specify a data set in one of two ways:

A CICS group data set is a PDS defined with the following attributes:

You can define in a CICS group member one or more CICS applids, with only one applid in each record. Begin each applid in column one, and pad the names on the right with spaces if they are less than eight bytes. Anything you enter in columns 9 to 72 is ignored. A record containing only spaces, or with an asterisk in column one, is treated as a comment card and is ignored.

You can use a PDS member with only one applid defined to provide an alias for a single CICS region, or to redirect a command from one CICS region to another. For example, if you have hundreds of batch request utility job steps that contain the applid CICSA, and new naming standards have forced you to change the applid from CICSA to CICS1, you make the change by simply by adding a CICS group member named CICSA. In that member, you specify the new CICS applid of CICS1. Thus, whenever a batch request utility job step targets CICSA, CICS BAC locates member CICSA and redirects commands to region CICS1.

CICS BAC performs only one level of name resolution. That is, if a CICS group member exists, the applids in the member are the final targets. No check is performed on the applids in the member to see if they in turn point to another CICS group member.

When a batch request utility command specifies a CICS group member as its target, the utility issues the command in sequence to each of the CICS applids in the group as if you had specified separate identical commands for each region.

Following are some examples of commands issued based on the use of the CICS group member function. In these examples, the CICS group data set member named CICS1 contains applid records for CICSA, CICSB, and CICSC, in that order:

Example 1: These actual commands from CBKIN:

SET FILE(FILE1),OPENSTATUS(CLOSE),CICS(CICS1) 
SET FILE(FILE2),OPENSTATUS(CLOSE),CICS(CICS1)

result in the following commands being issued:

SET FILE(FILE1),OPENSTATUS(CLOSE),CICS(CICSA)
SET FILE(FILE1),OPENSTATUS(CLOSE),CICS(CICSB)
SET FILE(FILE1),OPENSTATUS(CLOSE),CICS(CICSC)
SET FILE(FILE2),OPENSTATUS(CLOSE),CICS(CICSA)
SET FILE(FILE2),OPENSTATUS(CLOSE),CICS(CICSB)
SET FILE(FILE2),OPENSTATUS(CLOSE),CICS(CICSC)

The same six generated commands shown in the above example are also generated if the your batch request utility job step contains the following actual commands:

DEFAULT CICS(CICS1)
SET FILE(FILE1),OPENSTATUS(CLOSE)
SET FILE(FILE2),OPENSTATUS(CLOSE)

Example 2`: These actual commands from CBKIN:

DEFAULT CICS(CICS1)
SET FILE(FILE1),OPENSTATUS(CLOSE)
SET FILE(FILE2),OPENSTATUS(CLOSE),CICS(CICSTEST)
SET FILE(FILE3),OPENSTATUS(CLOSE)

result in the following commands being issued:

SET FILE(FILE1),OPENSTATUS(CLOSE),CICS(CICSA)
SET FILE(FILE1),OPENSTATUS(CLOSE),CICS(CICSB)
SET FILE(FILE1),OPENSTATUS(CLOSE),CICS(CICSC)
SET FILE(FILE2),OPENSTATUS(CLOSE),CICS(CICSTEST)
SET FILE(FILE1),OPENSTATUS(CLOSE),CICS(CICSA)
SET FILE(FILE2),OPENSTATUS(CLOSE),CICS(CICSB)
SET FILE(FILE3),OPENSTATUS(CLOSE),CICS(CICSC)

In this example, CICSTEST is a real applid that does not have a CICS group data set member of this name and is routed normally.