z/OS MVS Programming: Sysplex Services Reference
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Parameter Descriptions

z/OS MVS Programming: Sysplex Services Reference
SA38-0658-00

The parameter descriptions for REQUEST=MOVE are listed in alphabetical order. Default values are underlined:
REQUEST=MOVE
Use this input parameter to move an entry.
,ADJAREA=NO_ADJAREA
,ADJAREA=adjarea
Use this input parameter to specify a storage area to contain the adjunct data that is read from or written to an entry.

Specify ADJAREA only for structures that support adjunct data. (Adjunct areas for a structure are established through the IXLCONN macro.)

To Code: Specify the RS-type name or address (using a register from 2 to 12) of a 64-byte area that contains or will contain the adjunct data.

,ANSAREA=NO_ANSAREA
,ANSAREA=ansarea
Use this output parameter to specify an answer area to contain information returned from the request. The format of the answer area is described by mapping macro IXLYLAA.
On a successful completion (for a synchronous request: RC=0, for an asynchronous request: ECB is posted, IXLFCOMP indicates completion, or your complete exit ran) of the request, the following information is returned to the answer area:
  • List entry controls of the existing or new entry (field LAALCTL).
  • The number of list entries or elements residing on the list (field LAALISTCNT).
  • The total number of allocated entries in the structure (field LAATOTALCNT).
  • The total number of allocated elements in the structure (field LAATOTALELECNT).

To Code: Specify the RS-type name or address (using a register from 2 to 12) of an area (with a length of ANSLEN) that will contain the information returned by the request.

,ANSLEN=anslen
Use this input parameter to specify the size of the storage area specified by ANSAREA.

Check the prologue of the IXLYLAA mapping macro for the minimum required size of the answer area, or use the length field (LAA_LEN) in the LAA.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of a 2-byte field that contains the size, in bytes, of the answer area.

,AUTHCOMP=NO_AUTHCOMP
,AUTHCOMP=authcomp
Use this input parameter to specify a value to be compared to the list authority value of the list specified by LISTNUM. You must supply the LISTNUM parameter.

If the comparison does not meet the condition specified by the AUTHCOMPTYPE parameter (EQUAL or LESSOREQUAL), the request fails.

Note: The AUTHCOMP parameter is valid only for list structures allocated in a coupling facility with CFLEVEL=1 or higher.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of the 16-byte field that contains the list authority value.

,AUTHCOMPTYPE=EQUAL
,AUTHCOMPTYPE=LESSOREQUAL
Use this input parameter to specify how the list authority comparison is to be performed.
EQUAL
The list authority for the list specified by LISTNUM must be equal to the value specified for AUTHCOMP.
LESSOREQUAL
The list authority for the list specified by LISTNUM must be less than or equal to the value specified for AUTHCOMP.
Note: The AUTHCOMPTYPE parameter is valid only for list structures allocated in a coupling facility with CFLEVEL=1 or higher.
,BUFADDRTYPE=VIRTUAL
,BUFADDRTYPE=REAL
Use this input parameter to specify whether the buffer addresses specified in the BUFLIST list are virtual storage or real storage addresses.
VIRTUAL
The buffer addresses are virtual storage addresses. The virtual storage can be pageable or nonpageable. See the PAGEABLE parameter for information about managing storage binds when specifying virtual storage addresses.
REAL
The buffer addresses are real storage addresses.

It is the caller's responsibility to manage the binds between the data buffer virtual storage and the real storage addresses provided. The caller must ensure that the data buffer virtual storage remains bound to the real storage addresses provided until the request completes.

,BUFALET=NO_BUFALET
,BUFALET=bufalet
Use this input parameter to specify an access list entry token (ALET) to be used in referencing all of the buffers specified by BUFLIST.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of a 4-byte field that contains the ALET.

,BUFFER=buffer
Use this output or input parameter to hold entry data to be read from or written to the designated entry. The purpose of the BUFFER area depends on the DATAOPER value you specify:
  • If you specify DATAOPER=READ, the buffers hold output data—entry data that was read from an existing entry.
  • If you specify DATAOPER=WRITE, the buffers hold input data—entry data to be written to an existing or new entry.
You can define the buffer size to be a total size of up to 65536 bytes. Depending on the size you select, the following restrictions apply:
  • If you specify a buffer size of less than or equal to 4096 bytes, you must ensure that the buffer:
    • Is 256, 512, 1024, 2048, or 4096 bytes.
    • Starts on a 256-byte boundary.
    • Does not cross a 4096-byte boundary.
  • If you specify a buffer size of greater than 4096 bytes, you must ensure that the buffer:
    • Is a multiple of 4096 bytes.
    • Is less than or equal to 65536 bytes.
    • Starts on a 4096-byte boundary.

