The structures and variables referred to in this topic are defined in IRZPWSH (see Include file IRZPWSH).
Parameters:
| Parameter: | Type: | Usage: | Description: |
|---|---|---|---|
| @irz_async_msg_header_ptr | POINTER BYVALUE | Output | 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. IRZQSETS uses this I/O PCB when invoking CEETDLI to interact with
the IMS Message Queue. Note: If the return code from IRZQSETS 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 set in the IMS message. The following constants defined in 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 set in the IMS message. The value of this parameter must correspond to the value of the parameter @irz_struct_type. |
| @irz_struct_ptr | POINTER BYVALUE | Input | A pointer-by-reference to the language structure
to set in the IMS message. Note: This
value must correspond to the values specified for the parameters @irz_struct_type
and @irz_struct_name.
|
| @irz_struct_size | SIGNED FIXED BIN(31) BYVALUE | Input | An integer-by-value specifying the size in bytes of the language structure pointed to by @irz_struct_ptr. |
| @irz_commit_structs | BIT(1) BYVALUE | Input | A bit-by-value that indicating whether IRZQSETS should insert the current language structure and all previously supplied language structures into the IMS Message Queue. |
| @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
IRZQSETS invokes Language
Environment Callable Services. Note: If the
return code from IRZQSETS 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 IRZQSETS should display trace information (see Trace output for WSDL2PLI). |
Return codes:
The return codes for IRZQSETS are constants defined in the IRZPWSH include file:
| 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_invalid_segment_size | 109 | |
| @irz_cee_call_failure | 998 | |
| @irz_dli_call_failure | 999 |
Example invocation:
01: /* Invoke API IRZQSETS to set the SOAP body language
02: * structure and commit it to the IMS Message Queue.
03: */
04: @irz_struct_name = 'ResponseBodyStruct';
05: @irz_struct_ptr = ResponseBodyStruct_ptr;
06: @irz_struct_size = storage(ResponseBodyStruct);
07: @irz_commit_structs = '1'b;
08: @irz_cee_feedback_ptr = addr(@irz_cee_feedback);
09: @irz_debug = '0'b;
10:
11: @return_code =
12: IRZQSETS(@irz_async_msg_header_ptr,
13: @irz_iopcb_mask_ptr, @irz_soap_body_struct,
14: @irz_struct_name, @irz_struct_ptr,
15: @irz_struct_size, @irz_commit_structs,
16: @irz_cee_feedback_ptr, @irz_debug);
17:
18: if (@return_code != @irz_success) then do;
19: display('MYMPP#handle_myOperation(): '
20: || 'ERROR, IRZQSETS @irz_soap_body_struct, '
21: || '@return_code: '|| trim(@return_code) || '.');
22: return;
23: end;