MARK
Mark selected resource table records in a result set.
Description
- The MARK command always begins processing with the last record that was fetched, rather than the next one in the result set.
- Any resource table records that you marked in the result set previously remain marked unless you use the RESET option.
Related commands
COPY, DELETE, EXPAND, FETCH, GROUP, LOCATE, PERFORM SET, REFRESH, SET, SPECIFY FILTER, UNMARK
Options
- ALL
- Marks all the resource table records in the result set. When you specify ALL, the RESET option is ignored.
- COUNT(data-ref)
- Names a variable to receive the number of resource table records that could not be marked.
- CURRENT
- Marks only the current resource table record.
- FILTER(cpsm-token)
- Identifies a filter to be used for this operation. The FILTER
option marks only those resource table records that meet the specified
filter criteria.
The cpsm-token value that identifies a filter is returned by the SPECIFY FILTER command.
- INTO(data-area)
- Identifies a buffer to receive a list of resource table records
that could not be marked.
This buffer must be long enough to hold the maximum number of record numbers that could result from your MARK request (if none of them can be marked). Record numbers are listed individually (not by range) in the INTO buffer and are separated by commas.
Note: If you receive a RESPONSE value of WARNING AREATOOSMALL (because the buffer was not long enough), the data returned in this buffer represents a partial list of the records that could not be marked. - LENGTH(data-ref)
- A fullword value that specifies the length of the INTO buffer. The value that CICSPlex® SM returns in this field depends on the RESPONSE value for the MARK command:
- OK
- The actual length of the data returned in the INTO buffer.
- WARNING AREATOOSMALL
- The buffer length that would be required to hold a complete list of records that could not be marked.
- NOTFILTER(cpsm-token)
- Identifies a filter to be used for this operation. The NOTFILTER
option marks only those resource table records that do not meet the
specified filter criteria.
The cpsm-token value that identifies a filter is returned by the SPECIFY FILTER command.
- PARM(data-area)
- Identifies a buffer containing the parameter expression
that lists the resource table records to be marked. The parameter expression for the MARK command is a character string of record numbers. For example:
To specify individual records, separate the record numbers with a comma. To specify a range of records, separate the low and high record numbers with a colon. The whole parameter expression must end with a period.PARM('1,3,6:9,24.')For details on how to use a parameter expression with the MARK command, see Developing CICSPlex SM applications.
- PARMLEN(data-value)
- A fullword value that specifies the length of the PARM buffer.
- POSITION(data-value)
- Marks the nth resource table record in the result set.
This value must be a number that identifies the record's relative position in the result set. The first record in a result set is identified by the number 1.
For example, to mark the fifth resource table record in a result set, you would specify
POSITION(5). - REASON(data-ref)
- Names a variable to receive the fullword reason value returned by this command.
- RESET
- Removes any marks previously placed on resource table records
in the result set and marks only those records you identify in the
current MARK request.
If you do not use the RESET option, any records that you marked previously remain marked. That is, the records identified in the current MARK request are marked in addition to any previously marked records.
- RESPONSE(data-ref)
- Names a variable to receive the fullword response value returned by this command.
- RESULT(cpsm-token)
- Identifies the API result set to be processed by this operation.
The result set can be one produced by any of these commands:
- COPY
- GET
- GETDEF
- GROUP
- PERFORM OBJECT.
- THREAD(cpsm-token)
- Identifies the API thread to be used for this operation. The cpsm-token value that identifies a thread is returned by the CONNECT command.
Conditions
- OK
- The command completed processing successfully.
- NODATA
- No records were found that matched the specified search criteria.
- WARNING
- The command completed processing with a warning, for one of the
following reasons:
- AREATOOSMALL
- You specified the INTO and LENGTH options, but the buffer was not long enough to hold the string of records that could not be marked.
- DATAERROR
- One or more of the records specified in the PARM buffer could not be found to be marked. If you specified the COUNT option, the number of records that could not be marked is returned. If you specified the INTO and LENGTH options, a list of the records is returned in the buffer.
- BUSY
- A busy condition occurred for the following reason:
- RESULT
- The result set specified on the RESULT option is being processed by another command.
- ENVIRONERROR
- An environment error occurred for one of the following reasons:
- NOSERVICE
- The application stub program could not load the API service module.
- NOSTORAGE
- The application stub program could not obtain the necessary storage in the address space where the processing thread is running.
- SOCRESOURCE
- A required resource that is owned by the CMAS is not available.
- SOLRESOURCE
- A required resource that is locally owned (that is, owned by the address space where the processing thread is running) is not available.
- FAILED
- The command failed for one of the following reasons:
- ABENDED
- Command processing abended.
- EXCEPTION
- Command processing encountered an exceptional condition.
- INVALIDPARM
- An invalid parameter was detected. The parameter that is invalid
is returned as the reason value:
- COUNT
- FILTER
- INTO
- LENGTH
- NOTFILTER
- PARM
- PARMLEN
- RESULT
- THREAD.
- NOTAVAILABLE
- A not available condition occurred for one of the following reasons:
- APITASK
- The API control subtask is not active.
- CPSMAPI
- The CMAS to which the processing thread is connected is not available for API processing.
- SERVERGONE
- The CMAS to which the processing thread was connected is no longer active.
- VERSIONINVL
- A version conflict occurred for one of the following reasons:
- NOTSUPPORTED
- The version of the application stub program used for this command is not supported.
- NOTVSNCONN
- The version of the application stub program used for this command is not the same as the version used with the CONNECT command.
