Old InterBase/Firebird to new FireBird update

Discussion of open issues, suggestions and bugs regarding IBDAC (InterBase Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
markmoss
Posts: 4
Joined: Tue 06 Nov 2012 14:36

Old InterBase/Firebird to new FireBird update

Post by markmoss » Tue 06 Nov 2012 15:17

HELP

I am working on converting an application to DelphiXE3 that was written in Delphi2/Delphi7 using the Old InterBase/Firebird Components ( TIBQuery, TIBQuery, TIBTransaction, etc. ).

I am testing your components for accessing FireBird as the DelphiXE3 Interbase/Firebird Components do not work with Windows 7.

I have done the conversion and their are many errors that are popping up. Most are that the Migration Wizard did not update the 'uses' section.

However I have also got errors on properties not found.

Also help is not working under IBDAC on the toolbar.

1. TIBCSQL no BatchOutput
2. TIBCSQL no BatchInput
3. TIBCSQL no Transaction.InTransaction
4. TIBCSQL no ExecQuery - is this now Execute?
5. TIBCSQL no FieldByName
6. TIBCSQL no BOF
7. TIBCSQL no EOF
8. TIBCSQL no Next

I am sure I will find more as these are corrected.

Is their a conversion guide to go from the old Interbase Components to the New DevArt Firebird Components?

Any help that you can give me would be greatly appreciated.

Mark Moss
:mrgreen:

AndreyZ

Re: Old InterBase/Firebird to new FireBird update

Post by AndreyZ » Wed 07 Nov 2012 10:36

Hello,
Most are that the Migration Wizard did not update the 'uses' section.
Please specify the exact units that are not added to the USES clause automatically by IBDAC Migration Wizard.
TIBCSQL is a component for executing SQL statements and calling stored procedures on the database server. SQL statements should not retrieve rows from the database. If you want to execute SQL statements that retrieve rows from the database, you should use the TIBCQuery component instead of TIBCSQL. Using TIBCQuery, you will be able to use the FieldByName, Bof, Eof, and Next methods.
Instead of TIBSQL.Transaction.InTransaction , you should use TIBCSQL.Transaction.Active or TIBCQuery.Transaction.Active .
Instead of TIBSQL.ExecQuery , you should use TIBCSQL.Execute or TIBCQuery.Execute .
Instead of using the TIBSQL.BatchOutput and TIBSQL.BatchInput methods, you should use our TCRBatchMove component. TCRBatchMove serves for transferring records between datasets. Here is an example:

Code: Select all

CRBatchMove.Source := IBCQuery1;
CRBatchMove.Destination := IBCQuery2;
CRBatchMove.Execute;
You can find detailed description of the TCRBatchMove component in the IBDAC documentation.
We already fixed the problem with registering all DAC products' documentation in the RAD Studio XE3 help system. The next DAC builds will not have this problem.

markmoss
Posts: 4
Joined: Tue 06 Nov 2012 14:36

Re: Old InterBase/Firebird to new FireBird update

Post by markmoss » Wed 07 Nov 2012 16:01

Andrey

Thank you so very much for your reply for which I have a followup Question.

I have just found out that this application uses the IBCustomDataSet is that needed with Firebird? And if so what do you call it?

Also what do you do about TIBXSQLDA and TIBXSQLVAR?


Mark Moss

P.S. --- IBQuery, IBTable, IBDataBase, IBScript, IBSQL --- were not converted in the uses clause.
:mrgreen:

AndreyZ

Re: Old InterBase/Firebird to new FireBird update

Post by AndreyZ » Thu 08 Nov 2012 11:55

I have just found out that this application uses the IBCustomDataSet is that needed with Firebird? And if so what do you call it?
TIBCustomDataSet is the base class for all datasets that represent the data fetched using the standard InterBase Express components. In IBDAC, the TCustomIBCDataSet class has the same purpose.
Also what do you do about TIBXSQLDA and TIBXSQLVAR?
Nothing, IBDAC does not have such classes.
IBQuery, IBTable, IBDataBase, IBScript, IBSQL --- were not converted in the uses clause.
IBDAC Migration Wizard does not remove or convert any units from the USES clause. IBDAC Migration Wizard adds only the needed IBDAC units to the USES clause.

David@Rtlx
Posts: 1
Joined: Sat 10 Nov 2012 21:08

Re: Old InterBase/Firebird to new FireBird update

Post by David@Rtlx » Mon 12 Nov 2012 15:44

AndreyZ
Not really a question on this topic, but one to help reduce the number of times we contact you. Mark is now gone. I have been working with his machine to figure out where things are. I cannot get the help to work with DevArt components. We only have the trial version while waiting for corporate to get the paperwork done to complete purchase. Should Help work with the trial package? Do I maybe need to reinstall? Thanks.

AndreyZ

Re: Old InterBase/Firebird to new FireBird update

Post by AndreyZ » Mon 12 Nov 2012 16:19

We already fixed the problem with registering all DAC products' documentation in the RAD Studio XE3 help system. This fix is included in the latest IBDAC version 4.5.10. You can download it at http://www.devart.com/ibdac/download.html
You can also download there the standalone IBDAC documentation in the CHM and PDF formats (in the "Documentation and Demo" section).

Post Reply