We have a pretty mature org, been going for 9 years and we have well over 3000 reports located in various folders. Now it's time for a cleanup since quite a large bunch of these haven't been run for years. I have identified over 2000 reports that haven't been run for a long time and have marked them for deletion. But a large portion of these reports are used in dashboard components so can't be deleted. And by running quickly over the API description of the Dashboard object, it seems that there is no way to use the fields in the object to filter. LastViewedDate and LastReferencedDate only contain data related to the current user, but I want to know when any user either opened the dashboard or edited it. Is the only way to do this is using the Metadata API? Or is there another way?
1 Answer
Maybe you can figure out which reports belong to dashboard folders by querying:
[select Name, DeveloperName from Report Where FolderName LIKE '%Dashboard%' and DeveloperName IN :listOfReportDevNamesYouWantToDelete]