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

Midas & Interbase - Method 'GetTableNames' not supported by automation object

edited June 2007 in End User
I am running a midas server with interbase, I have my data dictionary setup.
When I go to create a new report at runtime, I go to File - Data Settings
and choose the following:

Session Type: MidasSession
Database Name: scMain
Database Type: other

The box is checked for 'Data dictionary', and my dictionary is selected.

When I go to File - New Query wizard, I get this error:
Method 'GetTableNames' not supported by automation object.

Is this a method I need to add to my server? If so, what should it be
returning to the client?

Thanks!

Comments

  • edited June 2007

    Check out this example, see the included ReadMe.doc. There is a Server
    Project that implements an interface and a ClientProject.

    www.digital-metaphors.com/tips/RBEndUserWithDataSnap.zip


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

    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
  • edited June 2007
    I implemented the GetTableNames method in my dll exactly as it is shown in
    the example, but now, I'm having some problems I hope you can help with.

    After I setup the data settings, I go to File - New - Query Wizard, then hit
    Ok. Every table shows up twice.

    It still allows me to double-click to add a table to the right list, but
    when I click 'Next', it says 'Could not convert variant type (null) into
    type (string).


    I've also noticed that in the data settings dropdown, it displays my data
    dictionary twice in the list.



  • edited June 2007
    Disregard the doubled up table names. I found the problem there, but still
    getting all the other issues.

  • edited June 2007
    If i try to continue without the data dictionary, I get the error:
    TdaMetaData.GetFieldsFromDataSet: Unable to open dataset: ACTIVITY_TBL



  • edited June 2007

    - As a first step, are you able to run the downloadable example? I tried a
    test here that worked. (The example uses ADO and an included MS Access
    database.)

    - Another step would be to get a standard EndUser with Interbase example
    working (i.e. no Midas).

    - First midas step would be a solution that does not use the RB
    DataDictionary, then add the DataDictionary stuff later

    - For the DataSettings set DatabaseType to Interbase and SQLType to SQL2




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

    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
  • edited June 2007
    On the example you linked me to, I was able to get that working (with
    UseDataDictionary unchecked since the tables in that demo database were all
    blank)

    I was able to get the EndUser with interbase example working (no midas).

    I modified your datasnap example to work with our interbase database. I put
    a copy here if you can review:
    http://www.vestigo.net/datasnap.zip

    The only changes I made were the following:

    From the server, I removed the data dictionary items completely. I then
    removed the ado components and replaced with an IB connection and IB queries
    for the reports and report categories.

    From the client, I removed the data dictionary and data dictionary tables.
    I renamed the report and report category fields on the designer to match our
    field names.

    When I run the app, i see the folders and reports. I setup the data
    connection as:

    Session Type: DatasnapSession
    Database Name: DComConnection1
    Database Type: Other

    I then open the query wizard and it shows a list of tables. I select one and
    click next and still get the error I got in the main app.

    I get the exact same error: TdaMetaData.GetFieldsFromDataSet: Unable to open
    dataset: ACTIVITY_TBL


    Now, I noticed you said to set the DatabaseType to Intebase. Should this be
    an item I can select from the end user database settings screen? Currently I
    only have the following options in that dropdown: MSAccess, MSSqlServer,
    Oracle, Other, SybaseASA, SybaseASE.

    On the ppDesigner component, I have the DatabaseType set to dtInterbase,
    although in the example I've attached, it is still set to MSAccess in the
    design time component, although I can promise to you I've tried it with
    dtInterbase there as well.

    Any help is appreciated,

    Thanks!

  • edited June 2007
    I just realized what that dummy provider was for... It's for making me look
    like a dummy :)

    I got it taken care of. Thanks for the help so far!


  • edited June 2007

    Lol, glad you got it working. :)

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

    Best regards,

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