1

I'm developing a website and, as part of the specifications, I need to have a number of documents in a central document library, then only display a subset of them to the user at any one time depending on which are relevant. Let's say that I need to filter out the ones for which the value in the GUID column matches a certain value. I know that it is possible to make a static filter, but I would like to be able to filter it dynamically (ideally using JavaScript) so that the documents relevant to each user can be pulled out when needed. I am using SharePoint Foundation 2013 and am also restricted from using non-OOTB web parts/apps. Is this possible without a lengthy workaround?

Other sources have suggested using a data view web part or a filter web part, both of which appear to be unavailable in the Foundation version. It has also been suggested that I should be able to filter a column using the default UI, and using a placeholder value that takes the value of a token from the URL, but it is also unclear as to how to do this.

2 Answers 2

1

You can filter list dynamically using Query Strings. The same strategy you can apply for creating dynamic experiences as you want

Sample syntax is

https://siteurl/Lists/ListName/AllItems.aspx?FilterField1=LinkTitle&FilterValue1=somevalue

Change LinkTitle to the metadata column name
Change somevalue to the value you want to filter up on

3
  • Does this look like valid syntax? AllItems.aspx?FilterField1=GUID&FilterValue1=67f9e1f8-69d0-44ed-9292-ab2b3898a324 I tried this but it's filtering out everything when I wasn't expecting it to. Oct 24, 2017 at 13:33
  • You can create the URL - First open AllItems view and then filter using the out of the box way. Then copy the URL from browser address bar and use it Oct 24, 2017 at 15:52
  • Unfortunately the URL doesn't change when I set filters that way, it just remains the same and the filtering appears to happen behind the scenes. Oct 25, 2017 at 7:11
0

Perhaps you could put users in to Sharepoint user Groups, then find a way to filter on the documents depending on which user group a user is in. You'd need to label all of your documents according to which Groups should see which documents.

You could tag/label your documents using meta-data (if that is available with the Foundation version of SP?). This blog http://sharepointmaven.com/tag/metadata/ has lots of useful info on Meta-Data.

OR, maybe it is not something that your requirements would permit, do something simple like adding a 'Category' field - then labelling the documents according to which category they fit in to. Then configure views based on this.

e.g.

CATEGORY - Engineering, Human Resources, Quality, Manufacturing, Health & Safety. The views you set up would then filter based on the value (e.g. Engineering).

1
  • Foundation does support metadata, and it does support the filtering of documents by metadata, by typing in a fixed value to the UI (and this is what I'm doing currently). I can't find a way to change that filter value dynamically, however. So extending your example, I can't find a way to make it display Engineering documents at one point in time, but then change it to display Quality instead later. Oct 24, 2017 at 13:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.