Defining data sets to CICS

Before CICS® can open a file referencing a data set, there must be an installed file definition for that file. The definition can be installed either from the CSD or from a file control table (FCT).

You can define VSAM files only through the CSD, and BDAM files only through the FCT. Definitions other than for BDAM in the FCT will not be installed, but they may remain in the FCT.

A file is identified by its file name, which you specify when you define the file. CICS uses this name when an application program, or the main terminal operator using the CEMT command, refers to the associated data set.

Each file must also be associated with its data set in one of the following ways:
  • Using JCL in the startup job stream
  • Using the DSNAME and DISP parameters of the FILE resource definitions
  • Using dynamic allocation with CEMT
  • Using dynamic allocation with an application program

The number of VSAM files that can be allocated to a CICS address space is about 10000. However, VSAM maintains a table entry for each file opened, and table space limits the number of files opened to about 8189.

Note: CICS will only deallocate files which were initially allocated by CICS. If a file was allocated by a third-party application, using a CEMT CLOSE command will close the file, but not deallocate it.

Using JCL

You can define the data set in a DD statement in the JCL of the CICS startup job. The DD name must be the same as the file name that refers to the data set.

For example, the following DD statements would correspond to file definitions for the file names VSAM1A and BDAMFILE:
//VSAM1A    DD   DSN=CICSTS53.CICS.vsam.user.file,DISP=OLD
//BDAMFILE  DD   DSN=CICSTS53.CICS.bdam.user.file,DISP=SHR

If you define a data set to CICS in this way it is allocated to CICS by MVS™ at CICS startup time, and it normally remains allocated until the end of the CICS run. Also, the physical data set is associated with the installed file definition throughout the CICS run.

If you use JCL to define a user data set to the CICS system, the DD statement must not include the FREE=CLOSE operand.

If you use the RLS=CR or RLS=NRI option on your DD statement, it will be ignored. The access mode for the file (RLS or non-RLS) and any read integrity options must be specified in the file definition.