SET
The SET primary command enables you to override the system processing defaults. A value set by a keyword of the SET command is effective until it is replaced by another SET primary command using that keyword. Multiple SET primary commands can be specified in a single execution. Some system processing defaults can be overridden by an individual command statement.
When used, the SET primary command requires at least one keyword. Each keyword can be used only once. Optional keywords can be entered in any order

CHECKPOINT | Sets the checkpoint threshold. The CHECKPOINT keyword controls how frequently checkpoints are issued. Checkpoints are issued in a BMP environment and a DL/I environment if a disk log is used and the IMS parameter specifies BKO=Y. The checkpoint threshold is compared to the update weight value to determine when to take a checkpoint. The update weight is managed as follows:
At the start of processing a statement, if the update weight is greater than half the checkpoint threshold, File-AID for IMS/FLEX takes a checkpoint. While processing a statement, if the update weight is greater than the checkpoint threshold, File-AID for IMS/FLEX takes one checkpoint before reading the next root with a unique key. The default checkpoint threshold is 500. |
MAXCALLS | Sets the maximum number of DL/I calls allowed per command statement during execution. The number includes all calls to IMS needed to satisfy a command request including, segment retrieval for specific segment processing and skip processing. The value specified should be somewhat higher than the total number anticipated. If the number of DL/I calls for any command exceeds the MAXCALLS number, the step is terminated. |
MAXERRORS | Sets the maximum number of non-critical execution errors allowed per command statement before terminating the command statement. The number of current errors is reset to 0 prior to each primary command statement. Non-critical errors are counted and compared against the specified MAXERROR number. If the error count is less than the specified number, command processing continues. If the count is equal to or greater than the specified number, processing stops for this command statement. The following conditions are included in the error count:
Some error conditions, most of which should never occur, will result in an abnormal termination. Error messages in the range of B600 through B9xx fall into this category. Processing terminates or continues to the next command statement depending on the SKIP/NOSKIP value of the PROCESS keyword. The default maximum number of errors is 1. |
Modifies the system default print values for all commands.
SGM/NOSGM and FPRINT/SPRINT can be temporarily overridden by the PRINT primary command or sub-command. These values are applicable to the PRINT function only, they do not control the printing of segments that are inserted, deleted, or replaced. Multiple values must be enclosed in parentheses and separated by a comma. For example: SET PRINT=(CALL,PCB,SPRINT) The defaults are NOCALL, NOPCB, SGM, and FPRINT |
PROCESS | Modifies the system processing default when a non-critical error is encountered. The default is NOSKP.4 hours
|
INPUT | Specifies the name of the PDS member to be used by the input processing function. See Input file variables: for a description of the relationship between the PDS member on the INPUT keyword and the value given with SET=INPUT(start,length,type). The following considerations relate to the INPUT keyword:
|
OUTPUT | Specifies the name of the PDS member to use as output of the concatenated keys when CKEY is specified on the OPTION keyword of the COUNT primary command. The following considerations relate to the OUTPUT keyword:
Member name must follow standard naming conventions. |
LANGUAGE | Defines the application language used in field names and segment layout cross references. The following considerations relate to the LANGUAGE keyword:
|
ALLOW-SEQUENTIAL | Defines whether a statement that results in a database scan is to be allowed or considered as an error.
|
Examples
The following SET command statement changes the checkpoint threshold to 250. The input member is CHNGDATA. If the input member is not provided, the input file is assumed to be a non-partitioned sequential data set.
PSB PCB=2;
SET CHECKPOINT=250 INPUT=CHNGDATA;
The first SET command statement in the following example sets the print values to print call information for each DL/I call, print the PCB information for each DL/I call, and print the data in unformatted mode. In addition, the system defaults are changed so that the process skips to the next command if a non-critical error occurs. A maximum of 500 DL/I calls is made. The output is named CUSTKEYS.
The second SET statement sets the maximum calls to 500, sets the maximum errors to 10, and names the output PARTKEYS.
PSB DBDNAME=CUSTPDBD;
SET PRINT=(CALL,PCB,SPRINT) PROCESS=SKIP MAXCALLS=500 OUTPUT=CUSTKEYS;
:
PSB DBDNAME=PARTDBD;
SET MAXCALLS=500 MAXERRORS=10 OUTPUT=PARTKEYS;
In the following example, the checkpoint threshold is set to 200. The input member name is ORDRCHNG.
PSB PCB=2;
SET CHECKPOINT=200 INPUT=ORDRCHNG;
Related topics