Solver supports dimension hierarchies (i.e., dimension attributes and trees) on a single dimension. I have clients with hierarchies based on combinations of dimensions. When these hierarchies are important enough, I add the combinations as separate, additional dimension(s). This is simple when you have access to the sql server of the client’s accounting system.
Adding additional dimensions, however, makes building input forms more complicated, opens the risk of inconsistency in data storage and can become unwieldy depending on the number of additional dimensions added. Also, unlike sql server, cloud accounting systems like Sage Intacct and Dynamics 365 BC don’t make it easy to create a unique list of combinations to integrate the unique codes of the combination dimension(s).
Enter the Stargate dimension. The new Stargate dimension used in the Solver QuickStart sparked in me the idea of virtual dimensions. Stargate is basically a virtual dimension created from the Category attribute of the Account dimension. With the assistance of Chase Sariaslani, we created a business rule that queries and inserts unique code combinations into a virtual dimension and then updates the underlying Fact records with the virtual dimension code. I’ve implemented this at two clients so far and it is working well.
Virtual dimensions also make migrations to Cloud accounting systems easier as you can keep the Dynamics-GP Account String or the Dynamics-SL Subaccount as virtual dimensions. This reduces the required report and input template updates required for the migration.
Virtual dimensions significantly increase the dynamic reporting capabilities of Solver. Virtual dimensions can be created from:
dimension combinations
specific digits from a dimension code
combinations of specific digits from different dimension codes
created from aggregates of dimension attributes (including combinations from different dimensions)
They can also be used to create dimension codes required for cascading parameters as described in this support post (Cascading-Filters).
Because the update rule is not run continuously, I include the virtual dimensions in the Optional fields section of the storage configuration in input forms.