You can use the following control keywords at startup to control how CICS® is to read system initialization parameters:
The purpose of these special keywords, and where you can code them, are described as follows:
Where to code SYSIN: You can code SYSIN (or SI) only in the PARM parameter of the EXEC PGM=DFHSIP statement. The keyword can appear once only and must be at the end of the PARM parameter. CICS does not read SYSIN until it has finished scanning all of the PARM parameter, or until it reaches a .END before the end of the PARM parameter. (See .END in topic END.)
Examples:
//stepname EXEC PGM=DFHSIP,PARM='SIT=6$,SYSIN,.END'
//stepname EXEC PGM=DFHSIP,PARM='SIT=6$,DLI=YES,SYSIN,.END'
Where to code CONSOLE: You can code CONSOLE (or CN) in the PARM parameter of the EXEC PGM=DFHSIP statement or in the SYSIN data set. This keyword can appear either at the end of the PARM parameter or in the SYSIN data set, but code it in one place only.
If you code CONSOLE (or CN) in the PARM parameter, and PARM also contains the SYSIN keyword, CICS does not begin reading parameters from the console until it has finished reading and processing the SYSIN data set. Similarly, wherever you place the CONSOLE keyword in the SYSIN data set, CICS does not begin reading parameters from the console until it has finished reading and processing the SYSIN data set.
Examples:
//stepname EXEC PGM=DFHSIP,PARM='SIT6$,CONSOLE,.END'
//stepname EXEC PGM=DFHSIP,PARM='CONSOLE,SYSIN,.END'
//stepname EXEC PGM=DFHSIP,PARM='SIT=6$,CN,SI,.END'
If both SYSIN (or SI) and CONSOLE (or CN) appear as keywords of the PARM parameter, the order in which they are coded is irrelevant as long as no other keywords, other than .END, follow them.
For example:
//stepname EXEC PGM=DFHSIP,PARM='SIT6$,SI,CN,.END'
//stepname EXEC PGM=DFHSIP,PARM='SIT=6$,.END'
If .END is not the last entry in the PARM parameter, CICS truncates the PARM parameter and the parameters following the .END keyword are lost.
If you code .END, and it is not the last entry in the SYSIN data set, or not at the end of a SYSIN record, CICS initialization parameters following the .END are ignored. To avoid accidental loss of initialization parameters, ensure that the .END keyword is on the last record in the SYSIN data set, and that it is the only entry on that line. (However, if you want to remove some system initialization parameters from a particular run of CICS, you could position them after the .END statement just for that run.)
The following example shows the use of .END in a SYSIN data set:
//SYSIN DD *
* CICS system initialization parameters
SIT=6$,START=COLD,
* XRF=NO, ( XRF this run - SIT defines XRF=YES
PDIR=1$, ( SUFFIX of PSB directory
·
·
·
.END
/*
If you omit the PARM parameter from the EXEC PGM=DFHSIP statement, CICS assumes that there are no SIT override or other initialization parameters, and tries to load an unsuffixed module named DFHSIT. As a general rule, this is unlikely to be your intention, so the PARM parameter should at least specify the suffix of your system initialization table, using the SIT keyword. Alternatively, you can code the special SYSIN keyword as the only PARM parameter, and supply the suffix of your SIT and the other system initialization parameters from the SYSIN data set.
CICS scans the PARM string looking for a SIT= parameter, any of the special control keywords, or any system initialization parameters, and proceeds as follows:
Processing any system initialization parameters that are also present in the PARM parameter takes place only after the SIT has been loaded.
The rules for coding the PARM parameter on an EXEC job control statement are described fully in the OS/390 MVS JCL Reference manual. Briefly, the maximum number of characters you can code is 100, excluding the opening and closing delimiters, which can be either apostrophes or parentheses. All CICS system initialization parameters must be separated by a comma, and the separating commas are included in the 100 character limit. Because of this limiting factor, you might prefer to limit the use of the PARM parameter to specify the SYSIN control keyword only.
CICS scans the SYSIN data set looking for a SIT= parameter and any of the special keywords, as well as system initialization parameters.
If CICS finds a SIT= parameter in SYSIN, it tries to load that SIT, overriding any that was specified in the PARM parameter. If CICS does not find a SIT= parameter in SYSIN, it tries to load any SIT specified in the PARM parameter.
However, if after scanning the PARM parameter and the SYSIN data set CICS has not found a SIT= parameter, CICS does one of the following:
rr DFHPA1921 DBDCCICS PLEASE SPECIFY THE REQUIRED SIT SUFFIX, OR
SPECIFY 'NONE'(UNSUFFIXED).
There are a few rules to observe when coding CICS system initialization parameters in the SYSIN data set. These are:
GMTEXT='User''s text'
You can use apostrophes to punctuate message text, provided that you code two successive apostrophes to represent a single apostrophe (as shown in the example above). The apostrophes delimiting the text are mandatory.
Generally, CICS does not begin to read from the console until it has loaded the SIT and processed any initialization parameters that are coded in the PARM parameter and the SYSIN data set. CICS accepts system initialization parameters from the console until you terminate the input with .END.
You can specify a SIT= parameter only as the first parameter through the console when prompted by message DFHPA1921, at which point CICS tries to load the specified SIT. If you try to specify a SIT= parameter after CICS has loaded the SIT it is rejected as an error.
When it is ready to read parameters from the console, CICS displays the following message (where nn is the reply ID):
nn DFHPA1104 applid - SPECIFY ALTERNATIVE SIT PARAMETERS, IF ANY,
AND THEN TYPE '.END'.
You can enter as many initialization parameters as you can get on one line of the console, but you must use a comma to separate parameters. CICS continues to prompt for system initialization parameters with displays of message DFHPA1105 until you terminate console input by entering the .END control keyword.
If you have coded PARMERR=INTERACT, and CICS detects a parameter error, either in the keyword or in the value you have assigned to it, CICS prompts you to correct the error with message DFHPA1912 or DFHPA1915:
DFHPA1912 'applid' SIT OVERRIDE 'keyword' IS NOT RECOGNIZED.
SPECIFY CORRECT SIT OVERRIDE.
DFHPA1915 'applid' INVALID DATA HAS BEEN DETECTED FOR SIT OVERRIDE 'keyword'.
RESPECIFY THE OVERRIDE.
CICS prompts you to enter corrections to any errors it finds in the PARM parameter or the SYSIN data set after it has loaded the SIT, and as each error is detected. This means that if there is an APPLID parameter following the parameter that is in error, either in the PARM parameter or in the SYSIN data set, it is the APPLID coded in the SIT that CICS displays in messages DFHPA1912 and DFHPA1915.