function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
kwtankwtan 

Dupe Eliminator - Free AppExchange app to Merge Any Objects

A new version of "Dupe Eliminator" v1.1, is now available on the AppExchange. This app is free! 

It can help you clean up all your duplicate records on standard and custom objects, allows you to specify search criteria by field, and gives you the ability to merge dupe records found. 

You can download the app and user guide here:http://sites.force.com/appexchange/listingDetail?listingId=a0N3000000178g7EAA
kwtankwtan
Enhancements in Dupe Eliminator v1.2:
  •  Fixed merging of account records in Person Account enabled org
  •  Fixed error when retrieving records with too many lookup references
 
Enhancements in Dupe Eliminator v1.1: 
  •  Provides integration through custom buttons from detail pages and related lists
  •  Improved search filter that allows comma separated input values for “equals” and “not equals”
  • operators
  •  Enhanced search results to display lookup references
  •  Provides options to selectively clone child records that cannot be re-parented
  •  Allows merging of text area fields
  •  Fixed date and date/time format in search filter
  •  Provides a User and Customization Guide
JAW99JAW99
ProblemComponentDetail 
searchmergetest.testSearchMerge()

Apex Classes(01p400000004fIQ)

 

 

System.NullPointerException: Attempt to de-reference a null object
(dupe_eliminator)
 
Message Edited by JAW99 on 09-28-2009 12:58 PM
gleishousegleishouse

We are currently evaluating this tool to merge cases. Background is, that a lot of duplicate cases are automatically created using the EMail to Case feature. This means one of our main requirements is to merge cases including emails. This does not work using your tool unfortunately. Can you please check why this does not work, as this is very essential for our organization. Can you please provide a fix or workaround as you are promising to merge all related objects.

 

Thanks and regards

gleishouse

kengkeng
Can u clarify what error are u getting? thx
gleishousegleishouse
Hi keng, unfortunately there is no error. The related emails to the case are just gone... They are not copied over or remapped to the the new master case record. Would be great if you can provide a solution for this!
kengkeng
I just tried merge cases with emails (on Activity History related list),  the emails got reparented to the surviving merged record.  Not sure why it didn't work in your org.  If u have a developer or sandbox org, i can take a look at ur setup.
gleishousegleishouse

Thanks for your efforts! With activities attached with cases merging works fine.

But we have an additional (standard) related list called "Emails". When a case is automatically created via an email (using the email to case feature), the system creates the case record and lists the email which created that case visible only in the "Emails" related list. This initial email is not listed in the "Activity History".

 

 

Emails related List

 

 

As this email-to case feature creates a lot of duplicate cases in our system, we want to have a merge tool which enables us to merge duplicate cases including the emails. This is essential for us.

kengkeng

Ah, I see what is causing the problem.  There are 2 issues here.

 

1) The EmailMessage record is not an updateable object.  That means we can't change it to a different parent during the merge process. The workaround is to create new copy of the EmailMessage and assign it to the surviving Case records.  This can be done by selecting "Clone non-reparentable child records"

 

2) However, there is a bug in the code that prevents the EmailMessage object from being cloned now.  I have a fix that seems to solve the issue.  I will have to upload a new version of the app to fix it.

 

If the clone option is acceptable for your use case, u can install the new version and try it out once i have published it.  

 

 
gleishousegleishouse

Hi keng!

 

this would be a great enhancement! If this fix can be provided, this was the best salesforce support experience we as company has made! :smileyvery-happy:

Looking forward to test your fix! Thank you very much for your great support!

 

Just an additional question. Is it somehow possible to delete these orphaned emails after an email has been copied over to the new master case?

kengkeng
Yes, the original email will be cascade deleted from the merged case.  Also, there could be attachments from the emails, currently, they aren't being copied to the new emails.  I need to make some more changes to fix that. 
kengkeng
A new version of Dupe Eliminator app have been uploaded.  Please try it out and see if it fixes the problem you have when merging case w/ emails.  thx
EdgewareEdgeware

Hi Keng,

 

I installed your latest version last week (3rd March 2010), version 1.3.

 

I set the master case as the first one in my list, and it deleted all the emails except the email from the middle case I had selected.

 

I had selected it to clone non-reparentable items

 

Its a great app, just wish the email copying/cloning would work nicely. 

 

Kind Regards

Matthew

 

EdgewareEdgeware

I realise now, when I click, the clone button, it did not bring up the other tick boxes, I didn't notice this, and continued on, and of course it didn't work.

 

Regards

Matthew

kengkeng
glad to know that it's working for u
JAW99JAW99

mergerecordtest.testMergeAccount()Apex Classes(01p400000004jlI)dupe_eliminator.MergeRecord.MergeException: Cannot clone more than 10 child relationships:

 

 

Install fail continues.

kengkeng
the test that came w/ the app causing problem when it's testing the code during installation.  There are too many child relationship on acc in ur org.  I will have to modify the test to make that work. Will get that fix soon.  thx for reporting the problem 
JAW99JAW99

OK.

Also got this error:

 

searchmergetest.testSearchMerge()Apex Classes(01p400000004jlQ)System.NullPointerException: Attempt to de-reference a null object
(dupe_eliminator)


External entry point

 

kengkeng
Could u try the option that ignore test failures during installation?
JAW99JAW99
Install succeeded. Will begin trying it out!
JAW99JAW99
Commas in the filter condition to act as "or" filter are not working.
kengkeng
can u provide details on the filtering, e.g. what fields and values are u filter on?
JAW99JAW99

Conditions might be:

