About drilldown and $instanceId
When you create a dashboard with Dashboard Builder, you will frequently need to pass context information that identifies a scenario instance or DataView item to display or operate on. Consider, for example, a dashboard with a table containing one row for each instance of a given scenario. In order to display detailed information about a scenario instance when the end user selects its corresponding row in the table, you need to pass the identity of the selected instance to the visualization objects that will display the details.
You can pass such information from one object to another by doing both the following:
Specify that a substitution variable be set to a specified value in response to a specified end-user action on one object.
Use that substitution variable in the data attachment for the other object.
In many cases you can simplify this procedure by using the pre-defined substitution variable
$instanceId. This variable is automatically set to the value of
apama.instanceId (see
Scenario instance table) for the table row that is currently selected (for tables attached to a scenario instance table). If multiple rows are selected,
$instanceId is set to multiple values.
Note: In cases where the end user can select rows of multiple tables at once, you must use user-defined variables instead of $instanceId to pass the required information. If rows from multiple tables are selected, $instanceId is set according to only one of the tables.
You will find yourself using $instanceId frequently in attachment filters and scenario operations. You will see many uses of $instanceId in subsequent sections of this guide.