>>-LOCATE--| pointer_group |--RESULT(cpsm-token)----------------> >--THREAD(cpsm-token)--RESPONSE(data-ref)--REASON(data-ref)---->< pointer_group |--+-| POSITION_group |-+---------------------------------------| '-| FILTER_group |---' POSITION_group .-TOP------------------. |--+----------------------+-------------------------------------| +-BOTTOM---------------+ +-POSITION(data-value)-+ +-FORWARD(data-value)--+ '-BACKWARD(data-value)-' FILTER_group .-FIRST-. |--+-FILTER(cpsm-token)----+--+-------+-------------------------| +-MARKED----------------+ +-LAST--+ +-NOTFILTER(cpsm-token)-+ +-NEXT--+ '-NOTMARKED-------------' '-PREV--'
This command positions the record pointer within a result set.
COPY, DELETE, FETCH, GETDEF, GROUP, MARK, ORDER, PERFORM OBJECT, PERFORM SET, REFRESH, SET, SPECIFY FILTER, UNMARK
If the pointer reaches the top of the result set, it remains positioned on the first resource table record. The pointer does not continue moving backward to the bottom of the result set.
The FILTER option positions the record pointer to a resource table record that meets the specified filter criteria. The FIRST, LAST, NEXT, or PREV option determines where in the result set the search begins and in what direction it continues.
The cpsm-token value that identifies a filter is returned by the SPECIFY FILTER command.
If the pointer reaches the bottom of the result set, it remains positioned on the last resource table record. The pointer does not continue moving forward to the top of the result set.
You can mark resource table records by using the MARK and UNMARK commands.
The NOTFILTER option positions the record pointer to a resource table record that does not meet the specified filter criteria. The FIRST, LAST, NEXT, or PREV option determines where in the result set the search begins and in what direction it continues.
The cpsm-token value that identifies a filter is returned by the SPECIFY FILTER command.
You can mark resource table records by using the MARK and UNMARK commands.
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 move the record pointer to the fifth resource table record in a result set, you would specify POSITION(5).
The following is a list of the RESPONSE values that can be returned by the LOCATE command. The description of each RESPONSE includes a list of associated REASON values, if appropriate.