Multidimensional Modeling w/PQ – Project Planning
Unbelievable flexibility is possible with TBM. Let's see how.
Table of Contents
Terms and Abbreviations
Introduction
In Table Based Multidimensional Modeling we discussed how TBM gives modelers a straight-forward process for incorporating, essentially, unlimited dimensions in a model. While that alone sets TBM in a class by itself in terms of flexibility, adding dimensions is a relatively rare event when compared to adding items to dimensions.
In my experience, adding periods or products to a model is a given.
In traditional modeling, this could require the modeler to manually make changes to several worksheets or reserve seas of formulas in anticipation of what the maximum number of items might be for any dimension that might change. Those seas of formulas bloat model size. They can also cripple model performance and make navigating and understanding models more difficult. Wouldn’t it be great if models could auto-extend, without modeler intervention, to accommodate any number of items for any dimension everywhere the model is impacted without project bloat?
With TBM and PQ this is easy, assuming you have the skills. So let’s acquire some skills!
Define Requirements
Before starting a project, I create a plan with our goal, resources, and requirements.
Our goal is to automate extending a multidimensional table-based model (MD TBM) when clients decide to add items like more products.
Our resources include the model discussed in Table Based Multidimensional Modeling, Power Query, and my PQ snippets library from which we will copy some reusable functions.
To accomplish our goal requires:
1)?????A place for users to enter the number of items needed for changeable dimensions
2)?????A means for taking those inputs and expanding dimension input tables
3)?????A means for combining items in all permutations and expanding calculations as needed
领英推荐
Define Deliverables
From the requirements we define, conceptually, what needs to be delivered.
1) The requirement to have a place for user entries was met in the original, non-PQ model which has named inputs for:
2) For the requirement to use inputs to expand tables we will create:
3)?For the requirement to combine all tables we will create PQ queries that:
Course Outline
I’m going to order this course from easiest and most impactful to most difficult and least impactful.
1.?Project Planning
2.?Permutations
3.?PQ Calculations
4. PQ Functions
5.?Extending Entities
6.?Extending Associations
This concludes Project Planning. The next section is creating Permutations.
Microsoft MVP | BXL | 5g Modeling Founder
3 年Kris R - Thanks for alerting me to the typo. ?? Much appreciated.