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 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.
Pre-Requisites
- SuccessFactors Admin Access
- HCP
- Advanced RESTClient in Chrome
What you will understand from this blog:
- Testing oData APIs on REST Client
- Configure HCPms (HANA Cloud Platform Mobile Services)
- Test HCPms Application ID with Advanced REST client
- Testing with iOS Native Application
- Personal Experience on Managing SFSF Data
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.
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.
- To search these APIs, click Home and then click Admin Center.
- 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
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, let us try to access this entity from the oData URL.
Click on this URL to navigate to the required entity with oData query formats.
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 to get the APP CID
Payload:
<?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”
xmlns:d=”http://schemas.microsoft.com/ado/2007/08/dataservices“>
<content type=”application/xml”>
<m:properties>
<d:DeviceType>iPhone</d:DeviceType>
</m:properties>
</content>
</entry>
2. For GET Request, the following URL Format is used:
https://hcpms-s0015412706trial.hanatrial.ondemand.com:443/com.sfsf.xxxxx/User(‘admin3’)
3. For POST request, the following URL Format is used:
https://hcpms-s0015412706trial.hanatrial.ondemand.com:443/com.sfsf.xxxxx/User(‘admin3’)
Payload:
{
“__metadata”: {
“uri”: “User(userId=’admin3′)”
},
“cellPhone”: “9986926681”,
“status”: “t”,
“username”: “admin3”
}
4. Refresh your SFSF My Employee File screen to view the updated cell phone number.
Testing with iOS Native Application:
I am using this User ID for testing. I will be updating the Cell Phone Number from iOS Native application. Phone number is a dummy number, please do not try to call on that J
Data in SFSF
Login Screen on Mobile:
Data has been updated successfully from Mobile App and the same is changed on the SFSF.
Personal Experience on Managing SFSF Data:
My personal experience while developing a mobile application and testing in SFSF was a little pain, for every change on mobile device, I had to change as a different user with the help of proxy login. 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
- Open a new excel Document.
- 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.