SAP Knowledge Base Article - Public

2196395 - Odata API doesn't return start date of dependent information correctly when changed from the Personal information screen.

Symptom

You are receiving incorrect start date information from Odata API response for dependants data in an older timeslice.

This happens changes to the effective date are made for Dependants under Personal information screen.

This is observed with any of the effective dated API. In this scenario, We use the Odata API entity "PerPersonRelationship"

Environment

Successfactors Odata API

Reproducing the Issue

The demo here is shown using a successfactors demo instance.

For the employee Carla Grant, We can see from Personal information screen that there are 3 dependants.

3 dep.jpg

Click on the History button above and a add a new dependant as mentioned below.

 

insert new rec.jpg

enter 21st june.jpg

Enter the date "06/21/2015" as shown above and hit on "Proceed"

add vikas.jpg

 

Enter First name, Last name and Relationship type - Press Save.

4 dep.jpg

Now, Go back to the previous screen (Personal information) and we should see 4 dependants there.

edit deps.jpg

Click on "Edit" and edit some information of the information for the dependant as shown below with a different date. (I have changed first name here from Vikas to Vikas test)

change effec date of deps.jpg

vikas test.jpg

This change should add a new timeslice for 23rd of June and this is verified from History again

vik changed.jpg

Now, You run the odata API to check if the response is correctly populating.

 

 23rd api.jpg

From the API response, It is noticed that the changed data (ie change of FirstName from Vikas to Vikas test) on 23rd june is correctly returned.However, the change of date for other 3 dependants is still 21st June.

Cause

This is the standard system behavior. The changes made in the "Edit" screen only apply to the edited record and not for all the timeslices. 

Resolution

To modify the start date for all dependants, A new timeslice must be introduced. This is done by going to "History" and select "Insert New Record" (Shown Below)

 r insert.jpg

We will now change the effective date to "23 June 2015" and change the FirstName from Vikas to Vikas test

r vik test.jpg

This change adds a new timeslice for the date "23rd June" as shown below.

r 3.jpg

We can see that the new timeslice is added and the changes that are made are correctly popualted. Let us test the API if it returns the date as 23rd June for all the dependants now.

 

r final.jpg

We see that the effective date is returned for all the dependants for the timeslice 23-06-2015 and change in the FirstName is also displayed correctly.

See Also

During my testing, I have used the below request URL,

/odata/v2/PerPersonRelationship?$format=json&$select=firstName,lastName,startDate&$filter=personIdExternal%20eq%20'cgrant1'&$fromDate=1900-01-01&toDate=9999-12-31

 

Keywords

Dependant information from Odata API , KBA , LOD-SF-INT , SF Integrations - EC Payroll, Boomi/ HCI, API , Problem

Product

SAP SuccessFactors HCM Suite 1705