See the BUFSIZE parameter description for defining the size of the buffer.

Note: You cannot code BUFFER with MODE=ASYNCNORESPONSE.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of an area (with a length of BUFSIZE) that contains the entry data.

,BUFINCRNUM=bufincrnum
Use this input parameter to specify the number of 256-byte segments comprising each buffer in the BUFLIST list.

Valid BUFINCRNUM values are 1,2,4,8, or 16, which correspond to BUFLIST buffer sizes of 256, 512, 1024, 2048, and 4096 bytes respectively.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of a 1-byte field that contains 1,2,4,8, or 16.

,BUFLIST=buflist
Use this output or input parameter to specify a list of buffers to hold entry data to be read from or written to the designated entry. The purpose of the BUFLIST buffers depend on the DATAOPER value you specify:
  • If you specify DATAOPER=READ, the buffers hold output data—entry data that was read from an existing entry.
  • If you specify DATAOPER=WRITE, the buffers hold input data—entry data to be written to an existing or new entry.

BUFLIST specifies a 128-byte storage area that consists of a list of 0 to 16 buffer addresses.

The 128-byte storage area must:
  • Consist of 0 to 16 elements.
  • Each element must consist of an 8-byte field in which:
    • The left (high-order) four bytes are reserved and
    • The right (low-order) four bytes contain the address of a buffer.
The BUFLIST buffers must:
  • Reside in either the same address space or data space.
  • Be the same size: either 256, 512, 1024, 2048, or 4096 bytes.
  • Start on a 256-byte boundary and not cross a 4096-byte boundary.
    Note: The buffers do not have to be contiguous in storage. (List services treats BUFLIST buffers as a single, contiguous buffer, even if the buffers are not contiguous.)

    See the BUFNUM and BUFINCRNUM parameter descriptions for defining the number and size of buffers.

Note: You cannot code BUFLIST with MODE=ASYNCNORESPONSE.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of a 128-byte area that contains the list of buffer addresses.

,BUFNUM=bufnum
Use this input parameter to specify the number of buffers in the BUFLIST list. Valid BUFNUM values are from 0 to 16. A value of zero indicates that no data is to be read into the buffers or written to the list entry.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of a 1-byte field that contains the number of buffers in the buffer list.

,BUFSIZE=bufsize
Use this input parameter to specify the size of the BUFFER area. See the BUFFER parameter description for valid buffer sizes.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of a fullword field that contains the size of the buffer (BUFFER) in bytes.

,BUFSTGKEY=CALLERS_KEY
,BUFSTGKEY=bufstgkey
Use this input parameter to specify a storage key that you define and use when referencing the buffers specified by BUFLIST or the buffer specified by BUFFER.

If you do not specify BUFSTGKEY, or if you specify BUFSTGKEY=CALLERS_KEY, all references to the buffer(s) are performed using the caller's PSW key.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of an 8-bit field that contains the storage key in the format B'kkkkxxxx', where kkkk is the key and xxxx is ignored.

,CONTOKEN=contoken
Use this input parameter to specify the connect token that was returned by the IXLCONN service. The connect token uniquely identifies your connection to the list structure, and must be specified on each IXLLIST invocation.

The connect token is available in the IXLCONN answer area mapped by IXLYCONA.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of a 16-byte field that contains the connect token.

,CURSORUPDTYPE=NEXT
,CURSORUPDTYPE=NEXTCOND
,CURSORUPDTYPE=CURRENT
,CURSORUPDTYPE=CURRENTCOND
Use this input parameter to specify how the list cursor is to be updated when UPDATECURSOR=YES is specified.
Note: The NEXTCOND, CURRENT, and CURRENTCOND values are valid only for list structures allocated in a coupling facility with CFLEVEL=1 or higher.
CURSORUPDTYPE=NEXT
Update the list cursor to point to the list entry before or after the target entry.
  • For MOVE requests that specify DATAOPER=WRITE and ENTRYTYPE=ANY and that result in the creation of a new entry, the cursor for the list specified by MOVETOLIST is updated. The direction of the cursor update depends on the value specified for MOVETOPOS.
  • For all other requests, the cursor for the source list is updated. The direction of the cursor update depends on the value specified for LISTPOS or LISTDIR.
