Rational Developer for System z

IRZQGETS

The IRZQGETS API retrieves a SOAP structure from the IMS™ Message Queue and returns the information to the caller in a high-level language structure.

The structures and variables referred to in this topic are defined in the include file IRZPWSH (see Include file IRZPWSH).

Usage:
Limitations:

Parameters:

Table 1. Parameters for IRZQGETS
Parameter: Type: Usage: Description:
@irz_async_msg_header_ptr POINTER BYVALUE Input A pointer-by-value to the instance of @irz_async_msg_header that the Message Processing Program (MPP) retrieves from the IMS Message Queue prior by issuing a Get Unique (GU) call using the CEETDLI interface.
Important: This instance must be passed on all calls to IRZQGETS and IRZQSETS.
@irz_iopcb_ptr POINTER BYVALUE Input A pointer-by-value to the I/O PCB that was passed to the Message Processing Program (MPP) on entry by IMS. IRZQGETS uses this I/O PCB when invoking CEETDLI to interact with the IMS Message Queue.
Note: If the return code from IRZQGETS is 999 then inspect the I/O PCB to determine the cause of the error.
@irz_struct_type SIGNED FIXED BIN(31) BYVALUE Input An integer-by-value specifying the type of the language structure to retrieve from the IMS Message Queue. The following constants defined in the include file IRZPWSH can be used: @irz_soap_body_struct.
@irz_struct_name WCHAR(100) VARYING BYADDR Input A string-by-reference containing the name of the language structure to retrieve from the IMS Message Queue. The value of this parameter must correspond to the value of the parameter @irz_struct_type.
@irz_struct_ptr POINTER BYADDR Output A pointer-by-reference to a newly allocated storage block containing the returned language structure.
Important: This storage block resides in the same address space as the caller. Therefore it is highly recommended that the caller free this storage block when it is no longer needed.
@irz_struct_size SIGNED FIXED BIN(31) BYADDR Output An integer-by-reference containing the size in bytes of the returned language structure.
@irz_cee_feedback_ptr POINTER BYVALUE Input A pointer-by-value to an instance of @irz_cee_feedback defining a Language Environment® Condition Token. This instance is updated each time IRZQGETS invokes Language Environment Callable Services.
Note: If the return code from IRZQGETS is 998 then use the publication Language Environment Run-Time Messages (SA22-7566-10) to inspect the contents of the condition token and determine the cause of the error.
@irz_debug BIT(1) OPTIONAL Input An optional bit indicating whether IRZQGETS should display trace information (see Trace output for WSDL2PLI).

Return codes:

The return codes for IRZQGETS are constants defined in the IRZPWSH include file:

Table 2. Return codes for IRZQGETS
Type: Name: Value:
SIGNED FIXED BIN(31) @irz_success 000
@irz_omitted_parameter 100
@irz_invalid_pointer 101
@irz_invalid_struct_type 102
@irz_struct_not_found 103
@irz_struct_name_mismatch 104
@irz_invalid_struct_order 105
@irz_cee_call_failure 998
@irz_dli_call_failure 999

Example invocation:

Figure 1. Example invocation of IRZQGETS
01: /* Invoke API IRZQGETS to retrieve the SOAP body
02: * language structure from the IMS Message Queue.
03: */
04: @irz_struct_name      = 'RequestBodyStruct';
05: @irz_cee_feedback_ptr = addr(@irz_cee_feedback);
06: @irz_debug = '0'b;
07:
08: @return_code =
09:    IRZQGETS(@irz_async_msg_header_ptr,
10:    @irz_iopcb_mask_ptr, @irz_soap_body_struct,
11:    @irz_struct_name, @irz_struct_ptr,
12:    @irz_struct_size, @irz_cee_feedback_ptr,
13:    @irz_debug);
14:
15: if (@return_code != @irz_success) then do;
16:    display('MYMPP#handle_myOperation(): '
17:       || 'ERROR, IRZQGETS @irz_soap_body_struct, '
18:       || '@return_code: '|| trim(@return_code) || '.');
19:    return;
20: end; else do;
21:    RequestBodyStruct_ptr = @irz_struct_ptr;
22: end;

Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)