Preface: SAP SuccessFactors Employee Central is a complete, cloud technology-based core HR system of record that combines HR transactions, processes and data with social collaboration features and mobile functionality. In today’s always-on, mobile, social and data-driven world it is imperative to enable the integration for real-time applications such as SuccessFactors with other On-premise / Cloud applications using a robust middleware layer.

With SuccessFactors having established itself as one of the leading Cloud based HR solutions in the market, it has seen a surge in SuccessFactors Employee Central integration with On-premise and Cloud based HR / Non HR applications.


The below blog is first in the series to understand the SuccessFactors Employee Central integration with such applications in details.


Objective: The objective of this guide is to illustrate the steps required to create and test a basic interface using SFSF Adapter in SAP PI dual stack environment.

Prerequisites:

  1. Connectivity Add-On is installed in SAP PI.
  2. Eclipse IDE for Java EE developers (With HCI Tools) is installed in the machine.
  3. SAP PI instance is up and running.
  4. User has necessary authorization to build, test and monitor an interface in SAP PI.
  5. SuccessFactors instance is up and running.
  6. SuccessFactors instance connectivity details are available.
  7. Entity “PerPersonal” contains some data.
  8. Third party system instance such as SAP HR is up and running.
  9. SAP PI connectivity with third party system instance such as SAP HR is setup.

Assumptions:

  1. User is familiar with the necessary development tools such as SAP PI. Eclipse IDE.
  2. Interface is built in a dual stack SAP PI 7.11 environment.

SuccessFactors basic concepts:

SuccessFactors Employee Central: SuccessFactors Employee Central (SFEC) is next generation Cloud based Core HR System.

Objects: SuccessFactors application broadly maintains two types of information at object level.

  • Foundation Objects: Contains details for Organization, Pay and Job Structure Details.

        Some examples are Company/ Legal Entity, Business Unit, Location Group etc.

  • Personal and Employment Objects: Contains Personal and Employment Details for Employees.

        Some examples are User, PerAddress, PerDirectDeposit, PerEmail etc.

Entity: Entities are table structures, used to store the data within SF application.

SFAPI: The SFAPI is library of SF entities, exposed to the outside world for integration purposes.

Operations – Each entity supports some operations through API: Example of such operations are

  • Insert
  • Update
  • Upsert
  • Query
  • QueryMore
  • Delete

Interface Scenario: The interface fetches the basic user information such as first name, last name, gender, marital status etc. from SFEC entity PerPersonal and puts it in a file (xml format) on the application server in SAP HR system.

The interface uses SAP PI as middleware.

Screen Shot 2016-04-07 at 7.20.58 PM.png

Implementation Details:


1. Test the SF connectivity.

a. Get the below connectivity details from SF team.

  • SuccessFactor URL or endpoint
  • User name
  • Password
  • Company ID

b. Open the SF URL in the browser and download the WSDL

Screen Shot 2016-04-07 at 7.22.59 PM.png

c. Import the WSDL in any external tool such as SOAP UI and provide the connectivity details such as User name, Password and the company ID in the

    Login operation of request payload.

d. Trigger the request. Session Id is received in the Response.

e. This completes the successful connectivity with SF application.

Screen Shot 2016-04-11 at 6.18.26 PM.png

f. Connectivity can further be confirmed by running other operations such as Query.

g. To run the Query operation, specify the Session Id in the header parameter, received through the login operation test.

h. Now specify the query using SFQL (Successfactors query language) and also specify the name and value parameters as specified in the screenshot.

i. Trigger the request.

j. Response is received with the first 5 users from the User entity.

Screen Shot 2016-04-11 at 6.41.35 PM.png

2. Generate the XSD for SF entity PerPersonal.

The SFSF adapter generates an XSD file every time you perform an operation. You can use this XSD file for mapping purposes.

a. Launch the Eclipse IDE. During the launch, ensure to specify the correct workspace. If multiple Eclipse tools are installed in the system, then it is advisable         to specify a separate workspace for every release of Eclipse. This is to avoid any confusion with other releases or with other tools such as NWDS.

Screen Shot 2016-04-11 at 6.47.49 PM.png

b. Install the Operation modeler. To install, first open the Eclipse IDE and click on Install new software.

Screen Shot 2016-04-11 at 6.51.22 PM.png

c. Click on Add and Specify the repository name and location. Please specify the relevant Eclipse release at the end of repository location. In this scenario it            was luna.

Screen Shot 2016-04-07 at 7.26.06 PM.png

d. Tick the SAP Hana Cloud Integration Tools and click on next.

