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

RB and Interbase (IBX) problem

edited December 2004 in End User
Hello,

I have a problem with RB and Interbase and I am not sure, which product
causes my problem. ( I think it is RB)

The app saves for example 5 records with the ibx components into the
interbase db. Then a timer checks every 5 seconds,
whether there a new records in the table. If there are new records, they are
listed in a Listbox. After that, a report is created with RB)

The problem now is: Only the first record is printed. The other 4 records
are "empty sets".

In my eyes this cannot be a problem with the interbase transactions, because
the system reads from the table, adds to a listbox and then calls
the report-builder. And because the five records are identical (instead of
the prim. key), it cannot be a problem with the sql statement that
is created in the "data" tab of RB.

Has anybody an idea ?


Oh, by the way: There are two other things, that are a little bit strange:

1. I cannot see any views of the interbase db in the tables section of the
data tab in RB.
2. If I say "save as" I always get an error like "list index out of
bounds -1". But after that I can select a filename and save.


Thanks for your help !!!

Thomas

Comments

  • edited December 2004

    1. Make sure that the Report.DataPipeline is assigned. Otherwise you will
    get only the first record in the dataset.

    2. A dataset contains a snapshot of the data. If you modify it, then make
    sure that you apply the updates to the database table. Following that, you
    will need to close and re-open the query used by the report (assuming you
    are using two different TDataSet objects - one to update and one to connect
    to the report).

    3. I cannot see any views of the interbase db in the tables section of the
    data tab in RB.

    Try modifyign the GetTableNames method of the DADE plug-in for IBExpress.
    See daIBExpress.pas. For RB 9 we enhanced it to try to include the user
    views. We set TIBTable.TableTypes to [ttView].

    4. If I say "save as" I always get an error like "list index out of
    bounds -1". But after that I can select a filename and save.

    This might be related to the issue you reported to
    support@digital-metaphors.com. We are fixing this for the next release.



    --

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



    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
  • edited December 2004
    > 1. Make sure that the Report.DataPipeline is assigned. Otherwise you will

    How can I assign a Datapipeline when the report is created at runtime and
    the user
    defines the pipeline name like he wants ?


    connect

    This cannot be the problem here. First I save a st of records. Then a timer
    reads them
    from disk and writes them into a lsitebox. After that a report is generated
    for each item
    in the list. So it is not a transaction problem.


    ok, thanks !



    Yes and also if I want to open an existing report in the report designer.



    Thomas











  • edited December 2004


    If the Query tools in the RB Data workspace are being used, then the first
    query that is created will be automatically assigned to the
    Report.DataPipeline.




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



    Best regards,

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