CURSORUPDTYPE=NEXTCOND
Update the list cursor to point to the list entry before or after the target entry only if the cursor points to the target list entry, and that list entry is moved or deleted.

Set the list cursor direction with SETCURSOR on a WRITE_LCONTROLS request.

The list cursor will be reset to binary zeros if either:
  • The entry is the last entry on the list and the list cursor direction is set to a head-to-tail direction.
  • The entry is the first entry on the list and the list cursor is set to a tail-to-head direction.
CURSORUPDTYPE=CURRENT
Set the list cursor to point to the list entry processed for the request.

If the list entry is deleted or moved to another list, then the list cursor will be reset to binary zeros.

CURSORUPDTYPE=CURRENTCOND
Set the list cursor to point to the list entry processed only if the list cursor value currently is zero and the target list entry is not deleted or moved to another list.

If the list entry is deleted or moved to another list, then the list cursor will remain binary zeros.

,DATAOPER=NONE
,DATAOPER=READ
,DATAOPER=WRITE
Use this input parameter to specify an operation to be performed on the designated entry.
NONE
The existing entry is moved; no additional operation is performed.
READ
The existing entry is moved, and its entry data and/or adjunct data is read:
  • If you specified BUFFER or BUFLIST, the entry data is read into whichever buffer area you have specified.
  • If you specified ADJAREA, the adjunct data is read into the adjunct area.
WRITE
The existing entry is moved, and its entry data and/or adjunct data is updated. If this request creates a new entry, the entry data and/or adjunct data is written to the new entry:
  • If you specified BUFFER or BUFLIST, the entry data is written to the existing or new entry.
  • If you specified ADJAREA, the adjunct data is written to the existing or new entry.
,ELEMNUM=elemnum
Use this input parameter to specify the number of elements to be allocated to the existing or new data entry. Valid ELEMNUM values are from zero to the MAXELEMNUM value that was specified on the IXLCONN macro.
Considerations for specifying ELEMNUM are:
  • If this request creates a new entry, the number of elements is set to the ELEMNUM value.
  • If the entry already exists, the number of elements is updated to the ELEMNUM value specified.
Note: If the data from the buffers exceeds the amount of space in the elements, the data will be truncated. If the data from the buffers is less than the amount of space in the elements, the remaining space will be padded with binary zeros.
If you specify an ELEMNUM value of zero:
  • No entry data will be written to the new entry.
  • Any entry data in the existing entry will be deleted.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of a 1-byte field that contains the number of elements.

,ENTRYID=entryid
Use this input parameter to designate the entry identifier of an existing entry to be moved. ENTRYID applies only to locating an existing entry; it does not determine the identifier of a new entry should one be created.

If an entry with this identifier does not exist (and ENTRYTYPE=ANY is specified), a new entry is created on the MOVETOLIST list with a unique entry identifier assigned by list services. (The entry identifier you specify will be ignored.)

When ENTRYID is specified with ENTRYNAME, ENTRYKEY, or LISTPOS, list services uses only ENTRYID to determine if the entry already exists.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of a 12-byte field that contains the entry identifier.

,ENTRYKEY=NO_ENTRYKEY
,ENTRYKEY=entrykey
Use this input parameter to either:
  • Designate the entry key of an existing entry to be moved.
  • Assign an entry key to a new entry to be created, if MOVETOKEY is not specified. If MOVETOKEY is specified, the MOVETOKEY key is assigned to the new entry.

The existing entry must reside on the LISTNUM list. The existing entry will be placed on the MOVETOLIST list. If a new entry is created it will be placed on the MOVETOLIST list.

If DATAOPER=NONE or DATAOPER=READ is specified, the specified entry key designates an existing entry.

If DATAOPER=WRITE is specified, the specified entry key designates an existing entry or can be assigned to a new entry. See z/OS MVS Programming: Sysplex Services Guide for information about how entry keys are assigned to existing or created entries.

Specify ENTRYKEY only for structures that support keyed entries.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of a 16-byte field that contains the entry key.

,ENTRYNAME=entryname
Use this input parameter to either:
  • Designate an existing entry to be moved.
  • Assign an entry name to a new entry to be created.

Both existing and new entries will be placed on the MOVETOLIST list.

If DATAOPER=NONE or DATAOPER=READ, the specified entry name designates an existing entry.

