Duplicate Check¶
Important
For Feeder 2.0: It is strongly recommended to flag all attributes that are used in the duplicate check with the Create Index option. Otherwise imports and search queries won’t be as fast as they could be.
Fundamental Knowledge¶
Accessing the feature: Object Configuration > Object (SF_User_PentosT)> Object Settings
The following screenshot shows the input screen with a sample implementation. The code is written in JSON syntax where the outter rectangular brackets must not be written.
- The outter curly braces define one criterion of the duplicate check.
- Within, the first element of “attributes” always specifies the affected attributes of the data object.
- The rectangular braces behind an attribute name define exemptions (if filled).
Soft Check (saving possible)¶
Scenario:
A record for the Italian employee Leo Cappo is already maintained in Feeder. The HR coordinator tries to create a new entry but is not aware of the existing one.
Check rule:
{
"attributes": {
"FIRSTNAME": [],
"LASTNAME": []
},
"unique": false
}
Important
The “unique” element defines, whether there will be a “strict (true)” or “soft (false)” check on the given attributes (fields).
Effect of this check rule:
- An info box shows and warns of a potential duplicate entry
- Clicking
OK
will save and leave the record open. ADuplicate Check
button appears at the bottom of the open record
- Clicking the
Duplicate Check
button will bring up a window with different saving options. In addition, the window will present the existing record when trying to save the new employee record
- Clicking the
Edit
button behind the name will open the existing record and allow a comparison. - Clicking
Save Nevertheless
disables the check for the future, as the new record is then officially not a duplicate. - Clicking
Save Temporarily
will postpone this validation step to a later point in time. The window will be closed.
Strict Check (saving denied)¶
Check rule:
{
"attributes": {
"FIRSTNAME": [],
"LASTNAME": []
},
"unique": true
}
Effect:
- The second employee entry (“Leo Cappo”) cannot be saved (temporarily) as both names are identical to the exisiting employee entry
- A particular notification screen shows and the validation step needs to be done right away
Practical Use Case¶
Scenario #1
Two different employees, same e-mail address
- Max Mustermann, max.mustermann@pentos.com
- Maxie Mustermann, max.mustermann@pentos.com
Check rule:
{
"attributes": {
"EMAIL": [
"nomail@pentos.com"
]
},
"unique": true
},
{
"attributes": {
"FIRSTNAME": [],
"LASTNAME": []
},
"unique": false
}
(See syntax explanation or read background information on “unique”)
Effect:
Info box appears with a notification that the record could not be saved, as the unique attribute EMAIL with value “max.mustermann@pentos.com” already exists. The record stays open and no saving options are displayed
Change the e-mail address e.g. by appending “01” and clickSave
. (Maxie Mustermann entry will then be assigned with max.mustermann01@pentos.com)
Result:
- Maxie Mustermann can be saved
- Both employee entries can reach status of green bullet points
Scenario #2:
Two employees with identical name but different e-mail address, check rule like in scenario #1.
- Max Mustermann, max.mustermann@pentos.com
- Max Mustermann, max.mustermann01@pentos.com
Effect:
Info box appears with warning that another record exists with identical first- & last name.
Record stays open, Duplicate Check
button displays
Clicking Duplicate Check
button opens pop-up window with editing
and saving options.
Result:
- Clicking
Edit
will reopen the employee entry to change e.g. first or last name. Then saving is possible.- Clicking
Save nevertheless
saves record and will not check for duplicate in the future. Both identical employee entries get a green bullet point, if required fields are filled out. Be careful with this option!- Clicking
Save temporarily
saves record but even if all required fields are filled out, this employee will get a red bullet point. Consequently, this employee cannot be exported to SuccessFactors unless edited again. Then either by correcting a name or by verifying that the record is not a duplicate (by clicking “save nevertheless”), the record will be ready for export.
Background Knowledge¶
The feeder_states for potential duplicates¶
- A record is incomplete: 0
- A record is incomplete but a potential duplicate: 32
- A record is complete: 129
- A record is complete but a potential duplicate: 33
Why should I define exceptions?¶
Often some employees don’t have e-mail addresses. In this particular case, the EMAIL attribute cannot be flagged as a unique attribute within the object configuration as affected employees would not be imported to the system.
To circumvent this situation, the showcase’s first criterion defines an exception to the e-mail address attribute (“nomail@pentos.com”). In this way, those employees receive the non-unique “nomail@pentos.com” address and can be imported without conflicting with the strict check for uniqueness of an e-mail address (“unique”:true).
… and what if we put EMAIL to “unique”:false in Showcase #3?
Then the effect of scenario #1 (two different employees, same e-mail address) would be the same as in scenario #2, where a record is saved but warning of potential duplicate shows. Whereupon “Duplicate check” button displays and saving options are available.
How to import potential duplicates¶
At import, Feeder recognizes potential duplicates.
When using the frontend upload, you may find these under WARN records.
All potential duplicate records can be downloaded by clicking the Warn Records
button.
Feeder will then output a file named ImportWarnings_[id].csv.
When choosing to upload, potential duplicates will be flagged with the feeder_state 32 or 33.
- 32: incomplete potential duplicate
- 33: complete potential duplicate which would be ready for export
Real duplicates cannot be imported and are listed with FAIL where all kinds of error types are aggregated.
These can be downloaded clicking the Failed Records
button.
Feeder will then output a file named ImportErrors_[id].csv.
How to display more information on the existing record¶
The following screens show where and how you can achieve this: