cancel
Showing results for 
Search instead for 
Did you mean: 

BAPI as Web Service confusion

Former Member
0 Kudos

I apologize if this is answered more directly in another post, I promise I looked first.

I have an ERP 2004 IDES system. (Web AS ABAP+Java)

I want to access BAPI_PROCORD_GET_LIST as a web service.

I can generate a virtual interface and a web service definition from transaction BAPI using the wizard. I can then run the Web Services Navigator from my browser, type in the address of the WSDL, and successfully execute a test of the BAPI that returns the orders that match the criteria I set in the test (e.g. all orders in production plant 3100).

I learned in another thread that the BAPIs also have WSDL available through

http://<was_server>:<port>/sap/bc/soap/wsdl11?services=<BAPI_NAME_IN_CAPS>&sap-client=<client>;

I can also type this into Web Services Navigator as the address of the WSDL, and it returns a valid service that I can test. However, when I go to run the test, I can create the request criteria, but the system doesn't return any values - I believe this is because there's no place to specify the sap-client (which should be 800 for the test): in fact, the system makes me authenticate again, and I can only authenticate with a user that is valid for client 000.

My question is: should I be able to use the second form of the WSDL as a web service, and if so, how do I specify the client information during the service invocation?

Message was edited by: Michael DePriest

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

I need to clarify something from the initial post. During the second web service test I described, as I am executing the test, the system requires me to authenticate even though I already authenticated in order to get the WSDL.

The first authentication is OK when I provide a username/password that is valid in client 800.

The second authentication does not accept the client 800 credentials. It will only succeed if I provide a username and password that are valid in client 000.

As a result I don't get anything in response to the test (there are no process orders in client 000 on this instance).