If DATAOPER=WRITE is specified, whether the specified entry name designates an existing entry or is assigned to a new entry depends on the following:
  • If either of the following is true, the specified entry name designates an existing entry:
    • ENTRYTYPE=OLD, and the entry already exists.
    • ENTRYTYPE=ANY, neither ENTRYID nor LOCBYCURSOR is also specified, and the entry already exists.
    • If ENTRYTYPE=ANY and the entry does not already exist, a new entry is created with the ENTRYNAME name assigned to it.

Specify ENTRYNAME only for structures that support named entries. Each entry name is unique within the structure.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of a 16-byte field that contains the entry name.

,ENTRYTYPE=ANY
,ENTRYTYPE=OLD
Use this input parameter to specify whether you want to either:
  • Update an existing entry or create a new entry
  • Update an existing entry
ANY
Either update an existing entry or create a new entry. If the entry exists, its data is replaced with the new data. If the entry does not exist, one will be created with the new data.
OLD
Update an existing entry. The entry must already exist, or the request fails.
,KEYREQTYPE=EQUAL
,KEYREQTYPE=LESSOREQUAL
,KEYREQTYPE=GREATEROREQUAL
Use this input parameter to specify how, if at all, the entry key of the existing entry to be moved can differ from the entry key specified by ENTRYKEY. KEYREQTYPE applies only to locating an existing entry; it does not determine the key of a new entry should one be created.
EQUAL
The entry must have a key that equals the ENTRYKEY key.
LESSOREQUAL
The entry must have a key that is less than or equal to the ENTRYKEY key.
GREATEROREQUAL
The entry must have a key that is greater than or equal to the ENTRYKEY key.
Note:
  1. When no entries on the list meet the requirements of the KEYREQTYPE, and a new entry cannot be created (TYPE=OLD was specified), the request will be failed with a return code X'8' and reason code IXLRSNCODENOENTRY, or a new list entry will be allocated, depending on the other options specified.
  2. When LESSOREQUAL or GREATEROREQUAL are specified, if no entries on the list have an entry key value equal to the specified value, but entries exist with an entry key value greater than (if GREATEROREQUAL was specified), or less than (if LESSOREQUAL was specified) the entry key value specified, then the entry with an entry key value closest to the value specified will be selected. When multiple entries have the same entry key value, LISTPOS is used to resolve whether the first or last entry with the entry key value is selected.
,LISTDIR=TOTAIL
,LISTDIR=TOHEAD
Use this input parameter with UPDATECURSOR to specify the direction in which the list cursor is moved as a result of this request. See the UPDATECURSOR parameter for a full description of LISTDIR.
,LISTKEYINC=NO_LISTKEYINC
,LISTKEYINC=listkeyinc
Use this input parameter to specify a value to be added to the list key after the entry key is set to the list key value. If the entry key is not set to the list key value, the list key value will not be changed. If the result of adding the value specified by LISTKEYINC to the list key value is greater than the maximum list key value, the system fails the request.
Note: The LISTKEYINC parameter is valid only for list structures allocated in a coupling facility with CFLEVEL=1 or higher.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of the fullword field that contains the value to be added to the list key after the entry key is set to the list key value.

,LISTKEYTYPE=NOLISTKEY
,LISTKEYTYPE=MOVE
,LISTKEYTYPE=ANY
Use this input parameter to specify when the designated entry key is to be set to the current list key value. You can set the entry key to the current list key value when you move the entry.

(Set the list key and maximum list key values with a WRITE_LCONTROLS request.)

Note: The LISTKEYTYPE parameter is valid only for list structures allocated in a coupling facility with CFLEVEL=1.
LISTKEYTYPE=NOLISTKEY
Do not set the entry key for the target list entry to the current list key value. If the list entry is moved and the list structure supports entries with keys, then the other parameters specified (such as ENTRYKEY) will determine the resultant entry key value.
LISTKEYTYPE=MOVE
Set the entry key for the designated list entry to the current list key value if the entry is moved by this request.
LISTKEYTYPE=ANY
Set the entry key for the designated list entry to the current list key value if the entry is moved or created by this request. (This parameter also applies when you WRITE an entry.)
,LISTNUM=NO_LISTNUM
,LISTNUM=listnum
Use this input parameter to specify the number of the list on which the entry to be moved currently resides. Use LISTNUM in the following ways:
  • With LISTDIR and/or ENTRYKEY to designate an existing entry to be moved.
  • With ENTRYID or ENTRYNAME to:
    • Check if the entry exists on the list (when ENTRYTYPE=ANY) before proceeding with the request.
    • Confirm that the entry exists on the list (when ENTRYTYPE=OLD) before proceeding with the request.
  • With LOCBYCURSOR to designate an existing entry to be moved.

