Question

I'm trying to build a simple Garage Management System to see what spot someone is assigned. So I have the following lists:

  • Garages
  • Levels
  • Spots

Spots has a lookup column to Levels, Levels has a lookup column to Garages. Therefore, Each spot has a specified Garage.

Now I have been asked to assign a Garage Manager to each Garage. That Garage manager should be able to manage everything about that Garage, but not any other garage.

What would be the easiest way to filter all the list to a specific garage?

Was it helpful?

Solution

If you have a small amount of garages, this may be a useful solution for you.

Create a list for each garage
Example List Names:
   Garage01
   Garage02

Create a column for Assigned To (or just rename Title field)
Create a column for Spot (either choice or lookup to your list)
Create a column for Level (either choice or lookup to your list)

Create a sharepoint group for each garage
Example Group Name:
   Garage01Managers   -    Corresponds to Garage01 list
   Garage02Managers   -    Corresponds to Garage02 list

Create a sharepoint group that will have read-only for all garages
Example Group Name: GarageReaders

Break inheritence on each garage list and specify the rights for the following groups
   Example for List Garage01
      Make Garage01Managers Contribute
      Make GarageReaders Read
Remove all other Garage Manager groups from the list

Now you can just add/remove managers for corresponding lists through SharePoint groups. If you need someone to have read-only view of all garages, just add them to the GarageReaders sharepoint group.

Then just have a page that has a link to each Garage.

OTHER TIPS

  1. As OOTB solution, I suggest doing the following:

    • Create a view for each Garage (Filtered by Garage ID/Name)
    • Create a Promoted Links list.
      • Garage Name, Graghe View URL
    • In Promoted Links list, add a new item for each Garage and its related Garage view URL.
    • In prompted list item, set the permission for each item (Garage) to its Garge Manger.
    • Now every Garage Manager should see only his garage block.

enter image description here

Alternative solution is to use Query String Filter Web Part but it will require setting each query string with its corresponding Garage name plus the Promoted links list or custom list to manage permission based on each manager.

  1. Use 3rd party tool like Infowise to can manage permission based on views.

  2. Using code, try to develop a custom web part that checks on the current user and shows its related items based on garage name.

Licensed under: CC-BY-SA with attribution
Not affiliated with sharepoint.stackexchange
scroll top