Using the unwrapped form for the same Wrapped Doc/Lit operation, foo, you can access all the parameter values individually using ABL data types. In this case, the WSDL Analyzer recognizes that there is a single INTEGER mapping for a value in both complex input and output parameters of the wrapped operation. So, it prescribes a single INPUT-OUTPUT parameter for that INTEGER mapping (iInteger). It prescribes individual INPUT and OUTPUT modes for the remaining values, as indicated in this example:
Wrapped Doc/Lit operation—unwrapped form
DEFINE VARIABLE bBoolean AS LOGICAL NO-UNDO.
DEFINE VARIABLE iInteger AS INTEGER NO-UNDO.
DEFINE VARIABLE cString AS CHARACTER NO-UNDO.
bBoolean = true. iInteger = 17.
RUN foo IN hWebService (INPUT bBoolean, INPUT-OUTPUT iInteger,
OUTPUT cString).
DISPLAY "Returned from web service call:" SKIP
" iInteger = " iInteger NO-LABEL SKIP
" cString = " cString NO-LABEL FORMAT "x(12)".
On return, you might display the individual OUTPUT values (iInteger and cString) as follows:
Returned from web service call:
iInteger = 18 cString = Hello world!
No further work is required to access these values in ABL.