To Code: Specify the RS-type name or address (using a 2 register from 2 to 12) of a 4-byte field that contains the number of the list.

,LISTPOS=HEAD
,LISTPOS=TAIL
Use this input parameter with LISTNUM to designate the existing entry to be moved. LISTPOS applies only to locating an existing entry; it does not determine where a new entry would be placed should one be created. (See the MOVETOPOS parameter for a description of where a new entry is placed.)
LISTPOS designates the entry at the HEAD or the TAIL of a list or sublist:
  • If you specify ENTRYKEY to designate the entry and the list contains a sublist of one or more entries with the same key (or that satisfies the KEYREQTYPE criteria), then:
    • LISTPOS=HEAD designates the entry at the head of the sublist.
    • LISTPOS=TAIL designates the entry at the tail of the sublist.
  • If you do not specify ENTRYKEY to designate the entry:
    • LISTPOS=HEAD designates the entry at the head of the list.
    • LISTPOS=TAIL designates the entry at the tail of the list.
,LOCBYCURSOR
Use this input parameter to designate an existing entry to be moved. The designated entry is the entry to which the LISTNUM list cursor is pointing.

Be aware that the list cursor could have been reset to zeros by a previous request that, for instance, deleted or moved the entry to which the list cursor points, or updated the list cursor after the last entry on the list had been processed. See z/OS MVS Programming: Sysplex Services Guide for more information about using the list cursor.

,LOCKCOMP=NO_LOCKCOMP
,LOCKCOMP=lockcomp
This parameter has slightly different meanings based on the value specified for the LOCKOPER parameter. Generally, this input parameter specifies a connection identifier to be verified as the owner of the lock specified by LOCKINDEX. This verification is a prerequisite to the successful completion of the request.

When LOCKCOMP is specified, the completion of the request is conditional on there being no contention for the lock. If contention exists, the request will fail.

The connection identifier is available from the IXLCONN answer area, mapped by IXLYCONA, in field CONACONID.

The effect of LOCKCOMP is based on the LOCKOPER value specified. See the description under LOCKOPER to see how each request is affected by this parameter.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of a 1-byte field that contains the connection identifier.

,LOCKDATA=NO_LOCKDATA
,LOCKDATA=lockdata
Use this input parameter to specify information that is to be passed to your notify exit when another user requests the LOCKINDEX lock after you have obtained the lock using LOCKOPER=SET. This user-defined information will be passed to your notify exit when the other user issues a request specifying either one of the following:
  • LOCKOPER=SET
  • LOCKOPER=NOTHELD with LOCKMODE=UNCOND

To Code: Specify the RS-type name or address (using a register from 2 to 12) of an 8-byte field that contains the user-defined information.

,LOCKINDEX=NO_LOCKINDEX
,LOCKINDEX=lockindex
Use this input parameter to specify the index of the lock to be operated on as specified by LOCKOPER. The lock indexes begin with zero.
Note: You cannot code LOCKINDEX with MODE=ASYNCNORESPONSE.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of a 4-byte field that contains the lock index.

,LOCKMODE=UNCOND
,LOCKMODE=COND
Use this input parameter to specify how contention for the lock specified by LOCKINDEX should be handled if your request causes lock contention.
UNCOND
If the specified lock is held by another user, your request is either:
  • Suspended until the lock becomes available (if MODE=SYNCSUSPEND is specified).
  • Performed asynchronously with notification to you when the request completes (if any MODE value other than SYNCSUSPEND is specified).
COND
The lock operation will be performed conditionally; that is, only if there is no contention for the lock. If the specified lock is held by another user, the request will be terminated with no change to the structure, and return and reason codes describing the termination are returned to the caller.
,LOCKOPER=SET
,LOCKOPER=RESET
,LOCKOPER=NOTHELD
,LOCKOPER=HELDBY
Use this input parameter to specify the type of operation to be performed on the lock specified by LOCKINDEX.
SET
Set the lock.
  • When LOCKCOMP is not specified, your connection gets the lock, providing no other connection holds the lock. If another connection holds the lock, the request either continues once the lock is released or fails, depending on the LOCKMODE value you specify.
  • When LOCKCOMP is specified, if the connection specified by LOCKCOMP holds the lock, the lock will be transferred to your connection.
RESET
Reset the lock.
  • When LOCKCOMP is not specified, the lock will be released if it is held by your connection.
  • When LOCKCOMP is specified, the lock will be released if it is held by the connection specified by LOCKCOMP.
