I understand the following:
- Custom Report Types must use the Role Hierarchy
- Reports using Role Hierarchy show all records below the current Role
- Sharing Rules allow records to be shared with roles outside of their hierarchy
Our environment's current setup is
Executive as siblings at the top with
Executive having several children, grandchildren, etc. We have also setup our sharing rules so that every record owned by a user in any role is shared with every user in any other role.
Where my question really comes in is... Do custom report types respect sharing rules? Will a custom report type allow a user in
Admin to view records under the
Executive hierarchy if sharing rules are configured to do so? It seems related this question, but there is no definitive answer on there of whether or not reports respecting sharing rules or not.
We have a custom report type displaying opportunities with a custom relationship. I'm trying to assist with building a report for a user and noticing some of the records (owned by an Admin) are not displaying for the user. This results in records a user can view - through all means: list views, layouts, apis - not being displayed in a report.
I want the user to be able to view the records even though they are outside of their role hierarchy. Does this mean we need to rebuild our hierarchy with 1 role at the top? If so, should our hierarchy be 1 role because we don't want to prevent users from running reports with data owned by users above them in the hierarchy, or are users allowed to go to parent hierarchies by clicking through the Role Hierarchy on the report?
I always assumed reports using Role Hierarchy respected sharing rules - this concept makes sense to me because if a user has access to view the record, there is no reason to exclude it from a report. I also noticed using the standard activities report and saving the role hierarchy at the top in a split hierarchy like ours, I can view activities created by users outside of the
admin hierarchy. Again, I would assume this would translate to the custom report types.
Finally, as the user, I go to the specific record. You'll notice the record is visible. Also, the field
Associate is visible - this is a custom field and why we made the custom report. We wanted to display information from this parent record on the opportunity report.