This week one of my team members and I have been working through cleaning up duplicate data inside of CRM in such a way that we limit the amount of human interaction with the list of duplicates. When you have more than 150,000 records having someone manually merge even 10% of that is 15,000 records. Even if a list is provided of all of the duplicates that's a full time job for the better part of a year.
By coming up with acceptable matchcodes we figured out how to programmatically merge the records so that there doesn't have to be any human interaction. It works really well, except for one point. When you manually merge two records you get a little checkbox that selects any fields that the child record has data in but the parent record does not and then it populates the parent record with those values from the child record. That bit of code is only in the script on that form. It is NOT in the SDK. I'm working on the best way to go through and push all of the fields that the child has but the parent doesn't to make them populate the parent but unfortunately the project I'm on is a little time sensitive and I may just have to hack through it for an entity and go back later and come up with a reusable solution.
Anyway, just wanted to get that out there in case anyone else was wondering like I was until I saw my first record merge through the SDK.
Dynamic Methods Inc.