Remove Data Queue Entry (RMVDTAQXCL)
The Remove Data Queue Entry (RMVDTAQXCL) command removes zero, one, or more entries from a data queue.
This function is also available with command RMVDTAQE in library VC2XCL. Any use of this alternative command name should be library qualified in case the i operating system were to use this command name in a future release.
Restrictions:
- You must have *EXECUTE authority to the library where the data queue is located.
- You must have *OBJOPR and *READ authority to the data queue.
| Keyword | Description | Choices | Notes |
| DTAQ |
Data queue |
Qualified object name |
Required, Positional 1 |
| Qualifier 1: Data queue |
Name |
| Qualifier 2: Library |
Name, *LIBL, *CURLIB |
| RMV |
Remove |
*NXT, *BYKEY |
Optional, Positional 2 |
| KEYCMP |
Key comparison |
*EQ, *NE, *GT, *LT, *GE, *LE, ' ' |
Optional |
| KEY |
Key data |
Character value |
Optional |
Data queue (DTAQ)
Specifies the qualified name of the data queue to be used.
This is a required parameter.
Qualifier 1: Data queue
- *LIBL
- The library list for the job is used.
- *CURLIB
- The current library for the job is used. If no current library entry exists in the library list, QGPL is used.
- name
- Specify the name of the library.
Remove (RMV)
Specifies the data queue entry(s) to be removed.
- *NXT
- The next data queue entry is removed. For FIFO queues this will be the oldest entry. For LIFO queues this will be the most recently added entry.
This special value can only be used for non-keyed data queues.
- *BYKEY
- The data queue entry(s) to remove are identified by the key comparision (KEYCMP) and key (KEY) value parameters. All entries satisfying the comparison and key value are removed.
This special value can only be used for keyed data queues.
Key comparison (KEYCMP)
Specifies the comparison criteria to be used with the KEY parameter and the keys of data queue entries when determining the entry(s) to remove.
Key value comparisons are performed based on hexadecimal key values.
- *EQ
- Remove all entries with a key value equal to the KEY parameter value.
- *NE
- Remove all entries with a key value not equal to the KEY parameter value.
- *GT
- Remove all entries with a key value greater than the KEY parameter value.
- *LT
- Remove all entries with a key value less than the KEY parameter value.
- *GE
- Remove all entries with a key value greater than or equal to the KEY parameter value.
- *LE
- Remove all entries with a key value less than or equal to the KEY parameter value.
Key data (KEY)
Specifies the key value to be used when determining the data queue entry(s) to be removed. If the length of the key value is less than the length of the key defined when creating the data queue the KEY value will be blank padded. If the length of the key value is greater than the length of the key defined when creating the data queue the KEY value will be truncated.
- character-value
- Specify the key value.
Examples for RMVDTAQXCL
Example 1: Removing Entry From Non-Keyed Data Queue
RmvDtaQXCL DtaQ(QTEMP/MyQueue)
This command removes the next entry from a non-keyed data queue. The definition of "next" depends on if the data queue is defined with a sequence of first-in first-out (FIFO) or las-in first-out (LIFO).
Example 2: Removing Entry From Keyed Data Queue
RmvDtaQXCL DtaQ(QTEMP/KEYED) Rmv(*ByKey) +
KeyCmp(*GT) Key(A)
This command removes all entries from the keyed data queue KEYED, in library QTEMP, that have a key value greater than 'A'.
Error messages for RMVDTAQXCL
*ESCAPE Messages
- XCL800D
- KEY not specified but data queue is keyed. Specify a KEY value.
- XCL800E
- RMV(*BYKEY) specified but data queue is not keyed. Specify RMV(*NXT).
- XCL9002
- Function did not complete. See previously listed messages related to possible user errors.
- XCL9003
- Function did not complete. See previously listed messages for possible cause.
- XCL9004
- Function did not complete. See previously listed messages for possible cause.
- XCL9005
- Function did not complete. Contact your service provider.
|