Subject RE: [IBO] IBO 4.8.7 to IBO 5.2.0 6
Author Svein Erling Tysvær
> Hi
> We have been porting our main application from D2007 (IBO 4.8.7) to
> XE2 and IBO 5.2. I finally have all the components installed and
> running and have just run our app for the first time.
>
> The first issue I have encountered is the following lines failing with
> a 'Field not found' message...
>
> ItemNameSize := FieldByName('NameS').AsInteger;
>
> Rows := FieldByName('Rows').AsInteger;
>
>
> I take it that this is because the related fields are both reserved
> words (they stem from a Dbase table that was ported to Firebird). The
> data shows ok in a grid but it seems the field by name fails. This
> seems to be a change in behaviour from the previous IBO version. Is
> there any thing we can do to work around this?

Changing your select to something like

SELECT "ROWS" as ROBROWS

could be a simple way to circumvent the problem.

I guess the error is due to reserved words having to be double quoted to be a field name, but double quoting also makes the field case sensitive, so "Rows" is no longer the same as "ROWS". Don't know whether your error is due to IBO or Firebird, though. If the Firebird version hasn't changed between your D2007 and XE2 program, I guess IBO is likely to be at fault, although for all I know there could be a ReadMe file included in 5.2.0 that provides upgrade instructions to be adhered to or some new error in your program code.

Set