z/OS MVS Programming: JES Common Coupling Services
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


IXZXIXIF - obtain information about members of an XCF group

z/OS MVS Programming: JES Common Coupling Services
SA23-1387-00

Use the IXZXIXIF macro to obtain information about JES members of an XCF group. IXZXIXIF returns a record of information about the specific group member, and also information about the MVS system on which the member is running. Figure 1 provides the JES XCF message mapping structure that shows the format in which JES XCF returns the requested information.

Refer to Obtaining information about JES members in the XCF group (IXZXIXIF macro) for a description of using IXZXIXIF to obtain JES XCF information.

Environment

The requirements for the caller are:

Table 1. Environment
Variable Value
JES environments:
  • JES2 or JES3 main task
  • JES2 or JES3 subtask
  • JES3 FSS
Minimum authorization:
  • If you specify GROUPTOKEN=
    • Supervisor state with PSW key 0 or 1
  • If you specify GROUPNAME=
    • Supervisor state with PSW key 0 - 7
Dispatchable unit mode: Task
Cross memory mode: Any PASN, any HASN, any SASN
AMODE: 31
ASC mode: Primary
Interrupt status: Enabled for I/O and external interrupts
Locks: No locks held
Control parameters: None

Programming Requirements

JES2 programs must include the $MODULE macro so it is invoked before IXZXIXIF is invoked.

JES3 programs must include the ENVIRON= keyword on the IATYMOD macro so it is invoked before IXZXIXIF is invoked.

To map the member information record that IXZXIXIF returns, use mapping macro IXZYIXIF. IXZYIXIF is described in z/OS MVS Data Areas, Vol 3, and Figure 1 provides a graphic view of its structure.

Restrictions

Do not issue IXZXIXIF until JES initialization processing has established an attachment to the JES XCF group; that is, after IXZXIT03 processing has completed.

Input Register Information

Before issuing the IXZXIXIF macro, the caller does not have to place any information into any register unless using it in register notation for a particular parameter, or using it as a base register.

Output Register Information

When IXZXIXIF returns control, the general purpose registers (GPRs) contain:
Register
Content
0
Reason code
1
Used as a work register by the system
2-13
Unchanged
14
Used as a work register by the system
15
Return code
When IXZXIXIF returns control, the access registers (ARs) contain:
Register
Content
0,1
Used as a work register by the system
2-13
Unchanged
14,15
Used as a work register by the system

Some callers depend on register contents remaining the same before and after issuing a service. If the system changes the contents of registers on which the caller depends, the caller must save them before issuing the service, and restore them after the system returns control.

Performance Implications

Limit your use of IXZXIXIF because each IXZXIXIF invocation requires I/O to the couple data set. Requesting information using REQMBOX causes an asynchronous call to JES XCF, whereas using ANSAREA= and ANSLEN= causes a synchronous call. Therefore, IBM recommends using REQMBOX= to reduce performance impact.

Syntax

Read syntax diagramSkip visual syntax diagram
>>-+-------+--IXZXIXIF--+-,GROUPTOKEN=grouptoken-+-------------->
   '-label-'            '-,GROUPNAME=groupname---'   

   .-,INFOLVL=GROUP--.  .-,STATE=ANY----.   
>--+-----------------+--+---------------+----------------------->
   '-,INFOLVL=MEMBER-'  '-,STATE=ACTIVE-'   

   .-,SYSTEM=ANY-----.  .-,POLYJES=YES-.  .-,FUNCTION=NA--.   
>--+-----------------+--+--------------+--+---------------+----->
   '-,SYSTEM=CURRENT-'  '-,POLYJES=NO--'  '-,FUNCTION=ARM-'   

>--+-,REQMBOX=reqmbox---,REQTOKEN=reqtoken---+------------------>
   '-,ANSAREA=ansarea---,ANSLEN=anslen-------'   

>--+------------------+--+------------------+------------------->
   '-,RTNCODE=rtncode-'  '-,RSNCODE=rsncode-'   

   .-,MF=S-------------------------------.   
>--+-------------------------------------+---------------------><
   |                   .-,0D-----.       |   
   '-,MF=-+-(L-,mfctrl-+---------+-)---+-'   
          |            '-,mfattr-'     |     
          |            .-,COMPLETE-.   |     
          '-(E-,mfctrl-+-----------+-)-'     

Parameters

label
Specifies an optional symbol, starting in column 1, to be used as the name on the IXZXIXIF macro invocation.

Default: no name

