CICS/400 includes a set of sample CL programs to help you define the CICS/400 resources and OS/400 objects that are required to get a CICS/400 system up and running. You may choose to use these sample programs instead of the IVP but should bear in mind that they are provided only as a sample, and the control region they generate may require tuning.

The DEFCICSRGN, CHGCICSSIZ, and STRCICSDLY CL programs contain programming source code for your consideration. These samples have not been thoroughly tested under all conditions. IBM, therefore, cannot guarantee or imply reliability, serviceability, performance or function of the programs. All programs herein are provided to you “as is”. IBM EXPRESSLY DISCLAIMS ALL WARRANTIES,INCLUDING THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.

All the code is provided in the supplied library QCICSSAMP.Source is provided in the DEFCICSSRC source file, and a detailed description of how the code works may be found in the README member.

The autodefinition command is DEFCICSRGN ( Define CICS region ).You supply DEFCICSRGN with a list of libraries that already contain the resources you wish to have defined, and the name of a target library in which all the definitions and created objects will be placed. The autodefinition program tries to define to CICS/400 the programs, BMS maps, and data files within the listed libraries, that satisfy the resource definition creation criteria.



  • Function
  • The Define CICS Region (DEFCICSRGN) CL command creates automatically resource definitions for your CICS/400 system and starts a user shell.

  • Required parameters
    • Region name (CTLRGN)
    • Enter the four-character system identifier of the CICS/400 control region that you wish to create.

    • Library to create to hold data (LIB)
    • Enter the name of the target library that will hold the CICS/400 definitions and the OS/400 objects pertaining to the control region. This library must not already exist.

    • Name of CICS group to hold SIT (SITGRP)
    • Enter the name of the top-level group to hold the system initialization table (SIT) and the group list table (GLT) for the control region.

  • Optional parameters

    Enter the names of libraries, up to a maximum of 30, that already contain the resources you wish to have defined. For each library in the list, autodefinition create a CICS group containing definitions for the CICS/400 programs, maps and data files within that library, that meet the resource definition creation criteria.

Running DEFCICSRGN against QCICSSAMP would give you a good idea of what the autodefinition code can do. Your userid would need *ALLOBJ authority.

First, you must add library QCICSSAMP to your library list using the command:
Then type

and enter F4 for prompts. You will be prompted for the control region name, library name, group name, and library list.

Then you will be presented with a panel listing all the possible resources, and asking you to enter how many of each you expect to have in your system. DEFCICSRGN uses this information to calculate how much storage it should allocate.
When you have answered the storage question, you are taken into a CICS/400 user shell, and will see the following screen:

Figure . Welcome to CICS/400 screen

Welcome to CICS/400 screen
Your CICS system is now up and running. You may clear the screen, and enter a transaction code, for example ACCT.

Autodefined resources

  • BMS maps
  • CICS/400 BMS maps are stored in user space objects with an object attribute of CICS400BMS. Within CICS/400, BMS maps are identified uniquely by a program id of up to eight characters. Because of this, the autodefinition program adds definitions only for maps with a maximum of eight characters in their object names.

  • CICS/400 programs
  • All program objects with a maximum of eight characters in their object names, and with an object attribute of CBL or CLE, are defined as CICS/400 resources.

    In addition, transactions are defined in the following cases:

    • If the program name is four characters or less, a transaction will be defined under that name.
    • If the text description of the object begins with Trans, a transaction will be defined for each word which follows Trans, for example, ACCT03 in QCICSSAMP. This allows a single program to be referenced by more than one transaction.
  • OS/400 data file members
  • Within CICS/400, files are identified uniquely by a file identifier of up to eight characters. Each CICS/400 file relates to a member within an OS/400 data file. Autodefinition looks at the members within the files in the given list of libraries. For each member with eight characters or less in its member name, autodefinition builds a CICS/400 file definition under the same name. In addition:

    • OS/400 source files are ignored
    • Files using a shared access path are ignored

Member names should be unique across all files within all the libraries that are to be accessed by autodefinition in order to avoid naming conflicts.

The autodefinition program attempts to work out how to define the file members to CICS/400 by looking at many of the OS/400 file attributes.

Table . File attributes inspected during autodefinition

File attributes inspected during autodefinition

Other definitions

In addition to these resource definitions, the following objects and resources that will be used later by the CICS/400 control region are defined:

  • Files to hold recoverable and nonrecoverable temporary storage (TS) and transient data (TD) queues.
  • Journal receiver and journal objects for journaling the file which holds the recoverable TS and TD queues.
  • An explicit terminal definition for the terminal running the autodefinition program.
  • Model terminal definitions for 3270 and 5250 devices.
  • A default printer.
  • Many of the IBM supplied transactions.
  • A subsystem description for a subsystem in which the CICS/400 control region will run.
  • A job queue and class description for use by the subsystem.
  • A configuration list entry in the local configuration list, if there is one (for APPN).


When all these definitions have been created, autodefinition uses the sample command CHGCICSSIZ, which presents you with a list of questions on how the control region is to be used and what sort of transactions are to be run in it. Using this information, and a count of all the CICS/400 resource definition table entries, a suitable set of storage parameters for the SIT are calculated and applied.

Starting the control region

Finally, autodefinition submits a batch job to bring up the control region. It uses the command STRCICSDLY (Start CICS Delay), which is one of the autodefinition sample programs, to start the appropriate subsystem and control region in an orderly fashion, and it waits for the control region to become available. You may use the STRCICSDLY command in the future to bring up a subsystem and control region that were defined using the DEFCICSRGN command. When you have seen what DEFCICSRGN does, you may wish to customize parts of the code, in order to minimize the amount of tailoring you might need to do to the definitions.

Deleting the autodefined control region
If you wish to delete the CICS/400 control region that has been created:

  • End the CICS system, using the ENDCICS CL command.
  • End the subsystem in which it is running. The subsystem has the same name as the control region.
  • Delete the library that was specified in the CICSLIB parameter of the DEFCICSRGN command.
  • Remove the configuration list entry from the local configuration list, if applicable.

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

IBM - AS/400 Topics