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

Generating Reports in batch producing AV

edited June 2001 in General
Hi,
we have the following problem:

we are generating invoices in a batch, normally more than 500. In some cases
there appears the message (in German) 'Registerseite mit Index 0 konnte
nicht gel?scht werden' say 'Registerside with Index 0 couldnt be deleted'.
Then an Access violation occurs and the computer hangs up.
Any idea?

We are using Delphi5 and RBuilder 5.52

Thanks in advance

Klaus Leitloff

Comments

  • edited June 2001
    Klaus:

    It is impossible to know without more information. Can you reproduce a small
    sample and send it to support?

    Ed Dressel
    Team DM

  • edited June 2001
    Sorry, our program is too big.

    But I think I know the place where the error occurs:


    ppDsgner:

    procedure TppDesignerWindow.RemoveSubReport(aCustomReport: TppCustomReport);
    var
    liIndex: Integer;
    lReport: TppCustomReport;

    begin

    liIndex := tbsReport.Tabs.IndexOfObject(aCustomReport);

    if liIndex < 0 then Exit;

    lReport := TppCustomReport(tbsReport.Tabs.Objects[liIndex]);

    {note: Normally the subreport is deleted by the user when its
    parent report is the CurrentReport. This should only happen
    when report and subreport are being destroyed. }
    if (FCurrentReport = lReport) then
    SetCurrentReport(nil);

    {remove the tab }
    ????????????? tbsReport.Tabs.Delete(liIndex); ?????????????

    {set tab visibility based upon number of tabs}
    tbsReport.Visible := (tbsReport.Tabs.Count > 1);

    if FToolbarManager <> nil then
    FReportTree.RemoveChildReport(aCustomReport);

    end;

    Maybe its a hint for you

    Klaus



  • edited June 2001
    Can you isolate which report is causing the problem, or is it random, maybe
    based on memory resources?

    You could try to break the batch creation up into multiple batches. Use the
    Report.AfterPrint event to determine that the last report of a batch of
    reports has printed, so that the next batch of reports can begin generating.


    Cheers,

    Jim Bennett
    Digital Metaphors


This discussion has been closed.