NOTHELD
The request is performed only if the lock is not held by any connection. This option also ensures that the lock remains free for the duration of the request. If another connection holds the lock, your task is suspended until the lock is released or your request fails, depending on the LOCKMODE value you specify. See the LOCKMODE description for how to handle possible lock contention.
HELDBY
Processing is determined by which connector is holding the lock.
  • When LOCKCOMP is not specified, the request is performed only if your connection holds the lock.
  • When LOCKCOMP is specified, the request is performed only if the lock is held by the connection specified by LOCKCOMP.
,MF=S
,MF=(L,mfctrl)
,MF=(L,mfctrl,mfattr)
,MF=(L,mfctrl,0D)
,MF=(E,mfctrl)
,MF=(E,mfctrl,COMPLETE)
Use MF=S to specify the standard form of the macro, which builds an inline parameter list and generates the macro invocation to transfer control to the service.

Use MF=L to specify the list form of the macro. Use the list form together with the execute form of the macro for applications that require reentrant code. The list form defines an area of storage that the execute form uses to store the parameters. Only the PLISTVER parameter can be coded with the list form of the macro.

Use MF=E to specify the execute form of the macro. Use the execute form together with the list form of the macro for applications that require reentrant code. The execute form stores the parameters into the storage area defined by the list form, and generates the macro invocation to transfer control to the service.
,mfctrl
Use this output parameter to specify a storage area to contain the parameters.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of the parameter list.

,mfattr
Use this input parameter to specify the name of a 1- to 60-character string that can contain any value that is valid on an assembler DS pseudo-op. You can use this parameter to force boundary alignment of the parameter list. If you do not code mfattr, the system provides a value of 0D, which forces the parameter list to a doubleword boundary.
,COMPLETE
Use this input parameter to require that the system check for required parameters and supply defaults for omitted optional parameters.
Note: In the macro expansion you might see some defaults for optional parameters that are not documented here. The ones that are not documented do not have any effect on the macro. For example, if SMILE=var were an optional parameter and the default is SMILE=NO_SMILE then it would not be documented. However, if the default was SMILE=:-), then it would be documented because a value would be the default.
,MODE=SYNCSUSPEND
,MODE=SYNCECB
,MODE=SYNCEXIT
,MODE=SYNCTOKEN
,MODE=ASYNCECB
,MODE=ASYNCEXIT
,MODE=ASYNCTOKEN
,MODE=ASYNCNORESPONSE
Use this input parameter to specify:
  • Whether the request is to be performed synchronously or asynchronously
  • How you wish to be notified of request completion
MODE=SYNCSUSPEND
The request is suspended until it can complete synchronously. To use this option, your program must be enabled for I/O and external interrupts.
MODE=SYNCECB
The request processes synchronously if possible. If the request processes asynchronously, the ECB specified by REQECB is posted when the request completes.
MODE=SYNCEXIT
The request processes synchronously if possible. If the request processes asynchronously, your complete exit is given control when the request completes.
MODE=SYNCTOKEN
The request processes synchronously if possible. If the request processes asynchronously, an asynchronous request token is returned in the area specified by REQTOKEN on invocation of the request. Use the returned request token on the IXLFCOMP macro to determine whether your request has completed.
Note: ANSAREA is a required parameter when MODE=SYNCTOKEN is specified.
MODE=ASYNCECB
The request processes asynchronously. The ECB specified by REQECB is posted when the request completes.
MODE=ASYNCEXIT
The request processes asynchronously. Your complete exit is given control when the request completes.
MODE=ASYNCTOKEN
The request processes asynchronously. An asynchronous request token is returned in the area specified by REQTOKEN upon invocation of the request. Use the returned request token on the IXLFCOMP macro to determine whether your request has completed.
Note: ANSAREA is a required parameter when MODE=ASYNCTOKEN is specified.
MODE=ASYNCNORESPONSE
The request processes asynchronously. No notification of request completion is provided. The answer area (ANSAREA) fields will not contain valid information when this mode is specified.
Note: You cannot code MODE=ASYNCNORESPONSE with LOCKINDEX, BUFFER, or BUFLIST.
,MOVETOKEY=NO_MOVETOKEY
,MOVETOKEY=movetokey
Use this input parameter to assign a new key, and hence the position on the MOVETOLIST, for the existing entry being moved or the new entry being created. In the case of an existing entry, the existing entry's key will be updated to the MOVETOKEY key value. If MOVETOKEY is not specified, ENTRYKEY defines the key to use for the entry.
Note:
  1. If there is a sublist of one or more entries with a matching key on the list then the target position is the head or tail of the sublist, as specified by the MOVETOPOS parameter.
  2. If none of the list entries have a matching key, and MOVETOKEY is neither the greatest nor least among the list entry keys, then the target position is according to the appropriate key sequence for the list.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of a 16-byte field that contains the key.

