cancel
Showing results for 
Search instead for 
Did you mean: 

Multiple record sets and output parameters using SOAP

Former Member
0 Kudos

Hi,

If you have a transaction with, say, 3 output parameters (bool, string and xml), then the SOAPRunner only returns the bool and string values. That is, the output of type XML is not returned. Only when there is a single output parameter, of type XML, does it return.

Moreover, if you then use a single output of type XML, but that XML contains more than 1 rowset, only the first rowset returns. Subsequent rowsets are suppressed in the output. Testing via a query of type xacute and text/xml will return both record sets, as intended. But via SOAPRunner does not.

Any ideas?

Thanks in advance.

Kevin.

PS: I am aware that SOAPRunner is not for direct URL use, but its results are identical to an application we have that is using SOAP, so I am using it to test.

Accepted Solutions (0)

Answers (1)

Answers (1)

jcgood25
Active Contributor
0 Kudos

Yes, typical behavior is that when you have multiple outputs it will create a one row IllumDoc to wrap them all together with OuputParameter=* (and the xml will be ignored unless it is the only output property or you've requested it by name).

How about just using "/Lighthammer/Illuminator?QueryTemplate=xxxx/yyyy&Content-Type=text/xml" or "/Lighthammer/Runner?Transaction=xxxx/yyyy&OutputParameter=OutputXML" which will both return your multi-rowset output?

I may be mistaken, but I believe the XacuteResponse was simplified to not include the Rowsets outer node because certain systems had problems digesting the layers, in fact you don't get the <Columns/> section either in the single Rowset.

Rick - any feedback to this SOAP simplification from Xacute?

Former Member
0 Kudos

Thanks Jeremy,

The application is WebDynPro within SAP, and I believe the preference is to use SOAP. Probably my preference, since the credentials can then be embedded within the SOAP structure, rather than passed within the URL if using Runner.

I need to do some testing also for SSO (single sign on), since we use SSO now within SAP EP and connected to LDAP which works fine for standard iViews. But in an integration perspective, when a 3rd party application connects via SOAP (eg: WebDynPro or SQL Reporting Services) I'm not sure if SSO will work?

Regards

Kevin.

Former Member
0 Kudos

I've started a new post regarding SSO etc.

Former Member
0 Kudos

Visual Composer gacks on complex types returned from a web service (though they aren't that complex), thus the reason for the "flattening" and removal of the metadata section.

If you need a "special" XML format, it is easiest to build a custom WSDL that uses "Runner" instead of "SOAPRunner" as the WSDL endpoint. There are a few threads that discuss this.

Former Member
0 Kudos

Thanks Rick,

From www.dictionary.com;

Main Entry: gack

Part of Speech: n

Definition: the sound of a cat coughing up a hairball

Usage: slang

Former Member
0 Kudos

Therefore gack is an accurate description of the sound VC made.