Bug in TTable.Filter (D4)

The TTable.Filter (or actually the TDataSet.Filter) property does not
seem to work if you try to set a filter on a fieldname with a space in
it (only in delphi 4). It results in an error message from the BDE
'operation not applicable'.

For example:
    aTable.Filter := '''Group ID'' = 1'   // group id of integer type
                                                        // expression
results in a BDE exception

If I change the database definition (fields without blanks), it works
For example:
    aTable.Filter := 'GroupID = 1'   // group id of integer type
                                                    // expression works

This problem does not occur in delphi 3; filters on fieldnames with
blanks in it, behave correctly. Actually, I ported the application from
delphi 3 to delphi 4. In delphi 3 it worked correctly.

On the developer support page of inprise
on reference number 422 a bug with similar results is reported.
Supposedly it should be fixed after installing update pack 2. I can only
assume that there is still a bug remaining and it seems also probable
the expression parser is still the problem.

Did anyone encounter the same problem or -even better- does anyone have
a solution to this problem?

Bert-Steffen Visser


    Building: WAY 4.34
    Phone:    +31-40-27-44868
    E-mail:   bvis...@natlab.research.philips.com

    Philips Research Laboratories
    Building , Prof. Holstlaan 4, 5656 AA Eindhoven, The Netherlands