GROUPTOKEN=grouptoken
Specifies the name (RS-type) or address (in GPR2-GPR12) of an optional fullword input field that contains the group token. Refer to Retrieving the JES XCF Group Token for the procedure for retrieving the JES XCF group token. Use GROUPNAME= rather than GROUPTOKEN= if you intend to also specify INFOLVL=MEMBER or use any of the filtering parameters (FUNCTION=, POLYJES=, STATE=, and SYSTEM=). This parameter is mutually exclusive with the GROUPNAME= parameter; however, you must specify either GROUPTOKEN= or GROUPNAME=.

Default: none

GROUPNAME=groupname
Specifies the name (RS-type) or address (in GPR2-GPR12) of an optional 8-character input field that contains the name of the JES XCF group. Use GROUPNAME= if you intend to also specify INFOLVL=MEMBER or use any of the filtering parameters (FUNCTION=, POLYJES=, STATE=, and SYSTEM=). This parameter is mutually exclusive with the GROUPTOKEN= parameter; however, you must specify either GROUPNAME= or GROUPTOKEN=.

Default: none

INFOLVL=GROUP | MEMBER
Specifies the type of information requested.
GROUP
Specifies a request for information about the entire group.
MEMBER
Specifies a request for information about a member of the XCF group.

If you specify INFOLVL=MEMBER, you must also specify GROUPNAME=.

Default: GROUP

REQMBOX=reqmbox
Specifies the name (RS-type) or address (in GPR2-GPR12) of an optional 16-character input field that specifies the name of a mailbox into which JES XCF can place the requested information. The name can contain the characters: A-Z, 0-9, $, @, #, and embedded and trailing blanks only. The mailbox is associated with the member whose group token is specified by the GROUPTOKEN= keyword.

Default: none

REQTOKEN=reqtoken
Specifies the name (RS-type) or address (in GPR2-GPR12) of an 8-character output field into which a token can be placed. You can use the token to match the information request with the response returned to the mailbox specified by the REQMBOX= parameter. If you specify REQMBOX=, you must also specify REQTOKEN=.

Default: none

ANSAREA=ansarea
Specifies the name (RS-type) or address (in GPR2-GPR12) of an optional 4-byte input field that contains the address of a buffer used to contain the data that JES XCF returns. If the area passed is too small, return and reason codes of 4 are returned, and the system updates the ANSLEN= value with the required length.

Default: none

ANSLEN=anslen
Specifies the name (RS-type) or address (in GPR2-GPR12) of a fullword input/output field that specifies the length of the ANSAREA buffer passed to the system. If the buffer is not large enough, the system updates the ANSLEN value with the length required, and return and reason codes of 4 are returned to the caller. The caller can then obtain storage of the specified size and again try to obtain the requested information.

Default: none

STATE=ANY | ACTIVE
Optionally specifies whether the information request is to be filtered based on member state.

If you specify STATE=, you must also specify GROUPNAME=.

ANY
Indicates that JES XCF provides member information for members in any state.
ACTIVE
Indicates that JES XCF provides member information for active members only.

Default: ANY

SYSTEM=ANY | CURRENT
Optionally specifies whether the information request is filtered based on the JES member and MVS system from which this request was issued.

If you specify SYSTEM=, you must also specify GROUPNAME=.

ANY
Indicates that JES XCF provides member information for members on any MVS system in the sysplex.
CURRENT
Indicates that JES XCF provides member information for members on the current MVS system only; that is, the JES XCF members currently running on the same MVS system as the member that issued the IXZXIXIF macro request.

Default: ANY

POLYJES=YES | NO
Optionally specifies whether the information request is filtered to limit information from a single JES2 member from MVS systems running multiple instances of JES2. system.

If you specify POLYJES=, you must also specify GROUPNAME=.

YES
Indicates that JES XCF provides member information for all members (including secondary JES2 systems running in a poly-JES environment) running on each MVS system in the sysplex.
NO
Indicates that JES XCF selects and provides member information for only a single member on each MVS system in the sysplex. JES XCF selects the primary member unless the primary member is not active or the primary does not match the other filters (FUNCTION=, STATE=, and SYSTEM=). If JES XCF cannot return information for a primary member, it returns information for a secondary member if one matches the other filters.
Note: Only JES2 supports a poly-JES environment; this parameter has no meaning on a JES3 system.

Default: YES

FUNCTION=NA | ARM
Optionally specifies whether the information request is filtered based on whether the member supports the automatic restart manager (available on OS/390 MVS Version 2 Release 6 or higher).

If you specify FUNCTION=, you must also specify GROUPNAME=.

