Forum Discussion

r-roberts's avatar
r-roberts
Data Storage
02-22-2024
Solved

Can't Export PDF in embedded iframe when filters are applied

Hello,

We are currently using an embedded iframe in one of our applications. We programmatically apply filters to the dashboard via query parameters. The dashboard renders and the filters are applied, however, we are unable to export to PDF via the embedded toolbar while these filters are active. Without the filters, the export function works. Looking at the error, it looks like there is an issue with the body of the request, where the "customDashboardFilters" property is still a string and hasn't been deserialized. Are there any ideas on ways around this? 

  • We used to have this issue as well in an older version of Sisense but at least in version L2023.4 this was fixed -- sort of. What we now notice there is that _only_ the filters applied on first ( so the programmatic ones) dashboard load are taken into account for the PDF export, not the ones the user themselves set afterwards.

    Did this get unfixed in more recent versions or are you using an even older version?

    Iris

5 Replies

Replies have been turned off for this discussion
  • We used to have this issue as well in an older version of Sisense but at least in version L2023.4 this was fixed -- sort of. What we now notice there is that _only_ the filters applied on first ( so the programmatic ones) dashboard load are taken into account for the PDF export, not the ones the user themselves set afterwards.

    Did this get unfixed in more recent versions or are you using an even older version?

    Iris

  • Hi r-roberts ,

    When you programmatically apply your filters, are they persisting across refreshes?

    My hunch is that whilst the dashboard filters are affecting the view, they're not updating the dashboard object, and as the pdf export relies on a headless browser session it'll only ever see what the latest dashboard object returns.

    Typically, when a user modifies a filter, a PUT request is sent to the dashboards endpoint to update the underlying object (add filters) for the user, so that the next time they see (or attempt to pdf export) they'll see the new version of the dashboard.

    If you're interacting with your filters programmatically using dashboard scripts, then you can try: 

    prism.activeDashboard.$dashboard.updateDashboard(prism.activeDashboard, 'filters')

    after making your changes to see if this makes a difference.

    Out of interest, any reason you're using iFrame vs. embedSDK? IMO embedSDK is just as simple to implement, but much more powerful.

    Thanks,

    Daniel

    RAPID BI

    [email protected]

    RAPID BI - Sisense Professional Services | Implementations | Custom Add-ons

  • Hello r-roberts,

    Thank you for your question. Can you let us know what version of Sisense you are using? That will help us get you the right information.

    Thank you.

  • Hello r-roberts,

    I wanted to follow up to see if the solution offered by rapidbisupport worked for you

    If so, please click the 'Accept as Solution' button so that other users with the same questions can find the answer faster. If not, please let us know so that we can continue to help.

    Thank you.