Location Heirarchy
Terms
Descendant location: A location that is directly beneath another location.
e.g. Brisbane is a descendant of both Queensland and Australia.
Ancestor location: A location that is directly above another location.
e.g. Australia is an ancestor of both Melbourne and Queensland.
For the purposes of locational access, sibling locations are considered to be unrelated.
e.g. Even though Queensland and Victoria share an ancestor (Australia), they can't see eachother's records. You're not allowed to view a location if you have to go up and then back down the hierarchy tree to get to it.
Setup
Name the locations with " : " between each level of their hierarchy, example:
LOC-00001 |
Australia |
LOC-00002 |
Australia : Victoria |
LOC-00003 |
Australia : Victoria : Melbourne |
LOC-00004 |
Australia : Queensland |
LOC-00005 |
Australia : Queensland : Brisbane |
It is not necessary to put users in descendants of locations that they're already in (e.g. someone put in Australia : Queensland already gets all Brisbane access
Results
Main Menu (Location picker)
Users can choose any location they have access to. They can also choose any locations that are direct descendants (not ancestors) of locations that they have access to.
Views/Lists
Users can see records from any location they have access to. They can also see records from locations that are direct ancestors OR direct descendants of locations that they have access to.
Dropdown Fields (And other keyword selection fields)
Users can see keyword options from locations they have access to. Refer to Display options from under Field Options for more information on how to manage options from Ancestor and Descendant locations.
Record Creation
Unchanged. When a new record is created, its SYS_DOCUMENT_LOCATIONS field is set to the user's location.