Aspose.Slides for Reporting Services: Performance Issue while Retrieving the RPL Report

we have upgraded the window server from 2012 to 2019, we are using Aspose Slide reporting service 17.10 version in our application to retrieve the SSRS RPL report in PPTS format ,after upgrading the server from 2012 to 2019 we are facing huge performance issue. earlier with 2012 web server, it was taking 3 second to download the report with minimum data now its taking more 1.50 minutes to download .

@vikash.kumar,
Thank you for contacting support.

To investigate the case, we need more details. Please share the following:

  • RDL file you used
  • output presentation file

Hi,

PFA of RDL and output presentation file.

Regards

Vikash Kumar Singh

(Attachment Sample 2.rdl is missing)

(Attachment TestKrReport_11_TourBookKoreaOffice_01Nov2023_145134.pptx is missing)

Hi,

I am sharing the sample code which we are using in our application .

using (var pptSteam = new FileStream(outputFileName, FileMode.Create))
{
    var renderer = new Aspose.Slides.ReportingServices.RplRenderer();

    renderer.StartRendering(format, false);

    var page = 1;
    //this cycle iterates through all pages of report
    while (true)
    {
        using (var rplStream = CreateRplStream(page, reportPath))
        {
            //if rplStream is empty then we reached end of report
            if (rplStream.Length == 0)
            {
                break;
            }

            //add report page as slide to the document
            renderer.RenderPage(rplStream);
        }

        page += 1;
    }
}   

renderer.RenderPage(rplStream) : this method taking approx. 2 minutes to execute.

Regards

Vikash Kumar Singh

@vikash.kumar,
Thank you for the code example. Unfortunately, we also need the files mentioned above to check the problem on our end.

We uploaded the the rdl and PPT file but it has been rejected.let me try again.

PFA

(Attachment TestKrReport_11_TourBookKoreaOffice_01Nov2023_145134.pptx is missing)

(Attachment Sample 2.rdl is missing)

@vikash.kumar,
Please zip the files and upload an archive here. Alternatively, you can share links to the files saved to a file storage (Google Drive or Dropbox, for example).

Hi,

I have attached the rdl and PPT file which is requested but it is rejecting every time. Please suggest how I can send the rdl and Output file .

Regards

Vikash Kumar Singh

PFA of the file.

Aspose Support team.7z (2.22 MB)

@vikash.kumar,
We have opened the following new ticket(s) in our internal issue tracking system and will deliver their fixes according to the terms mentioned in Free Support Policies.

Issue ID(s): SLIDESRS-33718

You can obtain Paid Support Services if you need support on a priority basis, along with the direct access to our Paid Support management team.

Hi,

Sharing the method which is taking more time to execute .

byte[] result = executionService.Render("RPL", deviceInfo, 
    out extension, out encoding, out mimeType, out warnings, out streamIDs);

executionService.Render: this method is taking almost 1.50 minutes to execute .

Regards

Vikash Kumar Singh

@vikash.kumar,
Thank you for the additional information. I’ve forwarded it to our developers.

Any progress of the ticket : Issue ID(s): SLIDESRS-33718

@vikash.kumar

We are afraid that the earlier logged ticket has not been yet resolved. Please note that it was logged in free support model and will be resolved on a first come first serve basis. As soon as we make some progress towards its resolution, we will inform you. Please be patient and spare us some time.

We are sorry for the inconvenience.

@vikash.kumar

Unfortunately, we were unable to reproduce the error reported here, as you are using a very old version of our product. No performance degradation of presentation file generation is observed with later versions. When using version 23.9, the presentation is built in less than 2 seconds.
Please see below:

  1. check the export performance in the latest version of Aspose.Slides for SSRS (23.9);
  2. check if there is a performance problem with the export on SSRS itself (without resorting to coding). If there is no performance problem on SSRS itself, there is probably a problem with the network settings of the new operating system.
  3. remove unnecessary component from RDL file
<CodeModules> <CodeModule>GRID.GoogleMaps.Objects, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null</CodeModule> </CodeModules>

Additional remark. Changing operating system versions does not affect the algorithms of report generation (SQL, SSRS) and export algorithms of Aspose.Slides for SSRS.
Please note that the performance drop occurs in the executionService.Render method, but this method is not part of the Aspose.Slieds for Reporting Services library. At the same time, this method is responsible for sending information to and receiving data from the server.

Hi Asad,

We have tried with latest version of 23.9 dll from Report Viewer 2010 , SSRS2005 and Universal folder provided by Aspose and also installed the MSI Setup of 23.9 in SSRS Reporting server which is on window server 2019 but still report is taking 1.45 minutes to download the same report we trying with Aspose Slide dll 17.10 with window server 2012 it is downloading in 3 sec here we have only changed the operating system of SSRS reporting server from 2012 to 2019.

Regards

Vikash Kumar Singh

@vikash.kumar,
Thank you for the information. We will continue to investigate the case and will contact you soon.

@vikash.kumar,
It looks like the problem is in the executionService.Render method and this method is not part of Aspose.Slides for Reporting Services. This method belongs to the Microsoft.Reporting.WinForms.ReportViewer class and is responsible for generating and forwarding report data from the report server. In order to make sure that the problem is with the data forwarding, you can check the export of the report to the presentation on the server itself - the export should occur without delays.
As an option to solve the problem, you can use a different method of receiving data from the report server, i.e. instead of using method

byte[] result = executionService.Render("RPL", deviceInfo, out extension, out encoding, out mimeType, out warnings, out streamIDs);

please try using the method

byte[] bytes = reportViewer.ServerReport.Render("RPL", deviceInfo, page);