When reading the
documentation about how to genererate a WS Client, it says:
Since BDL functions cannot have complex structures as parameters, the data types are defined as global or modular variables.
Is this still true?
I generate a .inc file from a WSDL and include it in a simple 4gl:
GLOBALS "plim.inc"
FUNCTION test( e tGlobalEndpointType )
RETURN e.*
ENDFUNCTION
where tGlobalEndpointType seems quite complex:
TYPE tGlobalEndpointType RECORD # End point
Address RECORD # Address
Uri STRING # URI
END RECORD,
Binding RECORD # Binding
Version STRING, # HTTP Version (1.0 or 1.1)
Cookie STRING, # Cookie to be set
Request RECORD # HTTP request
Headers DYNAMIC ARRAY OF RECORD # HTTP Headers
Name STRING,
Value STRING
END RECORD
END RECORD,
Response RECORD # HTTP response
Headers DYNAMIC ARRAY OF RECORD # HTTP Headers
Name STRING,
Value STRING
END RECORD
END RECORD,
ConnectionTimeout INTEGER,# Connection timeout
ReadWriteTimeout INTEGER,# Read write timeout
CompressRequest STRING # HTTP request compression mode (gzip or deflate)
END RECORD
END RECORD