Passing a dashboard parameter to DM step

ChrisB
New Contributor
Please let me know what you have done to pass a dashboard parameter to a data unit filter e.g. Entity on a Data Management step.
 
For example, if we have a dashboard parameter |!Selected_Entity!| which stores the entity member selected on the dashboard, using it on the Entity Filter in Data Management (E#|!Selected_Entity!| only works if the dashboard parameter type is a Literal Value with a Default Value set. The default value can then be changed with a business rule with the SetLiteralParameterValue function (this is also the setup in GolfStream).
 
The problem with a literal value parameter type is: where user A selects the entity on the dashboard, but before user A kicks off the DM step from the dashboard via e.g. a button, if user B changes his/her entity selection, the default is changed for everyone, so user A will kick off the step for user B's entity.
 
Trying an XFBR rule to set the default value of a Literal Value Type - it seems you can't pass a variable to the business rule. For example, XFBR(BusinessRule,Function,entity=[|!Selected_Entity!|]) will return the string "|!Selected_Entity!|" and not the value of the parameter.
 
Has anyone passed a different parameter type i.e. that is not a Literal Value parameter to Data Management step successfully before and how did you do it?
2 ACCEPTED SOLUTIONS

db_pdx
Contributor III

Hi ChrisB: you should be able to pass the values to the DM Sequence without needing to use stored Literal Values.  We do this by using common ephemeral parameters within the DM sequences.  These DM parameters are fed the dashboard parameters when a button is pressed (which executes the DM sequence).  Here's a real example:

  • DM Sequence that runs a custom calculate (copies some data between scenarios)
  • DM Sequence uses |!ParamCube!| and |!ParamScenario!| ...amongst others.  These are used throughout our DM sequences and are always the same parameters.  Note: these parameters are not defined anywhere within our dashboard maintenance units (they are ephemeral)
  • Dashboard has combo boxes where a user selects these values
    • The dashboard parameters are called |!Cube_SCM!| and |!Scenario_SCM!|.  These parameters are delimited lists not necessarily literal values
  • A Button component, when pressed, executes the DM Sequence
    • This is a Server Changed Task = Execute Data Management Sequence
    • The arguments are, and this is the key:
      • {TheDataManagementSequenceName}{ParamCube = |!Cube_SCM!|, ParamScenario = |!Scenario_SCM!|}

Hope that all makes sense.  Give it a shot and report back.

edit: typo

View solution in original post

ChrisB
New Contributor

Hi db_pdx. Thanks.

We are using a button to select an entity from a member dialog box. I know a value is stored to the parameter, because it is displayed on a label on the dashboard after the user selects the entity.

I have re-looked at it with your guidance as set out and I've realised that the button was not set to Save Data For All Components. It is sorted now! Thank you!

 

 

View solution in original post

2 REPLIES 2

db_pdx
Contributor III

Hi ChrisB: you should be able to pass the values to the DM Sequence without needing to use stored Literal Values.  We do this by using common ephemeral parameters within the DM sequences.  These DM parameters are fed the dashboard parameters when a button is pressed (which executes the DM sequence).  Here's a real example:

  • DM Sequence that runs a custom calculate (copies some data between scenarios)
  • DM Sequence uses |!ParamCube!| and |!ParamScenario!| ...amongst others.  These are used throughout our DM sequences and are always the same parameters.  Note: these parameters are not defined anywhere within our dashboard maintenance units (they are ephemeral)
  • Dashboard has combo boxes where a user selects these values
    • The dashboard parameters are called |!Cube_SCM!| and |!Scenario_SCM!|.  These parameters are delimited lists not necessarily literal values
  • A Button component, when pressed, executes the DM Sequence
    • This is a Server Changed Task = Execute Data Management Sequence
    • The arguments are, and this is the key:
      • {TheDataManagementSequenceName}{ParamCube = |!Cube_SCM!|, ParamScenario = |!Scenario_SCM!|}

Hope that all makes sense.  Give it a shot and report back.

edit: typo

ChrisB
New Contributor

Hi db_pdx. Thanks.

We are using a button to select an entity from a member dialog box. I know a value is stored to the parameter, because it is displayed on a label on the dashboard after the user selects the entity.

I have re-looked at it with your guidance as set out and I've realised that the button was not set to Save Data For All Components. It is sorted now! Thank you!