Hi,
When using drill-down or drill-through in Helical Insight, is it possible to display the target report in a popup/modal window on the current page , instead of replacing the current report?
If yes, how can this be configured?
Thank you!
Hi,
When using drill-down or drill-through in Helical Insight, is it possible to display the target report in a popup/modal window on the current page , instead of replacing the current report?
If yes, how can this be configured?
Thank you!
Hi Jingxiang,
(A) By default, when using Drill-Through in Helical Insight, clicking on the parent report opens the child report in the same frame, replacing the parent report.
However, the child report can be maximized, in which case it is displayed in a popup/modal-style window along with navigation options to go back, front, very initial state. There is also a maximize option though, wherein the child report which gets rendered there can be maximized (Further reading : Right-Click Operations In Dashboard Designer - Helical Insight and Removing Black Background in Maximize Option in Helical Insight Dashboards)
(B) There is also a second option using the Operations feature at the report level (though this is more tedious and requires more work).
You can refer to the following documentation for configuring Operations: Change Report Properties Dynamically using Operations - Helical Insight
Using Operations, you can write custom JavaScript logic to control how the child report is opened. For example, the JavaScript can:
Note: The second approach requires custom JavaScript implementation. It is not a standard drill-through configuration where the child report automatically opens in a modal. The JavaScript needs to be customized according to the parent report, child report, parameters, and URL structure being used.
For example, a basic plain JavaScript approach to open a report in a popup window would be:
function openReportPopup(reportUrl) {
var width = 1000;
var height = 700;var left = (window.screen.width - width) / 2; var top = (window.screen.height - height) / 2; window.open( reportUrl, "HelicalInsightChildReport", "width=" + width + ",height=" + height + ",left=" + left + ",top=" + top + ",resizable=yes,scrollbars=yes" );}
The reportUrl can be constructed dynamically using the clicked value and other required parameters. For example:
var clickedValue = “ABC123”;
var reportUrl =
“REPORTURL&invoice=” +
encodeURIComponent(clickedValue);openReportPopup(reportUrl);
The exact report URL and parameter names will depend on the child report configuration. The above is only a generic JavaScript example illustrating the popup mechanism; it would need to be adapted to the actual report and parameter structure.
Thank you
this link will also help in understanding how to pass filter/parameters name and values in URL : Subject: Passing Filter Parameters When Creating a Sankey Diagram Using an API Data Source in Helical Insight - #2 by helicalforum
Hi,
Is it possible to avoid using window.open() to open the child report in a new browser window? With this approach, the new window may still display browser UI elements such as the address/navigation bar.
We would prefer to display the child report in a popup/modal directly within the current Dashboard page, while keeping the original Dashboard unchanged.
Hi Jingxiang,
Yes, this can be achieved within the existing Dashboard page.
You can use the Right-Click Operations available in the Dashboard Designer. This allows you to define custom HTML, CSS, and JavaScript for the Dashboard.
The approach would be:
<iframe> within the modal.The overall flow would therefore be:
Parent Report → Right-Click Operation → JavaScript → Open in-page Modal → Child Report inside Modal
For example, the HTML can contain a modal with an iframe:
<div id="childReportModal" style="display:none;">
<div class="modal-content">
<button onclick="closeChildReport()">Close</button>
<iframe id="childReportFrame"
width="100%"
height="700px"
frameborder="0">
</iframe>
</div>
</div>
The JavaScript can then control the modal:
function openChildReport(reportUrl) {
document.getElementById("childReportFrame").src = reportUrl;
document.getElementById("childReportModal").style.display = "block";
}
function closeChildReport() {
document.getElementById("childReportModal").style.display = "none";
document.getElementById("childReportFrame").src = "";
}
This keeps everything inside the current Dashboard page. No separate browser window needs to be opened, and the original Dashboard remains available underneath the modal.
The exact JavaScript for capturing the clicked value and constructing the child report URL will depend on the parent report, child report, and parameters being passed.
For reference, the Right-Click Operations functionality is documented here:
Right-Click Operations In Dashboard Designer - Helical Insight
Thank you