Skip to main content
February 9, 2024
Solved

Nested Parameter with Different Dimensions

  • February 9, 2024
  • 1 reply
  • 0 views

Is there a way to have a nested parameter with different dimensions?

Example: If I select Year = 2020, the next prompt will ask me to select a Scenario

The example I saw in the Design & Reference Guide used the same dimension, so I'm not sure if this is possible. 

Best answer by JackLacava

A nested Parameter is basically just a Parameter that will use another Parameter somewhere in its configuration. As long as you can reference "Parameter A" somewhere in the setup of "Parameter B", it doesn't matter what dimension it's working with - you're just passing a bit of text around.

In your case, let's say you have a "ParamYear" that will contain the year, and that your Scenarios have a year in the name (e.g. Forecast2025v1, Forecast2026v3, etc). In the configuration of "ParamScenario", you could have a filter like this:
S#Root.Base.Where(Name Contains |!ParamYear!|)

1 reply

February 10, 2024

A nested Parameter is basically just a Parameter that will use another Parameter somewhere in its configuration. As long as you can reference "Parameter A" somewhere in the setup of "Parameter B", it doesn't matter what dimension it's working with - you're just passing a bit of text around.

In your case, let's say you have a "ParamYear" that will contain the year, and that your Scenarios have a year in the name (e.g. Forecast2025v1, Forecast2026v3, etc). In the configuration of "ParamScenario", you could have a filter like this:
S#Root.Base.Where(Name Contains |!ParamYear!|)

bjornliowAuthor
February 13, 2024

Thanks for the explanation Jack. Unfortunately my scenarios do not have any obvious relation with the year, so I can't use the "Where(Name Contains xx)" filter.

I was able to create a parameter for CubeView templates and that was a work around.

For my future tests, is there a way to make the member filter conditional with IF statements? Eg: If |!ParamYear!| = 2025, Scenario = Forecast, if |!ParamYear!| = 2024, Scenario = Actual

February 21, 2024

This is typically achieved by using Text properties to tag members (in this case, Scenarios), and then filter with something like .Where(Text1 = |!ParamYear!|). Those properties can typically differ by Time period too, so they can change year by year.