,MOVETOLIST=movetolist
Use this input parameter to specify the number of the target list where the existing entry being moved or the new entry being created will be placed.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of a 4-byte field that contains the number of the target list.

,MOVETOPOS=HEAD
,MOVETOPOS=TAIL
Use this input parameter to specify the position where the existing or new entry will be placed on the MOVETOLIST.
HEAD
  • The entry is placed at the head of the list when:
    • Keyed entries are not supported.
    • Keyed entries are supported, a new entry is being created, and neither MOVETOKEY nor ENTRYKEY are specified.
  • The entry is placed at the head of the sublist of identically keyed entries when keyed entries are supported and one or more entries with the same key already exists on the MOVETOLIST list.
TAIL
  • The entry is placed at the tail of the list when:
    • Keyed entries are not supported.
    • Keyed entries are supported, a new entry is being created, and neither MOVETOKEY nor ENTRYKEY are specified.
  • The entry is placed at the tail of the sublist of identically keyed entries when keyed entries are supported and one or more entries with the same key already exists on the MOVETOLIST list.
,NEWAUTH=NO_NEWAUTH
,NEWAUTH=newauth
Use this input parameter to specify a list authority value for the list specified by LISTNUM. If NEWAUTH is omitted, the list authority for the designated list is unchanged.

When the structure is allocated, the authority value for each list is initialized to binary zeros.

Note: The NEWAUTH parameter is valid only for list structures allocated in a coupling facility with CFLEVEL=1 or higher, except on WRITE_LCONTROLS requests.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of the 16-byte field that contains the list authority value.

,NEWVERS=newvers
Use this input parameter with VERSUPDATE=SET to specify a version number to either replace the version number of the existing entry, or initialize the version number of a new entry.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of an 8-byte field that contains the entry version number.

,PAGEABLE=YES
,PAGEABLE=NO
Use this input parameter to identify whether the storage areas specified by BUFFER or BUFLIST are in pageable or potentially pageable storage.
YES
Specify this option to indicate that the BUFFER or BUFLIST buffers reside in pageable virtual storage. XES performs the required page fixing to fix the buffers in real storage while the cache or list request transfers data to or from the coupling facility.

This includes storage obtained from pageable subpools, disabled reference (DREF) storage, and may include storage that has the potential to become pageable during the processing of a request. (An example is address space storage owned by any swappable address space, for which a PGSER FIX has been successfully processed, but for which the owning address space gets swapped during processing of a cache or list request.) This does not include implicitly non-pageable storage (for example, storage obtained from non-pageable subpools).

The system takes responsibility for managing binds to central storage for the duration of the cache or list request, regardless of what address space owns the storage or whether the storage-owning address space is swappable or nonswappable. The storage can be owned by any address space.

High shared virtual storage areas (above 2GB) may not be used.

NO
Specify this option to indicate that the BUFFER or BUFLIST buffers reside in non-pageable virtual storage. XES does not page fix the buffers in real storage.

This includes implicitly non-pageable storage areas (for example, storage obtained from non-pageable subpools), and may include storage that has the potential to become pageable during the processing of a request (An example is address space storage owned by any swappable address space, for which a PGSER FIX has been successfully processed, but for which the owning address space gets swapped-out during processing of a cache or list request.)

The system takes responsibility for managing binds to central storage for the duration of the cache or list request, if and only if the non-pageable storage is owned by either the requestor's address space or the connector's address space. If the storage is owned by any other address space, then the invoker is responsible for ensuring that the virtual storage remains non-pageable for the duration of the request (including the case in which the storage is owned by a swappable address space that is swapped during processing of an IXLCACHE or IXLLIST request). Subject to this consideration, the storage can be owned by any address space. See z/OS MVS Programming: Sysplex Services Guide.

,PLISTVER=IMPLIED_VERSION
,PLISTVER=MAX
,PLISTVER=plistver
Use this input parameter to specify the version of the macro. See Understanding IXLLIST Version Support for a description of the options available with the PLISTVER macro.
,REQDATA=NO_REQDATA
,REQDATA=reqdata
Use this input parameter with MODE=SYNCEXIT or MODE=ASYNCEXIT to pass any data you choose to the complete exit. The exit will get control only if the request is processed asynchronously.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of an 8-byte field that contains the data to be passed to the complete exit.

