cancel
Showing results for 
Search instead for 
Did you mean: 

Send SAP data to external web services

0 Kudos
1,779

Hello experts,

Can anyone provide me with a tutorial or example how to create a PI/PO example to send data to external web services?

Most of the tutorial I found is about consuming external web services. Which is SAP sends a request and the external party will send back a response. I want to have the other way around. SAP sends data to an external party not request info.

So it will be an asynchronous call. SAP send data to an external party, and it will be saved on the external party database.

Accepted Solutions (0)

Answers (2)

Answers (2)

matt
Active Contributor
0 Kudos

When you consume a webservice, you

  1. send a request to the webservice
  2. read the response

With a webservice where you are only sending data you

  1. send the data to the webservice
  2. read the response (if any). This is optional. You can just fire and forget.

So there's no difference between whether the webservice sends you data or you send the webservice data. No matter what technology the webservice uses:

You don't need PI.

0 Kudos

Hello,

to implement Rest based service you have to::

1. Implement resource Handler Class.

( Create a new Z class that inherits from standard class: CL_REST_HTTP_HANDLER).

2. In the method "GET_ROOT_HANDLER" define the resource provider class based on the requesting URL.

(create an instantiation - lo_router and define:

- iv_template - this is url sufix

- iv_handler_class - name of the resource provider class (you need to create in the next step).

3. Create a Z resource provide class inheriting form standard class : CL_REST_RESOURCE.

4. Implement any method you need. e.g. Post / Get / Delete...

(in this step you just need to deserialize JSON / do necesarry ABAP steps / serialize Internal tabs/whatever to JSON back)

5. Last step is to create a service in T-code SICF. (do not forget define Root Handler Class into "Handler list" tab and activate.)

You can test the API call for instance with Postman app. For this you need to know Host address of your system. You can find it in the table: "HTTPURLLOC".

Find the links to relevant Tutorial below:

Theory:

https://www.youtube.com/watch?v=ErtjdNRMszE

Practice:

https://www.youtube.com/watch?v=GUJD6xLeKlU

0 Kudos

HI @marios22,

Thanks for the links. If I understand correctly I won't be needing a PI/PO for this case. Am I right?

0 Kudos

Hey,

no there is no need to use PI/PO.

Cheers.