We all understand that road map for partners, consulting companies and developers should be on par with SAP’s road map. During the early days of mobility, we started with SUP 2.0, then moved on to SMP 2.3, and later had a major release on SMP 3.0 and now HANA Cloud Platform (HCP). We did build many apps on SUP with Mobile Business Objects (MBOs) and then had to modify and rewrite the code base as per the new SMP 3.0 version with oData structure. Few announcements, which made developers happy was the usage of common SDK for SMP and HCP.
Some of our apps are related to Employee Self Service (ESS) and Manager Self Service (MSS), herein we have to plan the road map that is in sync with SAP; we see that SAP Human Capital Management (HCM) is already making a shift to SuccessFactors (SFSF) to manage most of the data on the Cloud servers (I had the opportunity to work on SuccessFactors integration with HANA Cloud integration using SFSF adaptors. In this context, I invite you to take a look at my previous blog on data exchange process). Now, the challenge is to migrate on premise SAP HCM mobile apps running on SMP to the cloud solutions. With this requirement, we call this scenario as SFSF extension with HCP.
To begin with, I have started working on an existing Innovapptive’s mEmployee app which talks to SAP via Gateway and SMP/HCP (an employee self-service application) that has the functionality of Employee Profile, People Search, Time Sheet, Leave Request and so on.
To get started, I started to explore SFSF and standard oData APIs, which are required for our business scenarios.
In this blog, I am also going to show the step by step process about how to configure SFSF standard oData APIs with HCP and how to read and update data to SFSF via REST client.
- SuccessFactors Admin Access
- Advanced RESTClient in Chrome
I would like to consider Employee Personal Profile details from SFSF to be displayed on to a mobile device. To do so, follow the below outlined steps.
1. In the My Employee File screen, the details as depicted in the following screen shot are displayed.
In this screen, you can view the personal profile of an employee with information such as personal, contacts, dependents, etc. As you are aware, SFSF has standard oData APIs defined for most of these details which are displayed here.
2. To search these APIs, click Home and then click Admin Center.
3. In the displayed Search box, type oData API Data Dictionary to display the entire list of APIs in the screen (as depicted in the following screen shot) such as:
- oDATA API entities
- Complex type name
- Function import
4. In the oData API Entities screen, expand the searched User entity to display the Property Name and all the possible operations on this entity.
Now, try to access this entity from the oData URL. The new base URL for SFSF is as follows:
Click on this URL to navigate to the required entity with oData query formats. For illustration purposes, I have used the following URL:
The following data is displayed, which needs to be updated. Here, as an example, I intend to update the cell phone number (marked yellow)
Testing oData APIs on REST Client
5. You can test with Advanced REST client with the following details for Get (Refer below screen shot).
6. For post operations, use the following code (as displayed in the screen shot).
Configure HCPms (HANA Cloud Platform Mobile Services)
7. Once you finish your basic testing, retrieve the HCP configurations.
8. Navigate to HCP and register a new application
9. Enter the backend URL and other details as depicted in the below screen shot.
10. Once you configure, try to ping the server.
Test HCPms Application ID with Advanced REST client
1. Register the get the APP CID
<?xml version="1.0" encoding="utf-8"?>
<entry xmlns="http://www.w3.org/2005/Atom" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"
2. For GET Request, click the following URL.
3. For POST request, click the following URL:
4. Refresh your SFSF My Employee File screen to view the updated cell phone number.
Testing with iOS Native Application
As I had mentioned before, we are still working on the application development. I am using this User ID for testing purposes only. I will be updating the Cell Phone Number from the iOS native application. Phone number is a dummy number, please do not try to call on that .
The following are the screen shots with appropriate procedures.
1. The data is displayed in the SFSF: My Employee File screen.
2. The Login screen on the mobile device is displayed as follows:
3. The data gets updated successfully from this mobile app and the same gets reflected in the SFSF.
Personal experience on managing data
My personal experience while developing a mobile application and testing in SFSF was a little pain, wherein for every change on the mobile device, I had to change as a different user with the help of proxy login. The best way to test whether your data is getting updated or not during the post/put operations is testing via Microsoft Excel.
To test via Microsoft Excel
1. Open a new excel Document.
2. From the menu, click Data tab ->From other Sources and then click From oData Data Feed.
3. Type the base URL and login details as follows:
4. In the Select Tables screen, click to select the tables you require and then click Next.
5. In the Save Data Connection File and Finish screen, click Finish. All data gets displayed in the excel spreadsheet.
Tip: A simple Ctrl + F can make life easy.
I hope you have had got a fair knowledge of how to configure SFSF standard oData APIs and HCP including reading and posting data to SFSF via the REST client. With this integration, we hope to take the Innovapptive’s mEmployee’s user experience to new heights, providing a seamless transactional experience pertaining to processing of all HR activities including payroll, hiring,performance management and on-boarding
If you would like a demo of Innovapptive's portfolio of Native or Web based mobile solutions for SFSF, please click on the link. Alternatively, if you would like to discuss with an Innovapptive solution expert, you can reach out to us by emailing us at email@example.com or you can reach a sales representative at (713) 275-1804.