Удалить дубликаты из пользовательских объектов в Microsoft Dynamics CRM
Кто-нибудь нашел хороший способ слияния или удаления дубликатов, которые есть в пользовательских объектах? В нашем случае у нас есть два пользовательских объекта: история литературы и подписки, которые связывают контакты с пользовательским объектом с именем литература.
Я могу запустить задание на обнаружение дубликатов, но это возвращает тысячи записей, и удаление их по одной в лучшем случае нецелесообразно. Мы хотели бы либо объединить их, либо просто удалить дубликаты. Тем не менее, многие поиски в Google не принесли никаких хороших предложений, кроме "Вы можете написать что-нибудь".
Хорошо, но с чего бы начать? Должен ли я выполнять массовое удаление из задания по обнаружению дубликатов? Должен ли я попробовать написать быструю и грязную программу на C# с SDK? Есть ли способ объединить пользовательские объекты, которые просто требуют магического рабочего процесса вуду?
РЕДАКТИРОВАТЬ: К вашему сведению, в конечном итоге я установил код состояния удаления, используя забавный SQL для быстрого поиска дубликатов:
UPDATE T1 SET DeletionStateCode = 2
FROM New_subscriptionhistory T1 INNER JOIN New_subscriptionhistory T2 ON t1.New_LiteratureId = T2.New_LiteratureId AND t1.New_ContactId = t2.New_ContactId
AND t1.CreatedOn > t2.CreatedOn AND t1.statecode = 0 AND t2.statecode = 0
2 ответа
Вы должны посмотреть на создание массового удаления задания с помощью SDK.
Я не буду с уверенностью говорить, что это единственный или лучший способ, но мы использовали SQL-запросы в базе данных _MSCRM, установив для DeletionStateCode любого дублированного объекта значение 2.