Symptom
Validation check introduced as CompoundEmployee API parameter to idendify if effective end date filter falls under Purged period of data (Partial Purged)
Environment
Successfactors EmployeeCentral
Reproducing the Issue
NA
Cause
NA
Resolution
Compound Employee API returns the data that is available in the Successfactors system for the requested entities of an employee. Hence, after partial purge, only the remaining data is returned by CE API.
Compound Employee API will offer an optional validation, that checks, whether the effective end date filter hits a period, where data has been purged. The check needs to be enabled by a new query parameter called ‘purgeOptions’.
Example:
In above example, you see that for employee 2, purged timeslice has effective end date after effective end date used in the filter.
- Address_Information timeslice with effective start date: 2015-01-01 and effective end date as 2016-02-02 has been purged for an employee 2.
- Validity of Retention start date used under manage data-> DRTM Person Info Purge Objects for "purge type object" as "Address Information" is 1st sep, 2017.
- Employee is active and belongs to country INDIA
- Once Data retention purge program is executed in SF, it would remove 2015-01-01 - 2016-02-02 timeslice for employee 2 from Employee file-> Address information.
- So, when you run the CompoundEmployee API query ( full transmission mode or Delta mode) with parameter as shown below where purged data has effective end date after (2016-02-02) the effective end date used in the filter (2016-01-01) as shown below:
API Request:
<urn:query>
<urn:queryString>
SELECT person, personal_information, address_information, …
FROM CompoundEmployee
WHERE last_modified_on > to_DateTime('2017-08-01T00:00:00Z')
AND effective_end_date >= to_date('2016-01-01')
</urn:queryString>
<urn:param>
<urn:name>purgeOptions</urn:name>
<urn:value>validateEffectiveEndDateFilter</urn:value>
</urn:param>
</urn:query>
Response will throw an error message as shown below:
<log_item>
<person_id>4711</person_id>
<person_id_external>cgrant</person_id_external>
<code>COMPOUND_EMPLOYEE/EFFECTIVE_END_DATE_FILTER_IN_PURGE_PERIOD</code>
<severity>ERROR</severity>
<message_text> The effective end date filter is outside of the retention period of address_information that starts on 2017-09-01. Please use an effective end date filter greater than or equal to 2017-09-01. </message_text>
</log_item>
- The validation is applied to all entities that support partial purge.
- As of now, following segments supports partial purge:
Keywords
Data Retention management, Full Purge, Partial Purge , KBA , LOD-SF-INT-CE , Compound Employee API , LOD-SF-INT , Integrations , Problem