Account contains "morg"

Email not equals "3"

First Name starts with "j,k"

 

 

kengkeng

oh, or filter only works with "equals", "not equal to", "includes" and "excludes" operator  as described on the UI

 

  • For "equals", "not equal to", "includes" and "excludes" operator, you can use "or" filters by entering multiple items in the value column, separated by commas

 

MaryLouMaryLou

Hi,

 

I've just downloaded the Dupe Eliminator in Professional Edition and I've been trying to set up the Merge Opportunities button on the related list in the Accounts object as described in the User Guide.

 

However I can't get it to work. I've copied in the formula for the button content exactly as in the guide.

 

But when I hit the button it comes up with the following Visualforce error:

"Page SearchMerge does not exist"

 

Is there something I'm doing wrong? Can anyone help???

 

Thanks, Mary

kengkeng

u need to add namespace (dupe_eliminator__) to the url, like:

 

/apex/dupe_eliminator__SearchMerge?find=true&object=Account&field1=Name&op1=contains&value1={!Account.Name}&field2=AnnualRevenue&op2=not equal to

&limit=15&hideFilter=0&hideHeader=0&hideSidebar=1

 

MaryLouMaryLou

Perfect, that works now thanks!

MaryLouMaryLou

Sorry, I've got stuck again!

 

I'm now getting an error message when I try to merge records from a custom object:

"SOQL statements cannot query more than 20 different parent types."

 

Does the Dupe Eliminator work on custom objects? Or is there someting else I'm doing wrong?

 

Thanks,

Mary

 

kengkeng

Hi,

 

Are you from HRG Clone 4?  I am getting the error notification from the app originated from that org.  Anyway, the app does support custom object.  Which particular custom objects are you merging?  Does it have many lookup relationships? It might have hit the system limit of SOQL query when trying to figure out all the child records that it needs to reparent.

MaryLouMaryLou

Yep, that's me!

 

We do have 23 lookup relationships so that will be the reason. Is there any way to get around this other than removing some of the lookup fields?

 

Thanks,

Mary

kengkeng

Please email me at kwtan@salesforce.com about the steps that u did to get the error and if possible grant admin login access and provide the records that u are merging.  thx 

pindypindy

Hi Keng,

 

I have been using Dupe Eimilnator for the past week to merge Cases and I think it's an excellent tool.

 

So, I'd like to make the below enhancement requests:

 

  1. Merge Settings workflow - make Merge Settings (see image) its own separate step in the workflow - for example have it on a separate screen to increase the chances of people remembering to enter their desired settings. (I find myself sometimes clicking 'Merge' and only then realising that I had meant to clone the email messages).
  2. Saved Searches - Ability to create something sort of like custom views or reports which you can save and then run whenever you want in the future.
  3. Visual Cue - when I click 'Find' after setting the criteria on the initial Find Record screen there's no real visual cue to indicate that my request is being actioned. Some sort of loading-type notification would be nice.
The above items are in order of priority for me - i.e. 1 is High; 2 is Medium; and 3 is Low.
Thanks heaps for a great tool,
Andrew

 

ZekaZeka

Hi, i have such an error while installing Dupe Eliminator:

 

searchmergetest.testSearchMerge()

Apex-Klassen(01p20000000AXZu)System.Exception: Assertion Failed: Expected: Accountname, Actual: Account Name
(dupe_eliminator)
External entry point

Can somebody help me?

ZekaZeka

PS: This error appers only if I change the language from english to german. The older version 1.2 worked fine, is it possible to setup an older version of  "Dupe Eliminator"?

skaluvaiskaluvai

Is there anyway to log the merged records details in to a log while using Dupe Eliminator?  This will help us to maintain logs. Appreciate your help.

kwtankwtan

Can u try ignore test failures when install the app?

kwtankwtan

Currently there is no way to log merged records

TracMikeLTracMikeL

Nice product but is it possible to make it so when it clones the email email messages they maintain their link to the related activity? currently this is lost.

 

 

kwtankwtan

are u on the latest version 1.5?

TracMikeLTracMikeL

Says 1.4. Where do I get 1.5?

kwtankwtan

My bad...  the published version is 1.4.   I haven't uploaded v1.5 yet.  I will into the issue and get back to you

TracMikeLTracMikeL

That would be great.

 

One other thing we are encountering is that when people try to merge attachments they get insufficient priviledges,

 

Any ideas? The user has modify all on cases.

JAW99JAW99

Sure, please upload latest version! thanks!

TracMikeLTracMikeL

I really need to know what the minimum permissions are for a Case Attachment merge are.

 

Anything but Modify All seems to kick back a "Insufficient Privileges", anyone?

dhmasterkeydhmasterkey

I'm having trouble with the Merge Duplicates button in the help manual:

 

/apex/dupe_eliminator__SearchMerge?find=true&object=Account&field1=Name&op1=contains&value1={!Account.Name}&limit=15&hideFilter=0&hideHeader=0&hideSidebar=1

 

I'm actually trying to do this with cases, but wanted to get the Account working first.  The error I'm getting is:

 

 

 

ERROR
Error: line 1:47 no viable alternative at character '%'
  
INFO
 Query: SELECT Id, Name FROM Account WHERE ((Name like %null%)) ORDER BY Name LIMIT 15
  
dhmasterkeydhmasterkey

Also, I'm using Professional Edition. When a Standard User tries to use the 'Find Duplicates' button, Cases does not appear in the drop down of objects.

 

I'm sure this is a permissions problem, but I can't find where it's linked.