Home End User

Joins in Data Dictionary Builder

edited December 2002 in End User
Hello.

I am trying to use a TppDataDictionary object along with
TppReportExplorer, TppDesigner and TppReport objects to create an intuitive
reporting solution. I can successfully add tables and fields to the Data
Dictionary Builder, but I am not able to create any joins when my data
source is on a server (Oracle, MS SQL Server 2000, PostgreSQL, DB2) I get an
"Access violation in module 'Vcl50.bpl'." However, if I use MS Access, I
can create the joins without any problem. Also, if I manually enter the
data into the rb_join table, Report Designer gives me the same error if I
try to create a datasource that joins any tables (in Query Wizard and Query
Designer). Any help would be greaty appreciated.

I am using Delphi 5.0 Enterprise and RBuilder Enterprise 6.03 on a Windows
2000 PC. All db connections are through ADO.

Thanks,
Bruce Holt

Comments

  • edited December 2002
    Just a note to add Sybase ASA 8 as one of the database servers that gives
    the error.

    Thanks,
    Bruce Holt

  • edited December 2002
    Check the BuilderSettings on the Data Dictionary. Make sure DatabaseName and
    SessionType are correct. The SessionType should be ADOSession. Can you
    access the server data in a Delphi app using DBGrids without RB involved?


    Cheers,

    Jim Bennett
    Digital Metaphors

  • edited December 2002
    Using ADO, we have not been able to get some of the databases you mention to
    work in the end user solution. There is a data connectivity grid in the
    RBuilder.hlp file under History of ReportBuilder Versions | What's New for
    4.2 | Database Specific Examples


    Cheers,

    Jim Bennett
    Digital Metaphors

  • edited December 2002
    BuilderSettings are correct, and all the data is accessible via a DBGrid
    component.
    I have also noticed that if I am connected to an MS Access database, the
    project will allow me to create a single report before I start receiving the
    access violations. I can send the project & access database if it helps.

    Thanks,
    Bruce Holt


  • edited December 2002
    Even when I use the BDE, I still receive the access violation.


  • edited December 2002
    After further debugging, here is what I have found:

    If I use the 'Generate' feature for the fields and tables in the Data
    Dictionary Builder, and do NOT change any of the aliases, the product works
    perfectly. When I remove some tables & fields, then change the alias to
    something intelligible, I receive the access violation.

    Thanks,
    Bruce Holt


  • edited December 2002
    Problem solved.

    In the fields section of the Data Dictionary Builder, I had removed the
    fields that join the tables because I didn't want them visible to the end
    user creating the report. It appears that if that field is defined under
    'Fields', then everything works.

    Thanks,
    Bruce Holt

  • edited December 2002
    That does cause an AV. I added an exception with an appropriate message when
    the join field can't be found in the fields table of the data dictionary.
    Thanks for posting your findings.


    Cheers,

    Jim Bennett
    Digital Metaphors

This discussion has been closed.