Update: New blog on how to configure SFSF adapter with REST Protocol: HowTo: Configure Communication Channel with SFSF Adapter (with REST Message Protocol) for SAP Process Integration

I am pleased to announce that today we released SP1 of the “SAP Process Integration, connectivity add-on 1.0”. This release of the add-on consists of

  • a new “OData Adapter
  • and extensions to the existing “SFSF Adapter”


Overview


The OData adapter enables integration with OData service providers. It currently focuses on the consumption of OData services. It supports synchronous as well as asynchronous modes of operations. All OData operations are supported and you can choose the desired operation within the channel configuration itself.


The SFSF Adapter has been extended to support SuccessFactors Adhoc and OData API’s along with several other features. Within the channel configuration, by switching the message protocol from SOAP to ODATA, you can communicate with the OData API’s exposed by the SuccessFactors system.

For your reference, here are some example scenarios of OData API integration between SAP ERP HCM and SuccessFactors Employee Central using the SFSF Adapter:


1. Employee Central Employee Data Replication to ERP HCM Employee ReplicationODataQuery.jpg                                                                                                                                                                                                                                                                                         2. ERP HCM Employee Replication to Employee Central Employee Data ReplicationODataUpdate.jpg     

        3. ERP Employee Data Replication Confirmation to EC Employee Data Replication ConfirmationODataCreate.jpg

Capabilities of OData Adapter


  1. OData Operations – The OData adapter provides Query, Read, Create, Update, Merge & Delete operations.
  2. Authentication Methods – The adapter supports Basic Authentication (Username & Password) and Client Certificate based authentication.
  3. HTTP Proxy Settings – The OData adapter supports the usage of HTTP proxies.
  4. HTTPS Communication – OData adapter supports secure communication by using SSL certificates.
  5. Using HTTP Destinations – The adapter supports use of HTTP destinations created in NetWeaver Administrator, within the channel configuration. This reduces the effort of manually entering HTTP connection details during channel configuration.
  6. Pagination – The OData adapter handles server side pagination. It merges the response from the server in the form of multiple pages into one single payload. It also supports client side pagination using query parameters.
  7. Integration with Channel Ping – The adapter is integrated with channel ping, which enables validation of channel configuration.


