SETS/SETU call
The Set Backout Point (SETS
) call is used
to set an intermediate backout point or to cancel all existing backout
points.
The Set Unconditional (SETU
) call operates
like the SETS
call except that the SETU
call
is not rejected if unsupported PCBs are in the PSB or if the program
uses an external subsystem.
Format
Call Name | DB/DC | DBCTL | DCCTL | DB Batch | TM Batch |
---|---|---|---|---|---|
SETS/SETU | X | X | X | X | X |
Parameters
- i/o pcb
- Specifies the I/O PCB, the first PCB address in the list passed to the program. This parameter is an input and output parameter.
- aib
- Specifies the application interface block (AIB) that is used for
the call. This parameter is an input and output parameter. The following fields must be initialized in the AIB:
- AIBID
- Eye catcher. This 8-byte field must contain DFSAIBbb.
- AIBLEN
- AIB lengths. This field must contain the actual length of the AIB that the application program obtained.
- AIBRSNM1
- Resource name. This 8-byte, left-justified field must contain the PCB name IOPCBbbb.
- AIBOALEN
- I/O area length. This field must contain the length of the I/O area that is specified in the call list.
- i/o area
- Specifies the area in your program that contains the data that
is to be kept by IMS and returned
on the corresponding
ROLS
call. This parameter is an input parameter. - token
- Specifies the name of the area in your program that contains a 4-byte identifier. This parameter is an input parameter.
Usage
Except for the call names
themselves, the SETS
and SETU
format
and parameters are the same.
The SETS
and SETU
calls
provide the backout points that IMS uses
in the ROLS
call. The ROLS
call
operates consistent with the SETS
and SETU
call
backout points.
SETS
or SETU
is
as follows: - SETS
- The
SETS
call is rejected. The SC status code in the I/O PCB indicates that either the PSB contains unsupported options or the application program made calls to an external subsystem. - SETU
- The
SETU
call is not rejected. The SC status code indicates that unsupported PCBs exist in the PSB or the application made calls to an external subsystem.
Restrictions
The SETS
call
is not valid when the PSB contains a DEDB or MSDB PCB, or when the
call is made to a DB2® database.
CPI-C
driven transaction programs cannot issue the SETS/SETU
call.
The Spool API functions do not restrict the use of the SETS/SETU
and ROLS
calls.
This is so, because these calls can be used by the application outside
the processing of print data sets. When these commands are issued,
the Spool API takes no action because these commands cannot be used
for the partial backout of print data sets.
Before a ROLS call, you can specify a maximum of 255 SETS calls with the same token and still back out to the correct message level. After 255 SETS calls, the messages continue to back out, but only to the same message level as at 255th SETS call. The SETS token count resets to zero during sync point processing.
You may specify a maximum of 255 SETS calls with the same token before a ROLS call and still be able to back out to the correct message level. After 255 SETS calls, the messages will continue to back out to the same message level as at 255th SETS call. The SETS token count is reset to zero during sync point processing.