Home Server
New Blog Posts: Merging Reports - Part 1 and Part 2

PDF Generation for Larger Reports takes a long time

edited December 2003 in Server
Hello,

I have Pragnaan compiled into Digital Metaphors ReportBuilder Server with
the rsWebAdapterPDFPragnaan in the uses clause. I have a large report of
645 pages that is taking almost 20 minutes to create the PDF file. Is there
a way to make this faster or do large reports always take this long. The
report itself takes just a couple of seconds to appear on the ReportBuilder
Viewer and only takes about 25 seconds to get to the last page when I click
the "END" button. I was expecting the PDF to take about the same amount of
time. Any suggestions would be greatly appreciated.

The report doesn't contain any images or extensive scripts. It does have a
memo field but I took that off and it didn't help.

Any Suggestions would be greatly appreciated?

Thanks,

Bill Gifford

Comments

  • edited December 2003

    Try the following test:

    1. Create a standard Delphi app that contains this report. (In other words
    do not use RB Server).

    2. Generate the 645 page report to an archive file (.raf)

    3. Create a Delphi app that contains an ArchiveReader.

    4. Use the ArchiveReader to generate the .raf file to PDF.

    This will provide benchmarks of how long it takes RB to generate the TppPage
    objects and stream them to a file and how long it takes Pragnaan to
    translate the 645 TppPage objects to a 645 page PDF document.

    TppReport ---> (report engine) -> TppPageObjects --> (Pragnaan) ---> PDF doc



    --
    Nard Moseley
    Digital Metaphors
    http://www.digital-metaphors.com

    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
  • edited December 2003
    It's a very interesting test.

    I created the simple delphi application with the same report.rtm and it took
    40 seconds to send it to an RAF file. I then placed an archivereader on the
    form along with pragnaan and printed the report to a PDF document. It
    popped up in 45 seconds for a total of 85 seconds for both.

    I would be very happy with those times in my Server application. I made
    sure I don't have any loops going on during the report to cause time
    problems. Any ideas as to why my Server App is so much slower?

    Bill Gifford

  • edited December 2003

    Thanks for that feedback. I am now recalling that we optimized the
    performance of client/webtier page caching following feedback that we
    received from earlier releases.

    Are you using RB 7.03? Check the Help | About box of the report designer to
    determine the exact RB version you are using.

    If you do not have RB 7.03, you can contact info@digital-metaphors.com with
    your full registration info and inquire about receiving an update.



    --
    Nard Moseley
    Digital Metaphors
    http://www.digital-metaphors.com

    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
  • edited December 2003
    Thanks Nard,

    I have 7.02. I'll update to 7.03 and see how it works.

    Bill Gifford
  • edited December 2003
    I loaded RB 7.03 and Pragnaan 2.03 and recompiled both the webmodule and the
    Server application. Same results. It varies between 15 to 20 minutes with
    each run.

    The browser pops up but does not immediatly load Adobe. Instead it looks
    like it hangs and says in the status bar "Waiting for www.mydomain.com".
    After the 17 minutes Adobe finally loads and the report comes in fast. Any
    other ideas would be greatly appreciated.

    Bill Gifford

  • edited December 2003
    Just another note that I found interesting. I pulled up my task manager to
    view my memory and processor usage. CPU usage was 100% while memory was
    only using 256 of my 512 total physical memory. I checked the processes and
    apache was taking 80% of the CPU usage while the other 20% was RBServer.
    I'm using apache 1.3.27. My Web Module for apache has two files that start
    with the following.

    =================
    unit ApacheTestU;

    interface

    uses
    SysUtils, Classes, HTTPApp,
    rsWebTier, rsWebAdapterPDFPragnaan, ppComm,
    rsWebRequest, HTTPProd;
    ======================
    library ApacheTest;

    uses
    WebBroker,
    ApacheApp,
    ApacheTestU in 'ApacheTestU.pas' {WebModule1: TWebModule};

    {$R *.res}

    {$E so}
    {$LIBPREFIX 'mod_'}


  • edited December 2003

    Please send the archive file to support@digital-metaphors.com in zip format
    and I can test it here.


    --
    Nard Moseley
    Digital Metaphors
    http://www.digital-metaphors.com

    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
This discussion has been closed.