Identifying common objects between two or more applications

Certified Associate Developer

Is there any way to identify common objects between two or more application.

We have more than 30 unused applications and many(more than 2000) unused objects.

We are planning to delete all the unused application and the objects which are part of those applications.

So we need to delete the objects in bulk, but there are some used objects which are part of those unused application.

For this I need to find the used objects in unused application by giving the active application name.

Is there any way to do this?

  Discussion posts and replies are publicly visible

  • 0
    Certified Lead Developer

    This is a big undertaking that you must do very carefully (obviously).  In *absolutely all* cases I'd strongly recommend you make a backup export of any objects before deleting them - perhaps by adding these objects to a brand new application first.  I don't know of any *automated* way of comparing common objects between different applications, but I don't know why that would stop you from doing what you need here.

    As a starter hint:  The "unreferenced objects" functionality in an existing App Package shows objects that are not used anywhere (other than in an application).

    Also as a reminder: deleting an application does *absolutely nothing* to the objects it contains - so if there are cluttery unused applications then those can, generally, be deleted safely without worrying too much about the objects in them.  One tactic you could take, though, is before you delete any non-empty application, add its contents to a special new application you create just to store the objects in deleted apps - so one-by-one, add the objects from Unused App "A" to your new app, then delete Unused App "A", then do the same with Unused App "B", and so on.  At the end your "deleted app objects" app will hopefully contain the objects from all the apps you deleted - useful at least for tracking purposes.

  • I echo Mike's sentiments on doing this very carefully and creating a backup export, if you ever have to delete any objects. You may find that simply removing them from the application and deleting the application container (this is Chris-approved) satisfies your cleanliness needs unless you are seeing server performance related directly to the small amount of disk space these might take up?

    30 apps and 2000 objects should not much stress on the environment itself.  Our Dev environment has 470 applications with 300,917 objects and it runs with no issues.

    If you do have to delete objects for some reason, in this case would recommend smaller batches, to make things easier if you have to recover an object later (easier for import than bringing back all 2000 objects for 1).

    In my situation, I steer away from these deletion activities as, there have been a number of times I've had to go back and locate an object that has not used for some time, they basically take up no disk space (except documents themselves), and Application Bundles can provide enough cleanliness and organization to make large amounts of objects easy to handle.

  • 0
    Certified Associate Developer
    in reply to Mike Schmitt

    Thanks Mike for quick reply. Yes, we are taking the backup for every deletion.

    My plan is to delete objects bulk inside in an unused application before deleting the application.

    Here my plan is, If I can find the common objects between active and inactive(unused) application, I can disconnect the object referencing by making some changes or creating new objects.

  • 0
    Certified Associate Developer
    in reply to Chris

    Thanks for your reply Chris. 

    Even we are also planning to do this activity with smaller batches.

    Ofcourse, there is no issue to have many unused objects and applications. Sometimes we are referencing the unused objects in the active application by mistakenly due to some similarity in the object name.