Screen Shot 2016-04-07 at 7.28.10 PM.png

e. Review the items to be installed and click on next.

Screen Shot 2016-04-07 at 7.30.09 PM.png

f. Accept the license agreement and click on finish.

Screen Shot 2016-04-11 at 6.23.01 PM.png

Screen Shot 2016-04-07 at 7.34.12 PM.png

g. Click on Yes once you get the prompt for Eclipse restart.

    Please refer to the SAP Help in the reference section for installing the operation modeler.

Screen Shot 2016-04-07 at 7.37.13 PM.png

h. Create a new project. To create a new project, open the Integration designer perspective in the Eclipse IDE. To do so, click on Open other perspective         under the windows menu, and then click on Integration designer.

Screen Shot 2016-04-11 at 3.25.40 PM.png

i. Click on New and then Integration project under File menu option.

Screen Shot 2016-04-11 at 3.28.22 PM.png

j. Specify the project name and keep the project type as integration flow.

Screen Shot 2016-04-11 at 3.30.19 PM.png

k. Specify the integration flow name and keep the pattern as Point to Point. Click on finish.

Screen Shot 2016-04-11 at 3.32.13 PM.png

Screen Shot 2016-04-11 at 3.33.32 PM.png

l. Depending upon whether the SFSF adapter is to be used on Sender / Receiver side, click on the corresponding communication channel. In this scenario,           SFSF adapter will be used as Sender adapter hence click on Sender communication channel.

Screen Shot 2016-04-11 at 6.35.26 PM.png

m. Click on browse on the Adapter type input help and select the Successfactors adapter.

Screen Shot 2016-04-11 at 3.37.24 PM.png

n. Click on Adapter Specific tab and then on Model operation.

Screen Shot 2016-04-11 at 3.39.26 PM.png

o. Specify the SF URL, Company name, user id and password and then click on next.

Screen Shot 2016-04-11 at 3.41.17 PM.png

p. Select the relevant entity and then click on next. In this interface “PerPersonal” entity is used, which contains user details such as first name, last name,              gender, marital status etc.

Screen Shot 2016-04-11 at 3.42.55 PM.png

q. Select the Operation as “Query” and the fields to be used in the interface. Operation modeler automatically creates the SFQL query. Please take note of this      SFQL query for future reference.

Screen Shot 2016-04-11 at 3.44.23 PM.png

r. The next two steps can be used to configure the filters and the sorting criteria for the SFQL query. We are not considering these two steps for the sake of ease     in understanding wrt to our scenario. Click on finish.

Screen Shot 2016-04-11 at 3.46.26 PM.png

Screen Shot 2016-04-11 at 3.47.30 PM.png

s. The operation modeler generates the xsd.

Screen Shot 2016-04-11 at 3.49.44 PM.png

t. Refer to the xsd file, which is now available at the specified location. Right click on the XSD name and download it to a location in your machine.

Screen Shot 2016-04-11 at 3.51.01 PM.png

3. Configure design time objects in ESR.

a. Create a namespace.

b. Create an external definition and import the xsd, as created in step 2 above.

c. Observe the field names in the external definition after import.

Note: Steps such as creation of a new Product, SWC, installation of SWC on the SAP HR business system, creation of a new namespace are not covered in this guide.

Screen Shot 2016-04-11 at 3.56.07 PM.png

d. Create an Outbound Asynchronous interface and assign the relevant request structure.

Screen Shot 2016-04-11 at 3.57.25 PM.png

e. Create an Inbound Asynchronous interface and assign the same request structure. For ease of understanding, the structure on the receiver side is kept same     as that from sender side.

f. Save and activate the ESR objects.

Screen Shot 2016-04-11 at 3.59.32 PM.png

To report this post you need to login first.

5 Comments

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

  1. Ankit kesarwani

    Hello Kanes ,

    I am facing issues with Model operation in Eclipse Luna , even after specifying the SF URL, Company name, user id and password and entities are not populated clicking next .

    Is there any other config done to fetch entity from Successfactor .

    Please let me know if any one else faced the same issue and the how did they resolved .

    Thanks

    Ankit kesarwani

    (0) 
      1. Ankit kesarwani

        Hi Anoop,

        For HCI we generally work out of private network(client), in my case as well i am working out of my client network so proxy should not be the issue i guess .

        Please correct me if i am wrong .

        Thanks

        Ankit kesarwani

        (0) 
  2. Kanes I Post author

    Hi Ankit,

    Please check whether your Eclipse Luna version is latest and compatible. Please also try with Eclipse Kepler, if possible.

    (0) 

Leave a Reply