Variable Priority
Dashboard supports multiple levels of variables, allowing for flexible and precise configuration. Variables can be defined at different scopes- from global settings to individual users- and the system resolves conflicts based on a defined priority order.
Variable Priority Order
When multiple variables with the same name/key exist at different levels, the system uses the following priority (from highest to lowest):
User-level variables – Granular level, defined per user basis. These have the highest priority and override all other variable types. User Variables
Role-level variables – Defined for specific roles, these variables apply to all users with that role. Role Level Variables
Organisation-level variables – Applied to all users in an organisation.
Global variables – These are the broadest in scope and are applied to all users system-wide. Global variables are ideal for general configuration defaults. Variables
How Variable Resolution Works
If a variable is defined at multiple levels, the system will always use the value from the highest-priority level available. For example, if a variable is defined globally and at the user level, the user-level value will be used. This structure ensures flexibility while maintaining clarity and control over how variables are applied across the dashboard.
The Organisation Context of Variables
By “Organisation Context” we are not referring to the Organisation Variables but rather which Organisation all types of variables (User > Role > Organisation) will be derived from. This isn’t as simple as “I am viewing a chart in Organisation 2 so all the active variables are derived from Organisation 2” largely due to Data Restriction and Security.
Variables do not fallback to parent Organisations they fallback to Global
Each variable context will only ever have the User, Role, Organisation variables of a single Organisation. If a variable is not present within any of those variable types then Global Variables will be checked.
Data Objects are always within their original Organisation Context
Data Objects defined in Organisation 1 can appear in a chart within Organisation 2 but it would resolve any variables within its configuration from the Organisation 1 context. This is mainly to ensure that any Data Restrictions placed upon that Data Object are retained.
The above is true for Linked Data Connections Linked Data Connections - BETA as well but you need to keep in mind that they allow Data Objects from multiple Organisations to be within the same Data Connection. Any Data Objects inherited from Organisation 1 will be within that context but Data Objects that have been added to the inherited connection in Organisation 2 would resolve their variables in the Organisation 2 context instead.
Data Connections are always within their original Organisation Context
A Data Connection's configuration will always link back to the Organisation Context of where that Data Connection was defined. For Linked Data Connections it is the Organisation Context of the Parent Connection that applies. This means that variables in Organisation 2 will not replace variables within an Organisation 1 Data Connection even when you are viewing Data Objects from that connection in an Organisation 2 Category or using a Child Connection defined in Organisation 2.
Chart Variables are within their Data Organisation Context Not The Category Context
Variables used within the non-data aspects of a chart’s visualisation (e.g. title, subtitle) are replaced within the Context of the the Organisation the Data Connection in use is from. If you are using a Data Connection from Organisation 1, the title etc will be replaced based upon variables within Organisation 1 even if the chart itself if being viewed within an Organisation 2 Category. For Linked Data Connections, the Organisation Context of the Child Connection is NOT the Parent Connection’s Organisation but the Organisation where the Linked Data Connection resides i.e. A Chart using a Child Connection defined in Organisation 2 whose Parent Connection is from Organisation 1 will be within the Organisation 2 Context when it comes to Chart variable replacement