Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 4 of 4 total
Thread Vista and TDBISAMTable.Lookup not working?!
Sun, Dec 23 2007 9:21 AMPermanent Link

Rolf Frei

eicom GmbH

I have this simple lookup call in my application:

ObjectModul.tblLookupHG.Lookup('MainGroup', GroupField.Value,
'Description');

Everyting works well under XP, but under VIsta this gives a Variants
EVariantTypeCastError :

"Project easyshop.exe raised exception class EVariantTypeCastError with
message 'Could not convert variant of type (Null) into type (String)'.
Process stopped. Use Step or Run to continue."

The Value of GroupField.Value is not NULL so I have no idea what is going on
here under Vista? In any other OS Version this works without any problems.

Regards
Rolf

Sun, Dec 23 2007 9:58 AMPermanent Link

Rolf Frei

eicom GmbH

OK here is some more Infos I just found out. The Variants Error is not
raised inside Looukp but as the result is assigned to a String it come
there, but the problem here is, that Lookup doesn't return the Value from
the DB, which it should. There IS a MainGroup record in the DB for which the
Looukup must return de Description Field. Lookup can't find it and it looks
also that Locate has the same probem, as in some other places in my
application the Locate call doesn't work anymore under Vista too?!

It looks somehow it is related to the comparestring routines under Vista,
which seems to be working differently than under XP. Any ideas how I can
make my DBISAM 3 Application working corretly under Visat as it works under
XP? My Tables have all the Language ID 2055 (Swiss German). GroupField.Value
is '0150'.

Pleas help me as this is now a realy big problem for me, as my customers
stressing me about that.

Regards
Rolf

Sun, Dec 23 2007 11:35 AMPermanent Link

Rolf Frei

eicom GmbH

And after some more investigation: The Locate issn't the problem UAs idi
write in my last reply.

The Problem is, that the filter doen't correct work. I have also found out,
that it has to do with the locale of the table. If I convert it to ANSI the
filter works. Why doesn't DBISAM not anymore correctly filter under Vista? I
can send you the table for testing if you want it. I can just fine reproduce
the problem with DBSYS.

Regards
Rolf

Thu, Dec 27 2007 1:41 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Rolf,

<< It looks somehow it is related to the comparestring routines under Vista,
which seems to be working differently than under XP. Any ideas how I can
make my DBISAM 3 Application working corretly under Visat as it works under
XP? My Tables have all the Language ID 2055 (Swiss German).
GroupField.Value is '0150'. >>

Just make sure that the application is set up to run with Windows XP SP2
compatibility, and it will work fine.  There is an issue with the locale
collations in Vista and DBISAM 3, but I haven't had a moment to track it
down to an exact cause yet.

--
Tim Young
Elevate Software
www.elevatesoft.com

Image