Bug: BDE 2.52 and international characters
With the english version of the BDE 2.52 there is a big bug with
international
characters (like german "umlaute", frensh and scandinavian special
characters
and so on) on paradox-tables.
If you use a secondary index on an alphanumeric field which contains
sometimes
such characters, you often got "record xyz is not in sort order", which
leads to
the effect, that the ordering is going wrong.
I told this month ago to the german support (A. Fischer) but never got
response :(
So I decided, to make a "work-around", which is realised in the following
way:
* I added a new filed "SortField" to the tables, which have a secondary
index on
alphanumeric fields.
* I changed the secondary index so, that the index now has the SortField
instead
of the e.g. "name" field
* In my whole application, I added something like
TableX.FieldByName('SortField').AsString :=
MyAnsiLowerCase(TableX.FieldByName('Name').AsString;
in the BeforePost-method.
* The MyAnsiLowerCase-method is a combination of AnsiLowerCase and the
handling of special characters: ?/char(246)-> oe, /chr(224) -> a,
?/chr(235) -> e
and so on.
This work-araound works fine, but I don't think, that this is the right
solution.
Is there a newer version of bde 2.52, which doesn't have this problem? With
the
"old" german 2.51 Version, everything works fine with this international
chars, but
there exists other problems. So I have to use 2.52 (or newer?)!
The IDAPI01.DLL has the internal product version 3.249
Regards
Stefan Kirch
-----------------------------------------------------------------------
Stefan Kirch mailto:s.ki...@monline.net
monline.net - Bauer+Kirch GmbH http://www.monline.net
Tel: (++49) 02471/3741 Fax: (++49) 02471/552