Capabilities of SFSF Adapter


  1. OData API – The SFSF adapter can now be used to communicate with the SuccessFactors OData API’s. The OData operations supported by the SFSF adapter are Query, Read, Create, Update, Merge & Delete.
  2. Adhoc Entities – The adapter enables querying Adhoc entities from SuccessFactors system. You can also specify the maximum time the adapter should wait for the query results (timeout).
  3. HTTP Proxy Settings – The adapter supports the usage of HTTP proxies.
  4. HTTPS Communication – SFSF adapter supports secure communication using SSL certificates.
  5. Using HTTP Destinations – The adapter supports use of HTTP destinations created in NetWeaver Administrator, within the channel configuration. This reduces the effort of manually entering HTTP connection details during channel configuration.
  6. Optimized Message Processing – The adapter enables optimized message processing by packaging the SuccessFactors query results into less number of XI messages.
  7. Integration with Channel Ping – The adapter is integrated with channel ping, which enables validation of channel configuration.
  8. Integration with Alerting – The adapter is integrated with alerting and can raise alerts for these error situations; Inactive channel, Error during channel initialization, Authentication failure and Message processing failure.
    1. Operate Sender Channel using Web Services – The adapter supports usage of web services for controlling the sender channel.


    Compatibility Matrix


    SAP NetWeaver Process Integration, connectivity add-on 1.0, SP1 is compatible with:

    • SAP NW PI 711 >=SP12
    • SAP NW PI 730 >=SP10
    • SAP NW PI 731 >=SP09
    • SAP NW PI 740 >=SP04

    The connectivity add-on runs fully in the Java stack and supports all valid deployment options of SAP NetWeaver Process Integration (ABAP + Java, Java only). The add-on  is included in your SAP Process Integration license and you do not need any further license to use the adapters.


    Documentation & Download Link


    1. Help Documentation: http://help.sap.com/nw-connectivity-addon101/
    2. FAQ’s Note – 1964868
    3. Software Download Link: Software Downloads | SAP Support Portal  > Support Packages and Patches  > Browse our Download Catalog > SAP NetWeaver and complementary products > SAP NW PI CONNECTIVITY ADDON > PI CONNECTIVITY ADDON 1.0

    Additional Resources


    1. For information on SP0 of the add-on, refer the blog: SuccessFactors (SFSF) Adapter for SAP NetWeaver Process Integration
    2. HowTo: Configure Communication Channel with SFSF Adapter for SAP Process Integration (PI)
    3. HowTo: Configure Communication Channel with SFSF Adapter (with REST Message Protocol) for SAP Process Integration
    To report this post you need to login first.

    54 Comments

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

    1. Prabhat Sharma

      Thanks for this most awaited feature.

       

       

      I have following follow-up questions.

       

       

      1. Does OData Supports Queries with $expand Feature of SFOData.

                 e.g Such as below query will it work in Odata SFSF Adapter ?

       

      https://api5.successfactors.eu/odata/v2/PerPerson?$format=json&

      $expand=personRelationshipNav/relPersonNav,personRerlationshipNav/relPersonalNav

       

       

      2. So I want to understand How is the Conversion done in Channel – PI will send OData Query ( such as above ) to SFSF Receiver adapter and in response it will return us the XML data ? ( So JSON/Atom format to XML converison was done by channel itself ) ??

       

      3. Does Modelling is supported by Odata Quaries also ?? ( such as above quary ) ?

       

      Regards

      Prabhat Sharma.

       

       

      (0) 
      1. Finny Babu Post author

        Hi Prabhat

         

        Thanks. Please find my replies to your queries below:

        1. Yes, $expand is supported. But $format is not supported as yet and the channel requires the format to be Atom.

        2. Yes

        3. Yes, the modelling is supported.

         

        Regards

        Finny

        (0) 
      1. Finny Babu Post author

        Thanks Shabarish.

         

        Plain REST adapter is already planned and is currently under development. We are working hard and hopefully will release it sometime this year.

        (0) 
    2. koti reddy

      Thank you Finny Babu for the most awaited release of ODATA adapter. I have following query.

      In order to work around, where can i find the use cases….

       

      Regards

      Koti Reddy

      (0) 
      1. Finny Babu Post author

        Hi Koti

         

        The SFSF and OData adapters which comes as part of the Connectivity add-on, do not have any pre-shipped content as yet. You will have to build your own content based on your scenario.

        (0) 
    3. Dijesh Tanna

      Hello Finny,

       

      Is RDS available for ESR content and ECC developments ? I mean the Proxy implementation available on ECC similar to what was available for communication using File or Axis adapter ?

       

      The current implementation in ECC for File / Axis adapter is very much tied to the communication technologies ( Doing Login / Logout request from ABAP itself) which is not reusable for any other adapter type.. Is there any plan to make it more independent to protocol being used ? As it seems that SAP is releasing new communication protocol more often for SuccessFactor ( Started with File then Axis Then SFSF (SOAP) and now SFSF (OData)).

       

       

      Thanks & Regards,
      Dijesh Tanna

      (0) 
      1. Finny Babu Post author

        Hi Dijesh

         

        The SFSF and OData adapters on PI do not have any pre-shipped content as yet.

        SuccessFactors exposes SOAP, ODATA & REST API’s for its modules and hence the SFSF adapter had to/have to support them.

        (0) 
    4. Hardman Jon

      Do you have any advice on the best method for applying this add on,

       

      I have a new version of PO 7.4 SP4 what is the best approach to applying this add on? Is it still to use SUM or could I use NWDS?

       

      Thanks,

       

      Jon

      (0) 
    5. Brian Arthern

      Hi,

       

      Our Basis team recently installed the adapter pack on our 7.11 SP12 system and reported no installation issues. I tried to created a test channel (struggling a bit as the documentation is light). after activating without any error in Integration Builder, the comms channels show the following:

       

      Status:  ????

      Short Log: No adapter registered for this channel.

       

      Has something been missed in the deployment…?

       

      thanks

      Brian

       

      (0) 
      1. Finny Babu Post author

        Hi Brian

         

        Are you using the OData adapter on 7.11? If yes, we are having a technical restriction on using OData in 7.11 and this is also mentioned in the FAQ note – 1964868.

         

        We are looking into this issue but do not have an estimate as to how this can be solved and when this will be available. Once we have a solution we will release a patch for this restriction.

        (0) 
    6. sushant shinde

      Hi Finny,

       

      i have configured a end to end scenario between PI(7.3.1)->Success Factors

       

      IN ESR i have created the data structure according to Success factors RestFul webservices.

      i have used a SOAP sender channel and a tried with ODATA & SFSF adapter at the receiver side,

       

      i have the following doubts & Errors

       

      1. what do we have to enter in Resource path field in both the adpaters, I have read about the HCI(HANA Cloud Integration), but dont have a clear idea it,

      can we use something else in place of it for configuring the RESOURCE PATH field, please through some light on this.

       

      2. the error that i am facing for both the adapters in the channel monitoring is as follows :

      Connection to the OData endpoint was not successful.The error is com.sap.aii.adapter.lib.component.odata.exception.OsciException: Request processing not possible, problme in getting edmx file

       

       

       

       

      i am testing the scenario from test tab in RWB in PI

       

       

      regards,

      sushant

      (0) 
      1. Finny Babu Post author

        1. You do not need to understand everything in HCI (even though it is good to know :-)) to model the resource path. You just need to use the HCI’s eclipse based query modeler to generate the Resource path, and then copy it from there into your channel configuration. Please refer the documentation for more details:

        Modeling OData Operations – Creating HTTP Destination – SAP Library

         

        2. Can you please try by using HTTP proxy in the channel configuration?

        (0) 
        1. sushant shinde

          Hello Finny,

           

          thanks for the reply, it proved really helpful.

           

          can you please suggest which JAVA juno tool (www.eclipse.org/downloads/packages/release/Juno/SR2) would be most suitable for the for modelling the operation.

           

          regards,

          Sushant

          (0) 
    7. koti reddy

      Hello Finny Babu,

       

      1) As per my understanding, Eclipse is a client software, it is to be installed on a pc/end computing system But, let me know whether Eclipse is to be installed on Server or not.

       

      2) How to deploy the iflow diagram from pc to remote server so that the configurations automatically reflect in ID (i mean if we install eclipse on pc then without any backend connections how can it be deployed into SAP PI server ).

       

      3) Can provide any useful links for the same ?

      (0) 
      1. Finny Babu Post author

        Hi Koti

         

        1. The eclipse client is required just to model your query, you can put it anywhere you want. To model the query you can create a dummy iflow and once modeled copy the query to your channel configuration in PI.

         

        2. No need for this. The eclipse client is required just to model the query.

         

        3. Modeling OData Operations – Creating HTTP Destination – SAP Library

        Installing the Operations Modeler – Update and Installation Guide: Overview – SAP Library

        (0) 
    8. koti reddy

      Hi Finny Babu,

       

      Thanks for your reply.

      After modeling receiver comm channeI I have generated, imported XSD file into ESR and used the same structure fro sync outbound & inbound service interfaces and configured end to end scenario(SOAP->SFSF-Odataprotocol). When i test it from SOAP UI it says that Request processing not possible, error in getting EDMX file in comm channel monitoring.

       

      Please let me know

      1)Where to place the EDMX file downloaded from Eclipse so that the PI system can access it during runtime.

      2)Is it necessary to model the query for sender SOAP channel from iflow diagram ? because the system shows 407 proxy error only for sender side and moreover we don’t have have the QUERY option in sender SOAP comm channel.

      3)As the imported XSD file gives only one structure, which doesnt contain request n response fields; how to differentiate the req n reponse field tags in the entity.

       

      Note: Eclipse n modeling is done on external system and just imported the XSD into ESR and EDMX file location is given as Resource path in receiver SFSF comm channel.

       

      Regards

      Koti Reddy

      (0) 
      1. Bikash Prakash Mishra

        Hi Koti,

         

        1. The EDMX file need not be used at all. You can ignore the file. This will be downloaded automatically by PI.

         

        2. No, it is not necessary to model for sender soap channel. If you are doing only a query operation then any dummy payload you send should work.

         

        3. The imported XSD is the exact response that will be received by the adapter. As you are sending a dummy payload from the sender, you can choose anything you want.

         

        You are getting the error because you are providing edmx path as the resource path. The resource path should be an SFSF entity (User etc). When you do query modeling, you will get the resource path in the channel after finishing the wizard.

         

        You can see the resource path in the below screenshot.

        Capture.PNG

         

        Best regards,

        Bikash

        (0) 
        1. koti reddy

          Hi Bikash,

           

          Still i am facing the same error even after replacing the resource path as my entity (Position).

          Capture11.JPG

           

          I have installed the eclipse and operation modeler outside my system landscape say my pc. When i modeled i the scenario, EDMX file got automatically generated as shown below.

          cc09.JPG

          Later i have transported XSD and EDMX to my landscape and configured the end to end scenario importing the XSD.

           

          1) Should we maintain any connection between the external client system & pi system ? bcoz without any connection how can pi access the auomatically generated edmx file

          2) Can u reply to my post Consuming OData API in SAP PI 7.3.1 dual stack

           

          Regards

          Koti Reddy

          (0) 
          1. Damien Clean

            Hello Koty, I’m facing the same problem,

            after having configured the flow when I call the data i get the error message “Request processing not possible, problem in getting edmx file”.

            Can you please tell me how you solved it?

            Thanks in advance

            Damien

            (0) 
        2. Amith Menezes

          Hi Bikash,

           

          While using query in the Sender SFSF adapter(Compound Employee entity), would the outbound interface have to be synchronous? If so, then what would the request structure be cause the request I believe would be generated by the adapter itself, right?

           

          Regards,

          Amith

          (0) 
          1. Shankar Narayanan

            Hi Amith,

             

            It NEED NOT be synchronous. You can configure it as Async as well. Use eclipse based tools like kepler/luna/juno etc and model your scenario. As you select the operation, provide the URL and credentials, you can select the entity(C.E in your case) and select the fields you want to query. XSD gets generated automatically and you can import it in ESR. So you don’t have to worry about creating your source structure.

            (0) 
    9. Prabhat Sharma

      Hi Bikash,

         

      We have lookup scenario with OData Entities also. ( Syncronous Scenario – Request OData Query and in response data ).

          

      So Here is our requirement :-

       

      We need to build OData Query dynamically/ run time in message mapping and then we pass it to SFSF Receiver adapter – OData Protocol.

         

      Does it even supported using SFSF OData Receiver channel ?
      if Yes – What should be sample request message for OData Dynamic Query
      and how would it give response back?

       

      Does it give all the records in single go? Or with Odata
      also we have same limitation like query/ and queryMore calls like in case of
      Simple SOAP Request-Response Message??

       

      Regards

      Prabhat Sharma

      (0) 
    10. Jonny Wellard

      Hi

      regarding the installation.  I have downloaded the Documention, Installation and Support Pakages and Patches into 3 folders.

       

      The Documention folder contains “50125335 SAP NW Process Integration Connectivity addon 1.0 SP01 Docu.zip”.

       

      The Installation folder contains “51047915 SAP NetWeaver Process Integration, connectivity add-on 1.0.zip”  – and buried deep inside (amongst other files) this is a PICOASUF00_0.SCA and a XI7_11_CONNECTIVITY_ADD_ON_1.0_0_00_00.TPZ

       

      The Support Packages and Patches contains 3 zip files

      •    CONNECTIVITY1001_1-10013356.zip containing XI7_11_CONNECTIVITY_ADD_ON_1.0_0_01_00.TPZ
      •    PIADAPTERS01_2-20012293.zip  containing Build, Deploy archives – inside Deploy Archive are three ODATA related sda files
      •    PICOASUF01_5-10013382.zip containing Build, Deploy archives – inside Deploy Archive is the SFSF sda files

       

      The SAP master and install guide gives me no clear idea on how to install them.

       

      So how do I install them? What order so I install them and do I need to unpack them to get at the SDA and TPZ etc for installation by the SUM tool.

       

      ……….

      Well I have installed the first part.  From the installation folder unpacked the ZIP file and “pointed” SUM at the subfolder that contains the .SCA file.  Installed this – once that completed (about 1hour) I then unpacked the other ZIP file that contains the .TPZ and imported that into the Integration Builder.  I could then open up the Integation Configuration and choose SFSF as an Adapter.   I guess I will just follow the same type of process for the patches.

      ……….

      The patches \PI CONNECTIVITY ADDON 1.0\Support Packages and Patches\CONNECTIVITY1001_1-10013356.zip contains the TPZ and once imported this then allow me to choose the ODATA as an Adapter.

      I will now unzip the other 2 patch files to access the .SDA in there into a new folder eg. D:/newSDA.  Then launch via D:\usr\sap\<sid>\J01\j2ee\console\textconsole.bat and deploy each .SDA in turn  e.g. deploy D:\newSDA\com.sap.aii.adapter.picao.util.app.sda  version_rule=all

      ………..

      Also if you intend to use the SFSF with ODATA msg protocol then the Eclipse Juno Operation Modeller should also be installed to properly form your queries etc.

       

      Hope this helps people !.

      (0) 
    11. Venugopalarao Immadisetty

      Hi Finny Babu,

       

        We configured Receiver OData adapter in PI and getting below error. Using same user and pwd I was able to connect using Juno tool. Where can I pass Company ID in receiver OData adapter ? without company ID how do I connect my account in Success factor. Please confirm.

       

       

      3/31/2015 5:17:20.253 PM Error com.sap.aii.adapter.lib.component.odata.exception.OsciException: 401 : HTTP/1.1 : Unauthorized
      3/31/2015 5:17:20.263 PM Error

      Message could not be forwarded to the JCA adapter. Reason: Permanent error: Adapter call failed. Reason: com.sap.aii.af.lib.ra.cci.XIAdapterException:


      Thanks for your help.

      Regads,

      Venu

      (0) 
          1. Venugopalarao Immadisetty

            Can we test same query whatever we are using Odata Resource path in SOAP UI or any other test tool, first if we can test query using tool then we can see what response is coming, Pls let me know what is the testing client we can use for ODATA API’s.

             

            Regards,

            Venu

            (0) 
    12. Prakash Babu J

      Hi Finny and Team,

       

      Can you please clarify below points

       

      1) Whether it is possible to have synchronous communication with SuccessFactors using    SFSF Receiver Adapter

       

      2) Operate Sender Channel using Web Services – The adapter supports usage of web services for controlling the sender channel.

       

      How do we achieve the above fucntionality, can you share more details on this capability.

       

      Thanks & Regards,

      Prakash

      (0) 
        1. Prakash Babu J

          Hi Bikash,

           

          Thanks.

           

          1) Regarding Synchronous communication in SFSF adapter

           

          How to get XSD for the Request and Response structure for the SFAPI? Can we download XSD from Success Factors Cloud System?

           

          Example Scenario: To query API and get the response back to the calling application

           

          Please provide the details.

           

          Thanks & Regards,

          Prakash

          (0) 
          1. Bikash Prakash Mishra

            The request xsd is exactly same as the request xsd for asynchronous messages. The response xsd is not shipped in the content. You will have to get one created. The format is exactly same as the response given back when you invoke the web services from e.g. SOAP UI directly.

             

            Best regards,

            Bikash

            (0) 
            1. Prakash Babu J

              Hi Bikash,

               

              Thanks for your inputs, need some more clarifications for below points

               

              1) For generating XSD whether we can use NWDS or only Kepler is the recommended tool?

               

              2) In sender adapter Delta Synch for ADHOC_XXX entities will have support in future?,

               

              as we have requirement to pull only delta records but as you updated in thread already that it is not enabled for ADHOC entities. So if there is any workaround without BPM for this kind of requirement kindly share.

               

              Thanks & Regards,

              Prakash

              (0) 
            2. Prakash Babu J

              Hi Bikash,

               

              Can you please provide update for the above queries and also need inputs for below points

               

              In Kepler tool when we model Iflow to generate ODATA query for Sender ODATA protocol is not displaying but in PI Sender Channel ODATA protocol is available .? Please clarify.

               

              Also in Help it is mentioned Delta Sync is possible for ODATA entities, so what is the syntax for delta sync which need to be specified in the query. Please provide more details on this functionality.

               

              Thanks & Regards,

              Prakash

              (0) 
    13. Shankar Narayanan

      Hi Finny,

       

      I implemented an end to end scenario with SF in the receiver to query using SFSF adapter.

      Worked like a charm. But when i tried the same for delete operation, the XML message that is sent to PI looks fine, but the XML sent by SFSF adapter to SF system looks jumbled and invalid. Hence I get an error as Invalid XML Schema.

       

      I tried the same scenario with Soap Axis adapter, and it is working fine. Is it a product bug in SFSF adapter?

      (0) 
    14. Amith Menezes

      Hi Finny,

       

      How do we achieve this in the Odata Adapter?

       

      1. Pagination – The OData adapter handles server side pagination. It merges the response from the server in the form of multiple pages into one single payload. It also supports client side pagination using query parameters.

       

      I have seen multiple calls made from the SFSF Sender adapter but since the OData adapter is limited to being the receiver, how can set it to bring back all pages as one payload?

      (0) 
    15. deepak jaiswal

      Hi,

      I have below queries:

      1) How to use SFSF Sender adapter with ODATA protocol to fetch data from multiple entities like Join operation used to fetch data from multiple table.

       

      2) How to create and pass dynamic filters for the query to be used in channel.

       

      Regards

      Deepak

      (0) 
    16. Ambrish Mishra

      Hi Finny Babu,

      I am currently doing the design for Cost center replication from SAP to EC. The service interface available in the package ODTFINCC 600 is OODTF_CCTR_ODTF_CCTR01_OUT which is synchronous while I am planning to update the Cost centers through the ODATA API FO_COSTCENTER but not sure how to make it work synchronously. Not sure about the nature of SFSF adapter and what response will be received when I do the UPSERT within the adapter. Can you please throw some light on this design.

      thanks

      Ambrish

      (0) 

    Leave a Reply