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

Help !

edited March 2003 in General
I just upgraded to RBuilder 7.02 (Delphi 6 Update pack 2).

We had RBuilder version 6.03.

Now I have the following 2 problems:
Situation:
Datamodule with a ReportDesigner - Report - pipelines (reports stored in
the database, stored with version 6.03)
1) When creating the datamodule, I have to set a reportname, otherwise I
get the error that the report can not be loaded
I didn't had the error before. It's strange the report tries to load when
creating the datamodule.
Since I can fill in a report, I can live with that, but it's not a very good
solution.

2) when trying to print a report
- set the reportname
- loadfromdatabase
- devicetype = dtscreen
- report.print => abstract error !!!!?????

What is going on here. Did i install something wrong? I never had a
printing problem?
Designing is no problem, previewing while printing is no problem, but when
trying to print => abstract error?

Regards,
Wouter Devos

Comments

  • edited March 2003
    I forgot to mention something,

    We have our own AutoSearchDialogs. Theses worked fine in the 6.03 version.
    Is there something changed to this in the new version?? Should I do
    something specific to get them working again?

    Regards,
    Wouter Devos

  • edited March 2003
    This is new for RB 7.02. If you descend from TppCustomAutoSearchDialog, and
    not from TppAutosearchDialog, then you need to additionally support this
    interface. Check out the TppAutoSearchDialog class to see how this is
    implemented, there isn'ty much code to it, just a create, free and assign.
    If you see the SetAutosearchGroups routine, it appears that there is a
    typecast in our code that we don't need. I'll fix this for the next release.
    The FAutosearchGroups embedded object is what you're looking to recreate
    from ppASDlg.pas.

    TppCustomAutoSearchDialog = class(TppForm)
    protected
    function GetAutosearchGroups: TPersistent; virtual; abstract;
    procedure SetAutosearchGroups(aAutosearchGroups: TPersistent);
    virtual; abstract;

    public
    procedure Init; virtual; abstract;
    procedure AssignAutoSearchFields(aAutoSearchFields: TList); virtual;
    abstract;

    property AutoSearchGroups: TPersistent read GetAutoSearchGroups write
    SetAutoSearchGroups;
    end;


    Cheers,

    Jim Bennett
    Digital Metaphors


  • edited April 2003
    Jim,

    I found the problem. Indeed, there are some more virtual abstract functions
    I had to override.

    Do you have an explanation for the other problem?
    We have a datamodule with a ReportExplorer, ReportDesigner, Report,
    Pipelines for all datasets the report needs (tables,joins,items, ...)
    When creating this datamodule the report needs a template name, otherwise I
    get an access violation.

    Regards,
    Wouter Devos

  • edited April 2003
    We aren't aware of a problem like this. What may be happening is that you
    have the SaveAsTemplate set to true on the report, so it is trying to load a
    template when the form is created. Make sure this is set to false on the
    datamodule at design time. I modified our autojoin BDE demo to work this way
    on a datamodule and indeed there is an error raised because it can't load
    the template from the DB when no name on the template is set.


    Cheers,

    Jim Bennett
    Digital Metaphors


This discussion has been closed.