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

Infinite loop when printing report

edited April 2005 in General
I've got a report with some labels on it, nothing special but once I adust
the paperformat by setting PrinterSetup.PaperHeight and
PrinterSetup.PaperWidth sometimes the report keeps generating pages. It
seems to occur mostly when printing very small reports (like labels, i tried
to print a 75 x 25 mm label) With the PassSetting set to psOnePass the
problem seems to be gone.

Is this a know problem or am i doing something wrong?And more important: Is
there a solution?

I am using ReportBuilder version 5.56 with Delphi 5

Comments

  • edited April 2005
    ------------------------------------------------------
    Article: TroubleShooting: Report Prints Endless Pages
    ------------------------------------------------------

    Occasionally, we have customers state that their reports are in some
    infinite state where page after empty page prints forever.

    There are a few items to check when this occurs.

    The TppReport.AutoStop property is the first thing to check. If this is
    false when the DataPipeline property is unassigned, the endless report will
    be the result. AutoStop is automatically set to True when DataPipeline is
    set to nil, but it is possible to set it back to False. Check for instances
    in your code where you might have created this condition.

    Another thing to check is that all subreports in your report have their
    DataPipeline set. When a subreport does not have its pipeline set, you will
    sometimes see a condition where the first detail record prints and then you
    get blank pages.

    Another, non-data related cause can sometimes be your margin settings. If
    you have stretching bands that need to overflow to the next page, if your
    margins are too tight, sometimes the report engine will endlessly overflow
    to the next page trying to fit the overflow material.

    Still another cause might be having a statically positioned control, set to
    ReprintOnOverFlow, in the same band with a stretching control. For instance,
    if you have a memo set to stretch and in that same band, a label control set
    to ReprintOnOverFlow, then on every page after the first, the memo will
    begin to print after the label control. If the label is placed low enough
    that the memo has no room to print, the report will forever be trying to
    print the overflowing memo on the next page.


    --
    Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
  • edited April 2005
    Thanks for the reply, I found the problem. When the reportheight
    (headerband.height + detailband.height + footerband.height + topmargin +
    bottommargin) is larger than the paperheight it will start looping when
    PassSetting is set to psTwoPass.

    Shouldn't there be a check on this in the reportbuilder code or is this
    fixed in later versions?


  • edited April 2005
    Hi Mark,

    Glad you found the problem. ReportBuilder 9.02 includes a feature that
    checks for the condition you describe below as well as many other conditions
    described in the article I sent in my earlier post.

    --
    Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
This discussion has been closed.