Here’s the requirement. Â I have a forms library to which all users must be able to submit forms. Â Once the incident report is submitted, users should only be able to see their own forms. Â
There are 7 classifications of “incidents”. Â These incident codes and the primary person responsible for handling them are in a separate SharePoint list.
Additional requirements: the forms cannot be moved to another forms library.Â
Here’s what I’ve tried so far.
On the actual form library page, I have the My Documents view set as the default view. Â I’ve disabled the save this view and view selector menu in the Miscellaneous section of the Edit Web Part section.
I added a second web part of the library to the page and set target audience to the VP & Facilities manager who need access all forms… this web part has the All docs view.
However, I began to wonder if it would be better to create a Web part page to show these views. Â So on the first page add 4 web parts. Â the first web part is the form library with My Documents view using the current user filter (2nd web part) to display forms only to the logged in user. I then added a 3rd web part (the All Documents view of the forms library) and connected it to a SharePoint List Filter web part. Â This filter uses the external list containing the Incidents codes and the person responsible for each code. Â The filter user the Incident code field from the list (the user can select it right now), and the library is then filtered to only show forms of that Incident Code. Â
What I’m wondering is how to set the audience on the 3rd/4th web part? If the incident code is Employee Accident for instance, only the worker’s comp rep from HR and the VP for Admin Services should see these forms. I can create SharePoint groups for each incident code which could be used for Audience targeting.Â
Would it be better to create a separate web part page for each group? or is there a way to conditionally target the result based on the Incident Code selected? (it would need to be OOTB or maybe using JS link as I am not a developer and don’t have access to one).
Any thoughts/assistance would be greatly appreciated.
?width=750
Not sure if you had this resolved but here are some thoughts .
If your filter field for handler is a multi-person field it should still only render the items where that persons name is listed. I know it more difficult to do that with groups but you are on the right path. You could add the group to the item, and then have the filter show based on the group (membership ). That way you don’t need multiple Web parts and technically one person could see items from two groups if they were listed in both.
As to your original question, you could have simply connected two Web parts together where one would show results based on the filter of the previous one.
Also you should have been able to achieve the viewing without using audiences but metadata. Have you considered using the Department on the user profile?