Have you ever been designing the Planning Analytics Workspace front end and wanted your users to automatically have populated their previous selections? So, if a user had chosen Sydney from a branch dimension and Travel accounts from the P&L, that when they opened the same report the next time, it remembers Sydney and Travel accounts. Sometimes as developers we need to go a bit further and personalise the PAW User Experience. This is a great way to achieve that!
To achieve this, I usually create a User Parameters cube. End users will be able to define the elements they would like to use, without the assistance of an Administrator or custom reports. This allows them to customise their own experience.
Example to Customise the PAW User Experience by Saving End User Selections for Next Time
In the example below, we’ll assume an end user needs to forecast Expenses Accounts by Category for the Branch they belong to. Then, instead of having to customise the entry view each time (or create a multitude of input views), we will personalise the user experience, so the entry screen will remember their most recently used parameters.
To do this we need to create a User Parameters cube, a measures dimension for that cube, a list of parameters and some picklists. Then we will write some rules for that new cube before illustrating its use.
The Measures Dimension
For each item a Default element is required (to prevent null values), a Selection element to allow for picklists, and the Final element, which represents their selection (or Default if no Selection was made).
Picklists
The Selection options available to the users should be defined as picklists, based on the dimension elements that they represent. I’ve created the picklist cube to define them:
User Parameter Item Dimension
This is used to store multiple parameters for a single user, rather than stacking them up in measures. This will be a simple dimension that containing the names of items that are to be stored. For example, Account or Branch in our example.
The User Parameters Cube
You will need a cube to store the user parameters that are selected. This will need to contain at least the }Clients dimension (this is how you will assign the selection to a user), and the Measures dimension (above). I’ve also included the User Parameter Item dimension to allow for future expansion.
Rules to Enable PAW Personalisation
The rules are simple: if the user selection is blank, use the default, else use the selection. The default values for each Item contain a hardcoded value for simplicity.
Illustration of PAW Personalisation
To illustrate how you can personalise the PAW user experience, I’ve added the Selection measure as single cell visualisations from the User Parameters cube. Initially, when they have not made a Selection, the Default values are in use (No Branch and No Account), as defined by the rules.
Once a user makes a Selection, it will remain as the selected value until the same user changes their selection.
MDX Brings it All Together
Note the fields of the selection reference the required Item, and the Selection measure. It is important to remember to define the }Clients dimension to dynamically retrieve the current user.
The MDX statement to retrieve the current user:
STRTOMEMBER("[}Clients].[" + USERNAME + "]")
And the MDX statements referencing the User Parameters cube for the user selection of Branch and Account:
STRTOMEMBER("[Branch].[Branch].[" + [User Parameters].([User Parameter Item].[User Parameter Item].[Branch],STRTOMEMBER("[}Clients].[" + USERNAME + "]"),[User Parameters Measure].[Final]) + "]")
TM1DRILLDOWNMEMBER({STRTOMEMBER("[Account].[Account].[" + [User Parameters].([User Parameter Item].[User Parameter Item].[Account],STRTOMEMBER("[}Clients].[" + USERNAME + "]"),[User Parameters Measure].[Final]) + "]")} , ALL , RECURSIVE)
Do You Want to Personalise Planning Analytics Workspace?
The requirements for User Parameters are often driven by very specific business requirements. This example shows the core concept to allow end user to customise their PAW Experience.
We love talking about TM1 so please feel free to reach out to me below!