,REQECB=reqecb
Use this output parameter with either MODE=SYNCECB or MODE=ASYNCECB to specify the address of an ECB, which is to be posted when the request completes if the request was processed asynchronously.
Before coding REQECB, you must ensure that:
  • You initialize the ECB before you issue the request.
  • The ECB resides in either common storage or the home address space where IXLCONN was issued.
  • Any tasks that wait for the ECB to be posted reside in the home address space where IXLCONN was issued.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of a 4-byte field that contains the address of the ECB to be posted when the request completes. The ECB must be aligned on a fullword boundary.

,REQID=NO_REQID
,REQID=reqid
Use this input parameter to specify a user-defined request identifier to be associated with the request. You can specify this request identifier on the IXLPURGE macro to cancel a request that has not yet been processed.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of an 8-byte field that contains the user-defined request identifier.

,REQTOKEN=reqtoken
Use this output parameter with either MODE=SYNCTOKEN or MODE=ASYNCTOKEN to specify the address of a storage area to receive the request token that is returned when the request will be processed asynchronously. This token, which uniquely identifies the request, must be used as input to the IXLFCOMP macro, which you use to determine if the request has completed.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of a 16-byte field where the system will put the request token.

,RETCODE=retcode
Use this output parameter to specify a field to contain the return code. (The return code is also returned in register 15.)

To Code: Specify the RS-type name or address (using a register from 2 to 12) of a 4-byte field that will contain the return code when the request has completed.

,RSNCODE=rsncode
Use this output parameter to specify a field to contain the reason code returned, if applicable. (The reason code is also returned in register 0.)

To Code: Specify the RS-type name or address (using a register from 2 to 12) of a 4-byte field that will contain the reason code (if any) when the request has completed.

,UPDATECURSOR=NO
,UPDATECURSOR=YES
Use this input parameter to specify whether the MOVETOLIST list cursor is to be updated to point to another entry on the list.
NO
The list cursor is not updated.
YES
The list cursor is updated to point to the entry that is adjacent to the new or moved entry.
  • If LISTDIR=TOHEAD, the list cursor will point to the adjacent entry that is closest to the head of the list.
  • If LISTDIR=TOTAIL, the list cursor will point to the adjacent entry that is closest to the tail of the list.

The list cursor is set to binary zeros if its new position would be before the first entry or after the last.

Note: UPDATECURSOR may not be specified when DATAOPER=WRITE and ENTRYTYPE=ANY are specified
,VERSCOMP=NO_VERSCOMP
,VERSCOMP=verscomp
Use this input parameter to specify a version number to be compared to the version number of the existing entry. If this request creates a new entry, the VERSCOMP specification is ignored.

The existing entry is moved only if its version number meets the condition specified by the VERSCOMPTYPE parameter. If the entry does not have the specified version number, the request is terminated with no change to the structure.

To Code: Specify the RS-type name or address (using a register from 2 to 12) of an 8-byte field that contains the version number.

,VERSCOMPTYPE=EQUAL
,VERSCOMPTYPE=LESSOREQUAL
Use this input parameter to specify how a list entry version number comparison as specified by VERSCOMP is to be performed.
Note: The VERSCOMPTYPE parameter is valid only for list structures allocated in a coupling facility with CFLEVEL=1 or higher.
VERSCOMPTYPE=EQUAL
The version number for the list entry must be equal to the value specified for VERSCOMP.
VERSCOMPTYPE=LESSOREQUAL
The version number for the list entry must be less than or equal to the value specified for VERSCOMP.
,VERSUPDATE=NONE
,VERSUPDATE=INC
,VERSUPDATE=DEC
,VERSUPDATE=SET
Use this input parameter to specify how the entry version number of the moved entry will be updated, or for those cases where a new entry is created, initialized.
VERSUPDATE=NONE
The existing entry's version number is not updated. The new entry's version number is set to binary zeros.
VERSUPDATE=INC
The existing entry's version number is increased by one. The new entry's version number is set to binary zeros, except for the low-order bit, which is set to one.
VERSUPDATE=DEC
The existing entry's version number is decreased by one. The new entry's version number is set to all binary ones.
VERSUPDATE=SET
Both the existing and the new entry's version number is set to the value specified by NEWVERS.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014