Looks like the Soap support is not quite up to par. Attempted to call NetSuite SOAP services (actually converting some C# code that we have working already) to DF and it is failing
the following
Code:
<message name="getRequest">
<part name="parameters" element="platformMsgs:get"></part>
</message>
<message name="getResponse">
<part name="parameters" element="platformMsgs:getResponse"></part>
</message>
<operation name="get">
<soap:operation soapAction="get"></soap:operation>
<input name="getRequest">
<soap:header message="tns:headers" part="passport" use="literal"></soap:header>
<soap:header message="tns:headers" part="tokenPassport" use="literal"></soap:header>
<soap:header message="tns:headers" part="applicationInfo" use="literal"></soap:header>
<soap:header message="tns:headers" part="partnerInfo" use="literal"></soap:header>
<soap:header message="tns:headers" part="preferences" use="literal"></soap:header>
<soap:body use="literal"></soap:body>
</input>
<output name="getResponse">
<soap:header message="tns:headers" part="documentInfo" use="literal"></soap:header>
<soap:body use="literal"></soap:body>
</output>
<fault name="InsufficientPermissionFault">
<soap:fault name="InsufficientPermissionFault" use="literal"></soap:fault>
</fault>
<fault name="InvalidSessionFault">
<soap:fault name="InvalidSessionFault" use="literal"></soap:fault>
</fault>
<fault name="InvalidCredentialsFault">
<soap:fault name="InvalidCredentialsFault" use="literal"></soap:fault>
</fault>
<fault name="ExceededConcurrentRequestLimitFault">
<soap:fault name="ExceededConcurrentRequestLimitFault" use="literal"></soap:fault>
</fault>
<fault name="ExceededRequestLimitFault">
<soap:fault name="ExceededRequestLimitFault" use="literal"></soap:fault>
</fault>
<fault name="ExceededUsageLimitFault">
<soap:fault name="ExceededUsageLimitFault" use="literal"></soap:fault>
</fault>
<fault name="ExceededRecordCountFault">
<soap:fault name="ExceededRecordCountFault" use="literal"></soap:fault>
</fault>
<fault name="ExceededRequestSizeFault">
<soap:fault name="ExceededRequestSizeFault" use="literal"></soap:fault>
</fault>
<fault name="UnexpectedErrorFault">
<soap:fault name="UnexpectedErrorFault" use="literal"></soap:fault>
</fault>
</operation>
Code:
Function wsget Variant llbaseRef returns tWSReadResponse
Soap Action...........: get
Soap Style............: document
Input Soap Encoding...: Literal
Input Namespace.......: urn:messages_2019_2.platform.webservices.netsuite.com
Input Method Request..: get
Output Soap Encoding..: Literal
Output Namespace......: urn:messages_2019_2.platform.webservices.netsuite.com
Output Method Response: getResponse
Output Method Return..: llreadResponse
the parameter which is a struct (RecordRef based on BaseRef) is then defined as follows
Code:
Get DefineParameter xsAnyTypeStr 1 1 "baseRef" "urn:messages_2019_2.platform.webservices.netsuite.com" to spParameters[0].SoapParamDef
and then throws an error
Error 4402
Could not convert multi element xsAnyTypeStr ValueTree data to maxOccurs=1 XML node
tried a few things to hack it into submission but there seems to be a lot off including missing namespaces in the soap envelope etc.