Удалить дубликаты из пользовательских объектов в 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.

Другие вопросы по тегам