Skip to Content

SAP StreamWork is an online collaborative environment that to helps people make better decisions based on shared data, and feedback from colleagues. StreamWork exposes a lot of its functionality to the outside world via REST APIs. This is great, as all environments which support sending HTTP requests can integrate with StreamWork. By doing so, you can easily convert you application into a collaborative application.

So far so good. NetWeaver and ABAP provide some class libraries which allow you to  send and receive HTTP requests. So it should be possible to integrate an ABAP system with SAP StreamWork.  However, when I talk to ABAP developers they very often tell me that a) they do know ABAP very well but b) they have only very basic knowledge in HTTP and therefore do struggle in making REST calls out of their ABAP coding. They would be very interested in sample coding and a step by step instruction on what they need to do. And – very important – this coding and the sample should also help them in understanding in what is required to master OAuth  (which is used by SAP StreamWork REST API Authentication, Authorization, and OAuth).

That’s why I have decided to enhance the “Integration API” section of our SDN Wiki space and include some pages on how to integrate with StreamWork out of an ABAP System.

  • Integration of SAP StreamWork with the ABAP world
    This is the first article you should read. It fully covers the Oauth process and shows you how to read and write date from and to SAP StreamWork.
  • Using HMAC-SHA1 Signatures (ABAP)
    For added security, Oauth also supports HMAC-SHA1 signatures. If you have never dealt with signatures in ABAP you can get started reading this article.
  • Building RSA-SHA1 Oauth Signatures in ABAP
    The most secure OAuth signature method is RSA-SHA1 as your application does not have to locally store neither the Oauth consumer secret nor the access token secret.  This article will tell you how to setup NetWeaver to be able to use this signature method and will provide the ABAP coding which actually builds an RSA-SHA1 signature.

During TechEd 2011 in Bangalore and Madrid we will have sessions  which cover the integration of StreamWork out of an ABAP system. The session “PMC223 – Developing Collaborative Solutions with SAP StreamWork” will use ABAP samples to demonstrate how to integrate via the REST API with SAP StreamWork. You don’t have to be an ABAP developer to be able to understand the session. The basic concepts and steps  are independent of the programming language and it should be simple to translate the ABAP coding into your language of choice.

If you want to know more  about StreamWork itself you should attend “PMC113 – Collaborative Decision Making in the Enterprise with SAP StreamWork “

You will find the sessions mentioned above by following the links below:

Bangalore

Madrid

To report this post you need to login first.

4 Comments

You must be Logged on to comment or reply to a post.

  1. diego lewinski

    Hi Ruediger,

    Regarding the “Integration of SAP StreamWork with the ABAP world” wiki, are there any pre-requisites/dependencies in terms of ABAP/BASIS support pack level? For example I’ve noticed that class CL_SYSTEM_UUID (for method if_system_uuid in oauth_nonce) is not present in ERP 6.0 Netweaver 701 (SAPKB70105)

    Thanks

    Diego

    (0) 
    1. Ruediger Mueller Post author

      Hi Diego,

      For sure there are dependencies.However, I don’t know which dependencies exist. I think the most important funcationality that is required is being able to send HTTP requests. This is available since a long time ago.

      Another important part for serious integration work are the encryption libraries which are required to calculate the sign string. I think those libraries are available in all NetWeaver 7.x releases (and potententially even earlier).

      The class you mention is not a big deal. It is used to build the NONCE parameter. The nonce is just a random string. So you can build it with lots of different algorithms. I only decided to use CL_SYSTEM_UUID as it was available and fulfills the purpose.

      Sorry, that I am no able to answer with exact NetWeaver releases.

      Regards,

        Rüdiger

      (0) 

Leave a Reply