Symptom
- There are one or more Duplicate records in Story Reports
- Is it possible to avoid Duplicate entries?
"Image/data in this KBA is from SAP internal systems, sample data, or demo systems. Any resemblance to real data is purely coincidental."
Environment
SAP SuccessFactors HCM Suite
Resolution
There could be various reasons for multiple records of a user, kindly refer to the below scenario's mentioned and how to address them.
SCENARIO 1: Due to any of the fields in the tables used in the query having different data.
- This would be the case, even if the aforementioned field has not been used in the query.
- To remove these Duplicates, we would have to identify this field and apply filters to it to exclude unwanted entries.
- If there is no column with distinct data used in the widget, the cross-tab will show only one row per user.
The best approach to do this would be:
- Make a Copy of the Report and edit data source under concern.
- Add a filter to just include an example user / record that results in Duplicates.
(This reduces the query’s run time and reduces the refresh interval between every change made) - Isolate the problematic table by removing the existing tables one by one.
- Once identified, retain this table and remove as many of the other tables as possible.
- We are trying to replicate the Duplicates issue with minimal tables / fields.
- Include all the fields from the table identified in step 3.
- Review the results and identify the fields that have different values.
- Use Filters for the particular table to include only the required data identified in Step 6.
SCENARIO 2: Due to selection of MDF object fields
- To prevent duplicate records when joining non-MDF objects (such as Job Information) with MDF objects, it's recommended to select Foundation Object fields directly from the MDF object rather than from the non-MDF source.
For example:
- Deselect the Foundation Object field from the Job Information table.
- Then, expand the Job Information section, navigate to Foundation Objects, and select the desired field.
- Apply a filter on the joined Foundation Object where the Record Status is equal to 'N'.
SCENARIO 3: Due to Time filters set.
- If a Time filter is set to a range apart from current date, will fetch all the records present in the chosen date range, this might lead to multiple records of the user.
- Kindly use "Current date" (Default Date setting) in order to avoid Duplicate records due to Time filters set.
SCENARIO 4: Using Inner join between objects will help in some scenario's as well.
SCENARIO 5: Due to selection of tables which create multiple many-to-one relationships with its parent table.
- For the best performance, we recommend that you either define a table filter on the individual joined tables or aggregate the results on the individual joined tables.
SCENARIO 6: Due to one or more users having multiple Job Transactions on the same day.
- The "Effective Latest Change" field under Job Information holds the value "Y" for the last change done for the day and "N" for the remaining Transactions.
Applying a filter for this field will fetch only latest changes done (i.e., apply filter as Effective Latest Change equals to "Y").
See Also
Keywords
Duplicate records, Story Report, Multiple Job Transactions, Effective Latest Change, MDF object fields, duplicate entries, Time filters, Job Information table, Foundation Object fields, crosstab, table relationships, filter application, data source, query designer, table aggregation, inner join, record status, object, Position, autojoin , KBA , LOD-SF-ANA-SAC-QDS , Query Designer - Filter, Calculated Column, Params , LOD-SF-ANA-SAC , Stories in People Analytics , How To
Product
Attachments
| Pasted image.png |
| Pasted image.png |
| Pasted image.png |
| Pasted image.png |
| Pasted image.png |
SAP Knowledge Base Article - Public