-
-
Notifications
You must be signed in to change notification settings - Fork 825
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CRM-17275 fix import class to do a fallback external identifier check #7427
Conversation
eileenmcnaughton
commented
Dec 11, 2015
- CRM-17275: Import skips silently if the import has an external identifier and the existing contact does not
jenkins retest this please |
Jenkins, retest this please. |
Tested ext id match and conflict and it's looking good. |
CRM-17275 fix import class to do a fallback external identifier check
/** | ||
* Get the possible contact matches. | ||
* | ||
* 1) the chosen dedupe rule falling back to |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This check is falling back to the default "Unsupervised" rule not the Rule chosen in the Import UI. I added: $checkParams['dedupe_rule_id'] = $this->_dedupeRuleGroupID ?? NULL; to get things to work on my end.
Is that the way this is supposed to work? The import code checks for dupes a number of times. But I've been struggling with inconsistent results. As my importing is based off of my own custom rules.
I can do a PR if indeed the selected Rule should run at this point.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Okay. I'll check that out. It's the weekend and I should stop working. I made two tests here: darrick@9b1470a
the second test fails when external_identifier doesn't match but Dedupe does match. The first test passes when not external_identifier is passed in. My current use case is trying to maintain sync with external data even after contacts are merged on the Civi side.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
oh nice - I guess the thing that will change with the way things are going is that we would use getSubmittedValue('dedupe_rule_id')
to do the rule ID - but I'd also quite like to combine the 2 separate places where we do do dedupe look ups -
Yes - get some weekend in!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.