SET commands
You can change most of the system elements and resource definitions about which you can inquire, although in general you cannot change as many option values as you can retrieve. Changes are made with a SET command naming the resource or system element.
Exceptions: When a SET command results in an exception condition, CICS makes as few of the requested changes as possible. To establish which, if any, changes have been made, you can issue the corresponding INQUIRE command.
Permanence: If you change a system setting or resource definition element that is ordinarily recorded in the CICS global catalog, the change is also recorded in the catalog and thus preserved over a warm or emergency restart. If the information is not ordinarily recorded, it lasts only for the current execution of CICS. In a cold or initial start, the catalog information is discarded and all effects of earlier SET commands are lost.
Recoverability: SET commands are not recoverable. Their effects are not backed out if the task that issued them abends or issues a SYNCPOINT ROLLBACK command. Consequently, SET commands do not lock resources, and you do not need to precede a SET with the corresponding INQUIRE command.
No change
values: Except where there is a default value for an option, CICS does not change the value associated with an option that you omit. However, there is a second way to indicate that you want no change. If you specify the null value in a sender option that is not required, CICS leaves the option value unchanged. Although you can get the same effect by omitting the option if there is no default, the ability to specify ano change
value allows you to vary the options in a command as well as the option values, simplifying your code in some situations.For example, suppose you needed to change many different combinations of options, depending on the outcome of some calculations. Your code might look something like this:IF ... MOVE DFHVALUE(NOTDELETABLE) TO DEL ELSE MOVE DFHVALUE(IGNORE) TO DEL. IF ... MOVE 2 TO POOL ELSE MOVE -1 TO POOL. IF ... MOVE 'TAXID.MAIN' to DSN ELSE MOVE SPACES TO DSN. EXEC CICS SET FILE('TAXMAIN ') DELETE(DEL) LSRPOOLNUM(POOL) DSNAME(DSN) END-EXEC.See Null values for more about null values.
Note: There are a few options, such as the NEXTTRANSID option in a SET TERMINAL command, for which blanks (the null value for a character field) are a meaningful value. For these options, there is no null value, and you must omit the option if you do not want to change its value; these cases are noted in the option descriptions.