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

AV in Report Designer (RB 10.05 Ent - Delphi 7)

edited January 2007 in General
Hi,

I just purchased an upgrade to RB 10.05 Enteprise for Delphi 7 (Using
Windows XP with all latest updates).

Just to famaliarize my self with the new features, I created a new blank
project and dropped a ppReport compontent on the form.

While playing around in the report designer, I found that when I click the
'Preview' tab and then go back to the 'Design' tab, if I try to resize the
report window (either clicking the min/max icons on the form or dragging the
border using the mouse), I get an AV as follows:
"Access Violation at Address 04351BDE in Module rbRCL107.bpl. Read of
Address 000000C8."

To make sure that there were no conflicts with any 3rd party components, I
decided to install a clean copy of D7 and RB10.05 in a VMWare Windows XP
virtual machine, but unfortunately still seeing the same issue.

Thank you for your help in this matter,

Gary Colclough

Comments

  • edited January 2007
    Hi Gary,

    There is now a patch that fixes this issue. Please send a small email to
    support@digital-metaphors.com requesting the patch and we'll send it to you
    asap.

    --
    Regards,

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

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
  • edited January 2007
    Nico,

    Thank you for your prompt attention in this matter. Email has been sent.

    Gary Colclough


  • edited January 2007
    Nico,

    I installed the patch and it fixed the AV problem.

    I have one other issue that I hoped was related to the AV problem, but the
    patch didn't help with this one.
    If I open a Report with the ppDesigner component I only see the Design &
    Preview tabs (Data & Calc are missing). If I double-click the report in the
    Delphi IDE all the tabs show up correctly. I've only used the Pro version up
    to now, so this could be something I'm doing wrong.

    Again, Thank you for your help.

    Gary Colclough




  • edited January 2007
    Hi Gary,

    You will need to add raIDE and daIDE to your uses clause to enable the Code
    and Data tabs respectively. Take a look at the following article on
    registering components at runtime.

    ------------------------------------------------------------
    Article: Controlling the End-User Environment
    ------------------------------------------------------------

    If you are having difficulty getting the Data tab, the Calc tab, the
    crosstab component or the TeeChart component to appear in your end-user
    application, or you are trying to eliminate one of these capabilities from
    the app, then this help topic is for you. The following paragraphs explain
    the unit registration scheme used by ReportBuilder Pro, and how you can use
    this scheme to get control over the feature set presented to your end-users.

    In order to minimize the overhead in end-user reporting applications,
    ReportBuilder employs a unit level registration scheme (similar to component
    registration in Delphi.), whereby components and functionality can be added
    at the discretion of the developer. In other words, you can control whether
    the 'Data' workspace, the 'Calc' workspace or certain components appear in
    your end-user reporting application simply by specifying or omitting certain
    unit names from the uses clause of your main end-user reporting unit. The
    advantage of this approach is that overhead associated with features such as
    DADE, RAP or the crosstab component can be eliminated from your application
    if you do not wish to pass these features along to the end-user. The
    disadvantage is that you must manually add certain units to the uses clause
    or these capabilities will not appear in the application.

    In the end-user reporting demo project (located in the ...\RBuilder\Demos\1.
    Report Explorer directory), the main unit is a form entitled myEURpt. At
    the top of the unit for this form there is a series of conditional compiler
    directives which, when enabled, cause certain functionality to appear in the
    application. The conditional compiler directives in this unit are an
    attempt to simplify the configuration of the demo application. However,
    these directives do nothing more than add or omit certain unit names from
    the uses clause of the form. The important thing to know is the unit names
    and the functionality that including those unit names will provide. The
    table below provides this information.



    Unit Name Feature
    ---------- ---------------------------------------------------------------
    daIDE DADE user-interface ('Data' tab)

    raIDE RAP user-interface ('Calc tab)

    ppCTDsgn User-interface for the configuration of the crosstab.
    Normally the Crosstab Designer is displayed by accessing the
    'Configure...' context menu option of a crosstab component.
    If this unit is not included then this menu option is not
    displayed.

    myChkBox Checkbox components appear on the component palette when this unit
    is
    included. If you want to check out the source for these
    components it
    is in ...RBuilder Pro 4\Demos\RCL

    ppChrtUI User-interface for editing charts. Normally the chart editor
    is displayed by accessing the 'Edit...' context menu
    option of a chart component.
    If this unit is not included then this menu option is not
    displayed.



    ReportBuilder also uses the unit registration scheme to control which
    database connectivity options are provided by the application. While
    including the daDatMan unit will cause the 'Data' workspace to appear in the
    Report Designer, that workspace will not be functional without a supporting
    implementation. In ReportBuilder we call these implementations DADE
    plug-ins. A DADE plug-in is nothing more than a Delphi unit which contains
    the appropriate descendant class implementations needed by DADE to
    communicate with a given database. Placing the data access implementation
    in a separate unit gives us at least two benefits. One is that the user
    interface is not tied to any specific database connectivity scheme. The
    other is that the overhead associated with database support is limited to
    the database connectivity products you are actually using. This means that
    if you are using ADO to access your data, you need only include the daADO
    unit in your uses clause and your application will use ADO only. Most
    developers use DADE plug-ins to gain access to databases not supported by
    the BDE, or to gain access to databases without the use of the BDE. The
    following DADE plug-ins are provided with ReportBuilder Pro:

    Unit Name Feature
    ---------- ----------
    daDBBDE BDE support for the Query Wizard and Query Designer

    daADO ADO support for the Query Wizard and Query Designer

    daIBExpress Interbase Express support for the Query Wizard and Query
    Designer.

    daADS Advantage support.

    daDOA Oracle support via the Direct Oracle Access components.

    daODBC98 ODBC support via the ODBC98 components.

    daIBO InterBase support via the InterBase Objects components.

    daDBISAM DBISAM support.


    You can use DADE plug-ins at Delphi design-time by generating a package
    which contains one of these units and then installing it into Delphi. This
    will allow you to use your preferred database product within the 'Data'
    workspace at Delphi design-time. You can locate the various DADE plug-in
    units in the ...\RBuilder\ Demos\EndUser Databases directories. A Delphi
    package project has been provided for each DADE implementation so that you
    can generate and install the plug-in at Delphi design-time. For more
    information on how this can be done, see the ReadMe files in the EndUser
    Databases directories.

    Additional DADE Plug-ins are always being developed. Check the Digital
    Metaphors web-site for the latest information (see the section
    Friends:Data:DADE Plug-Ins.)

    --
    Regards,

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

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
  • edited January 2007
    Nico,

    That did the trick, Thanks.

    By the way, the improvements to RB since v7 are amazing. The Object
    Inspector alone is worth the upgrade price, not to mention the great (quick)
    support in these forums.

    Gary Colclough




  • edited January 2007
    > By the way, the improvements to RB since v7 are amazing. The Object

    Agreed. The stability of the product and the general interface improvements
    are some of my favorites.

    Ed Dressel
    Team DM
This discussion has been closed.