Creating resource definitions

Use the CREATE commands to add resource definitions to the local CICS® region by using a program, so that you can write applications to administer a running CICS system. These definitions are equivalent to those produced by CEDA transactions. They are recorded in the CICS global catalog and persist over a warm or emergency restart.

However, CREATE commands neither refer to nor record in the CICS system definition (CSD) file. Consequently, the resulting definitions are lost on a cold or initial start, and you cannot refer to them in a CEDA transaction.

You can create definitions for the following types of resources:
  • ATOMSERVICE definitions
  • Bundles
  • Connections
  • DB2® connection
  • DB2 resources (DB2ENTRY, DB2TRAN)
  • Document templates
  • ENQ models
  • Files
  • IPIC connections
  • Journal models
  • JVM servers
  • LSR pools
  • LIBRARY concatenations
  • Map sets
  • Partition sets
  • Partners
  • PIPELINE definitions
  • Process types
  • Profiles
  • Programs
  • Sessions
  • TCP/IP service definitions
  • Temporary storage queue models
  • Transient data queues
  • Terminals
  • Terminal types (TYPETERM)
  • Transaction classes
  • Transactions
  • URIMAP definitions
  • WEBSERVICE definitions
  • WebSphere MQ connections (MQCONN)

A CREATE command corresponds to a combined CEDA DEFINE and INSTALL, except for not updating the CSD file. If there is no resource of the same name and type already installed, the new definition is added to the resources of your CICS region. Definitions always apply to the local CICS region, even if they describe resources located on a remote system. If the resource was already installed, the new definition replaces the old one, and an implicit discard of the old resource occurs as well. In this case, most restrictions that would apply to a DISCARD command that names the same resource also apply to the CREATE.

During the processing, CICS performs a sync point of your task, as if a SYNCPOINT command had been issued along with the CREATE. Changes made to recoverable resources between the CREATE and task start (or the most recent sync point) are committed if processing is successful, and rolled back if not. For TERMINAL definitions and CONNECTION-SESSIONS definitions that require more than one CREATE command to complete, the sync point takes place on the final CREATE of the sequence.

If an error is detected before installation processing begins, installation is not attempted. CICS raises an exception condition and returns control to the issuing task without performing a sync point. However, some errors are detected later in the process and cause rollback, and all successful CREATE command processes cause a commit. Tasks using these commands need to be written with these commit effects in mind.

In addition, the implied sync point means that CREATE commands cannot be issued in a program invoked by a distributed program link unless the LINK command specifies SYNCONRETURN, in a program with an EXECUTIONSET value of DPLSUBSET, or in any other situation where sync point is not allowed.

You can run CREATE commands at any time after the start of the third phase of CICS initialization; CREATE commands can therefore be used in programs that are specified in the second section of the program load table for post-initialization (PLTPI), as well as during normal CICS execution.