We are going to start having a manager train a new salesperson (called trainee) to use dynamics. We want all the trainees records to pop up in the views for the Manager that is working with the trainee. Right now, each contact record has a salesperson user lookup field. All the views for tasks, appointments, and some custom entities are essentially, "If salesperson = current user" then show records in the grid, and this is how each salesperson sees and managers their own records.
We are thinking of adding a "manager" user lookup field to each contact record, and we could adjust the view filters everywhere to be, "If salesperson or Manager = current user," then show records. That way, if someone was managing a trainee, we could add them as a manager on that contact, and then in views they would see all their own contacts as well as the person they are managing.
I am just wondering if there is a better design. Could we use some of the sharing functionality in Dynamics to accomplish this? For instance, the Task view is currently filtered for "If current user = salesperson field on contact" then display all the Tasks. I guess we could make a team for each manager, and assign records to that team, but that doesnt seem any different than using a new Manager lookup field to create the filter.
Open to any thoughts or suggestions. Does adding a manager lookup field to contact records, and then adding that field into view filters seem a simple, reasonable, best practice approach?