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.