Hello, does anyone have suggestions on accomplishing the following?
I have 2 identical dashboards that work perfectly
Dashboard "A" refreshes every 100s with underlying scheduled searches. For the underlying XML modules, useHistory is set to true and autorun="true"
Dashboard "B" has a timerangepicker and uses the same scheduled searches but useHistory is set to false and autorun="false"
Is there any way to put a dormant timerange picker on Dashboard "A" that uses a nested redirector module so once the user selects a timerange on the dormant timerange picker, a popup to dashboard "B" is performed with the predefined timerange?
Here's where i'm at w/ the dormant timerange picker on dashboard "A"
<module name="TimeRangePicker" layoutPanel="viewHeader" autoRun="False">
<param name="default">Last 60 minutes</param>
<param name="searchWhenChanged">True</param>
<module name="Redirector">
<param name="url">dashboardB</param>
<param name="arg.earliest">-$search.timeRange.earliest$</param>
<param name="arg.latest">$search.timeRange.latest$</param>
<module name="URLLoader" layoutPanel="viewHeader" autoRun="True">
</module>
</module>
</module>
Would dashboard "B" need the URLLoader module to accept the URL with a timerange selected from DASHBOARD "A" ?
<module name="URLLoader" layoutPanel="viewHeader" autoRun="True">
<param name="keepURLUpdated">True</param>
Yes that would work. Some key parts.
1) You definitely need a URLLoader in Dashboard B. It needs to be upstream from anything that needs to prepopulate from the URL, or use $foo$ tokens from the URL. You want no URLLoader in Dashboard A.
2) pass any args you need from A to B with the Redirector, ie <param>$search.timeRange.earliest$
and <param>$search.timeRange.latest$
3) If autoRun is false on Dashboard B itself, you'll want to pass a <param>True
arg in your Redirector on Dashboard A, to override it.
4) Never nest autoRun. Meaning never have any autoRun="True"
on any module that is itself contained (ie downstream) from any other module with autoRun="true"
. It serves no purpose and has bad side effects. autoRun cascades anyway, which is why it serves no purpose. Also, autoRun="False"
is meaningless and does nothing, trust me.