CANCEL - IBM Mainframe

« Previous Topics
Retrieve
Start
Wait Event
Next Topics »
Suspend
Enq
Deq

The CANCEL command is issued to abnormatry terminate interval control requests. Examples might be a previously issued DELAY, POST, or START command; When using the SYSID option the command is shipped to a remote system specified in the option. Without the SYSID option, the TRANSID option will indicate where the command is to be executed. The cancellation effect will vary depending on the type of command being canceled:

  • DELAY command can only be canceled before its expiration, and then only by another task that did not issue the DELAY command, which is still suspended for the duration of the request. The REQID of the suspended task must be used in the CANCEL command. The result of the cancel command produces the same effect as if the suspended task becomes dispatchable by reaching the original expiration time.
  • POST command cancellations can be issued by the same task or by another task. REQID is not specified when the cancel command is issued by the same program. The cancellation command can be issued either before or after the original request has expired producing the net effect as though the original request had never been issued. REQID for the task to be cancelled is required when the command is issued from another task. The net effect of the cancellation request is identical to an early expiration of the original POST request. (The timer event control area for the other task is posted as though the original expiration time had been reached)
  • START command cancellation requires the REQID of the original command be specified. The net effect of the cancellation is as if the original command was never made. The cancellation of a START command must be made before the command expires.
  • The syntax of the command is given below:

    syntax of the command

The various options of the CANCEL command are:

  • REQID (name) - When the option is required, there exist two methods of retrieving the name. One is to retrieve it from the EIBREQID field immediately after the DELAY, POST, or START command and store it in a variable for later use. The other is to define it yourself, when coding a DELAY, POST, or START command by specifying the REQID option of the command. The easiest method is the first, which lets CICS define a unique REQID. The name is used as a temporary storage identifier on the temporary storage queue. Therefore the cancel command must be issued from the same CICS region in which the DELAY, POST, or START command was issued for it to take effect. This option is ignored when canceling a PQST command issued from the same task.
  • SYSID (name) - Used in canceling a POST, DELAY, or START command on another CICS region identified by the 1-4 character CICS region name.
  • TRANSID (name) - Specifies a transaction name previously defined to CICS. The transaction name is 1-4 characters long. When SYSID option is specified in addition to this option, the transaction is assumed to be on a remote system. If the SYSID option is omitted, then the entry in the PCT (program control table) is used to determine whether the transaction is on a local or a remote system.

The handle conditions for the CANCEL command are given below. Handling of any of the following conditions raised by the cancel command is not necessary because they represent errors in which the program generally cannot recover.

  • INVREQ - The result when the CANCEL command issued is invalid. The default action is to abnormally terminate the issued CANCEL command.
  • ISCINVREQ - The result from an indicated failure from a remote system that does not correspond to a known condition. The default action is to abnormally terminate the issued CANCEL command.
  • NOTAUTH - The result of a failed resource security check on TRANSID(name). The default action is to abnormally terminate the issued CANCEL command.
  • NOTFND - The result when there is no matching unexpired interval control command associated with the request identifier specified. The default action is to abnormally terminate the issued CANCEL command.
  • SYSIDERR - The result when a system identified by SYS1D could not be located or accessed. Possible reasons for the error could be the link to the remote system is closed or because the remote system had not been defined to CICS. The default action is to abnormally terminate the issued CANCEL command.
« Previous Topics
Retrieve
Start
Wait Event
Next Topics »
Suspend
Enq
Deq

All rights reserved © 2018 Wisdom IT Services India Pvt. Ltd DMCA.com Protection Status

IBM Mainframe Topics