Home End User

Migration Issue

edited September 2010 in End User
Hi all we have recently migrated an application from Delphi 7 to 2010,
Report Builder 10.06 to 12.01. We have also moved the End-User
reporting from connecting to the Firebird DB via TDatabase (with
DatabaseType=dtInterbase;SessionType=BDESession) to TIB_Database (with
DatabaseType=dtFirebird;SessionType=IBOSession).

We can create new reports, utilizing the Query Designer, adding tables
and fields. We cannot edit the data views in older reports.
Right-clicking a dataview from a legacy report and clicking anything but
"SQL" results in a short wait period with the wait cursor displayed and
then nothing happens. If we right-click and select SQL the Query
Designer does open to the SQL tab correctly, however, clicking on any
other tab such as "Tables" or "Fields" results in empty lists deisplayed
for available and selected tables/fields.

Any ideas as to what may be causing this? I'm sure we'll figure it
out. For now we are just running an older compiled executable to make
changes to the legacy reports.

--
Regards,
Branden Johnson
Integrity Software Design

Comments

  • edited September 2010
    Here is an rbWiki article that I think will help you. It discusses
    converting reports from BDE to ADO, the same concepts apply to converting
    from BDE to IBExpress

    http://www.digital-metaphors.com/rbWiki/DADE/Fundamentals/Convert_Template_BDE_to_ADO



    --
    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com


    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
  • edited October 2010
    On 9/30/2010 12:14 PM, Nard Moseley (Digital Metaphors) wrote:

    Thank you Nard, this got me much closer.

    One thing I will mention if anyone else has an issue with this is that I
    had to run the following lines of code on all report templates: (I
    loaded each template into a string variable and then saved it back
    sTemplate :=
    AnsiReplaceStr(sTemplate,'daBDEQueryDataView','daIBOQueryDataView');
    sTemplate :=
    AnsiReplaceStr(sTemplate,'TppChildBDEPipeline','TppChildDBPipeline');
    sTemplate := AnsiReplaceStr(sTemplate,'dbGSN','dbReporting'); //To
    convert the database name
    sTemplate := AnsiReplaceStr(sTemplate,'dtInterBase','dtFirebird');


    One other issue I had was that I had to set ValidateFieldNames and
    ValidateTableNames from True to False. Not sure why this is, but when
    set to true, any reports that included SQL select statements involving
    views in the FB DB would not run. This was not the case after I set the
    two properties to False. Why is this???

    --
    Regards,
    Branden Johnson
    Integrity Software Design
  • edited October 2010
    I don't know what would cause that. Are the table names and field names for
    the Firebird Viewer displayed when you try to create a new query via the
    query wizard and query designer?

    --
    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com



    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
  • edited October 2010
    They weren't appearing until I set ValidateFieldNames and
    ValidateTableNames to False. They are in the Data Dictionary Tables.

    We are using D14(2010), RB 12.01, IBO4, daIBO, dtFirebird, IBOSession
  • edited October 2010
    If you generate the DataDictionary Tables and Fields using the daIBO plug-in
    then I would expect ValidateTableNames to work. Trace the code in
    daMetaData.pas, the method TdaMetaData.ValidateTableNames. This method
    retrieves the list of table names from the database by using the IBOSession
    and then compares them to the list stored in the DataDictionary rbTables
    table.



    --
    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com


    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
This discussion has been closed.