This is a migrated thread and some comments may be shown as answers.

Stop reloading of the report when expand/collapse group

1 Answer 162 Views
General Discussions
This is a migrated thread and some comments may be shown as answers.
Hristo
Top achievements
Rank 1
Hristo asked on 13 Dec 2016, 11:56 AM

I have .trdp report designed in the Telerik Report Designer and displayed with html5 report viewer with REST service.

Initially the report is loading only the group headers and when you expand one the whole report is reloading to get the rows in the group (same for collapsing).

Is it possible the report to load all the data at start, not only group headers, and the expand/collapse to only show/hide the rows html?

1 Answer, 1 is accepted

Sort by
0
Accepted
Stef
Telerik team
answered on 13 Dec 2016, 02:16 PM
Hello Hristo,

In general:

  1. The viewer has a client-side ReportSource, from which we extract the string description of the report (relative path to a TRDP|TRDX file), the assembly qualified name of a report class (<namespace>.<report_class>, <assembly_name>) or custom string (almost anything can be included with respect to REST limitations for used characters and size of the message).
  2. The reports string description is submitted to the server and it is handled by the Reporting REST service's Resolver. The service's default resolvers can handle a relative path to a TRDP|TRDX files or an assembly qualified name of a report class. Anything else requires you to create a custom resolver that returns a server-side ReportSource object on its own.
  3. Once the Report resolver returns the server-side ReportSource object, the viewer submits the Parameters collection of its client-side ReportSource. This Parameters collection is applied as the server-side's ReportSource.Parameters collection.
  4. Next, the reporting engine starts processing the report, means the report events fire, expressions are evaluated. At that moment the server-side ReportSource.Parameters collection is mapped to the report's ReportParameters collection - where Name properties (case sensitive) are the same, values are set for the report parameters.
  5. Finally, the report is rendered and paged in the requested format (HTML for web preview, PDF for export and etc.), and the content id returned to the client(viewer).
    Also the content is cached on the server, and if the client requests the same report, with the same set of parameters, in the same format and state, the rendered pages will be taken from the cache.


Reports are processed and rendered with the whole data at once. The ToggleVisibilityAction causes items/sections to (not) be rendered, equivalent to setting their Visible property to true(false). By changing clicking the item with the set action, you change the visibility of elements, which request the report to be re-rendered and the call to the server cannot be avoided.

There are other actions allowing you to load a whole new report on a request (NavigateToReportAction), new page (NavigateToUrlAction), or to display custom UI (Custom action).

Regards,
Stef
Telerik by Progress
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Feedback Portal and vote to affect the priority of the items
Tags
General Discussions
Asked by
Hristo
Top achievements
Rank 1
Answers by
Stef
Telerik team
Share this question
or