Visual Guidance about available DSS Variables for Logic Control

There are places in DSS that allow additional control over logic flow IF I know the proper DSS syntax and available DSS variables - not the project or global variables but internal DSS variables. My current process involves digging through the documentation which is not always clear. If there was a dropdown list, side ribbon, or other visual feature that would enable me to quickly see what is available in DSS, this would help me to know if I need custom python logic for what I am trying to achieve or I can leverage DSS itself.

Example: 

When defining the condition that determines if a step will run in a Scenario, you can enter in some syntax like scenarioTriggerParam_something == 'my value'. It is not very immediately obvious what variables I might have access to. I understand there may be some custom user defined parameters for which this may be challenging, but also imagine there are some standard system variables that may exist regardless of custom logic.

auto_complete_available_variables.PNG

4 Comments
AshleyW
Dataiker
Dataiker
Status changed to: Needs Info

Hi @tim-wright,

Thanks for the suggestion! You're right that it's tricky to write these conditions if there's no indication of the internal DSS variables that you have access to. This is something that we can add to the UI. 

As a temporary workaround, there's a list of available variables 'hiding' in the Reporter section of the Scenario settings page for your reference. If you pick any of the reporters there, a list of internal variables will show up like ${scenarioName}, ${scenarioRunURL}...does what's there get close to what you were thinking about?

 

Ashley

tim-wright
Neuron
Neuron

@AshleyW, cool tip. In terms of content, it's definitely cool to know those exist. That definitely gets close to what I was talking about. I had originally thought some sort of autocomplete in the "condition required" input could be useful - though I'm not sure how feasible this is. As it sits, the UX is a bit wonky, but definitely workable.

Two related comments:

  1. I am aware that there are some other variables (like scenarioTriggerParams and possibly others) that are available to steps in the scenarios. If the list of variables in the reporter section is not exhaustive it might be useful to call that out to avoid being unintentionally misleading.
  2. For some variables that may take one of several pre-defined values (e.g. 'SUCCESS', 'ERROR', etc.), it is not immediately clear what values are permissible - it usually requires digging through documentation. Could be good to somehow provide context or link to documentation. (two examples off the top of my head would be ${triggerType} and ${outcome})

 

AshleyW
Dataiker
Dataiker
Status changed to: In Backlog

Hi @tim-wright ,

I've added this to our backlog. We have some requests for more comprehensive documentation of these, and it's even better to have this type of contextual help available from within DSS itself!

Ashley

rikro
Level 3

Hi Ashley,

it would be great to see such a feature!

Especially as some existing variables (like ${dssUserLogin}) do exist, but are not shown in the scenario reporter variables (and are, in addition, case-sensitive).

Richard

Public