NA
Indicates that the FUNCTION= parameter is not applicable, meaning that JES XCF should not limit the information it returns based on whether the member supports the automatic restart function.
ARM
Indicates that JES XCF should limit the information it returns only for members that support the automatic restart function.

Default: NA

RTNCODE=rtncode
Specifies the name (RS-type) of an optional fullword output field or register (GPR2-GPR12) into which the return code is copied from GPR 15.

Default: none

RSNCODE=rsncode
Specifies the name (RS-type) of an optional fullword output field or register (GPR2-GPR12) into which the reason code is copied from GPR 0.

Default: none

MF=S | L | E
Specifies the form of the macro as standard (S), list (L), or execute (E). This keyword is optional.
MF=S
Specifies the standard form of the macro; that is, to build the in-line parameter list and invoke the desired service. Processing also includes checking for all required keywords and supplying defaults, if any, for omitted optional parameters.
MF=(L,mfctrl{,mfattr | 0D})
Specifies the list form of the macro; that is, defining an area to be used for the parameter list. If you code MF=L, do not code anything else except a label, macro name, and the following values:
mfctrl
Specifies the name of a storage area to contain the parameters.
mfattr | 0D
Specifies an optional 1- to 60-character input string, which 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.

Default: 0D

MF=(E,mfctrl,COMPLETE)
Specifies the execute form of the macro; that is, builds the parameter list specified by mfctrl. Processing also includes checking for all required keywords and supplying defaults, if any, for omitted optional parameters.
mfctrl
Specifies the name (RS-type) or address (in GPR1-GPR12) of a storage area for the parameter list.
COMPLETE
Specifies the desired degree of macro parameter syntax checking. Syntax checking includes checking for all required keywords and supplying default values, if any, for all omitted optional parameters.

Default: COMPLETE

Default: S

ABEND Codes

When control returns to your program, if you receive a return code of X'C', it indicates that processing failed because the IXZXIXIF service ended abnormally, and you will also receive an associated ABEND code. Refer to z/OS MVS System Codes for a description of the following possible ABEND codes:
DC5
JES XCF detected an unrecoverable error during attach or detach processing.
EC5
JES XCF detected an unrecoverable error while attempting recovery from a previous abend.

Return and Reason Codes

When the IXZXIXIF macro returns control to your program, GPR 15 (and rtncode if you coded RTNCODE) contains the return code and GPR 0 (and rsncode if you coded RSNCODE) contains the reason code.

Return Code (hex) Reason Code (hex) Meaning and Action
0 0 Meaning: Processing was successful. The requested group or member information was returned.

Action: none

0 4 Meaning: Processing failed because there are no members that match the filtering parameters (FUNCTION=, POLYJES=, STATE=, and SYSTEM=) specified on this macro request.

Action: Verify that the filtering parameter specifications are set correctly. If appropriate, revise their settings and rerun the program that issues the IXZXIXIF macro.

4 4 Meaning: Processing failed because the ANSAREA= specification is too small to hold the requested information. The system updates the area identified by the ANSLEN= parameter to indicate the length necessary.

Action: Obtain a new buffer of the length returned in the area identified by the ANSLEN= parameter and rerun the program that issues IXZXIXIF.

4 40 Meaning: Processing failed because the parameter list passed to the IXZXIXIF service contained an eyecatcher that is not valid.

Action: Check the parameter list to be certain it was not overlaid with other data.

4 44 Meaning: Processing failed because the parameter list passed to the IXZXIXIF service contained a version indicator that is not valid.

Action: You might need to recompile the calling program. Check the parameter list to be certain it was not overlaid with other data.

4 48 Meaning: Processing failed because the IXZXIXIF service was issued for a member that is detaching.

Action: Check to be certain this is not a symptom of a serialization problem within your JES XCF group.

4 4C Meaning: Processing failed because of a JES XCF internal error.

Action: Contact the IBM support center, and supply the return and reason codes.

4 54 Meaning: Processing failed because of a JES XCF internal error.

Action: Contact the IBM support center, and supply the return and reason codes.

4 58 Meaning: Processing failed because the parameter list passed to the IXZXIXIF service had a REQMBOX= name that is not valid.

Action: Be certain you specified the REQMBOX= name correctly.

8 50 Meaning: Processing failed because of a JESXCF internal error.

Action: Contact the IBM support center, and supply the return and reason codes.

C 0 Meaning: Processing failed because the IXZXIXIF service ended abnormally.

Action: Refer to z/OS MVS System Codes for a description of the abend code and its associated reason codes.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014