We have a requirement to maintain every data(even deleted also) for approx 10-15 yrs with its Audit history. We have Salesforce-shield is enabled so maintaining Audit data is taken care of by it. However, for soft delete, we are checking ways. Here are certain problems with keeping something soft-deleted.
Assumption - On each object, we'll have is-deleted checkbox, which means its deleted.
- How we'll remove the permission of deleted records if we are having Master-Details(and I am deleting child record)?
- How we'll remove the permission of the deleted record if we shared by Roles? It'd still be visible to higher roles.
One option is to have all programmatic sharing, but we cant keep manual/programmatic sharing for all records for performance issues.
PS- This is for compliance requirement, so requirement can't be changed.