![]() |
FindKey - weird error
Hi
C++ Builder 2007 + NexusDB 3.09 I have a simple table with a WideString field and an int32 field, both of which are in an index. I want to use FindKey to find a record so I use this syntax: TVarRec vr = (path, map); Paths->FindKey(&vr, 1); (path is a WideString and map is an int. Both have valid values). The call to FindKey always fails with the message 'Invalid Value for Field DriveMap'. If I change my code to use SetRangeStart() (etc) with the same values it works ok. If I change my WideString search variable to a regular AnsiString then the call to FindKey succeeds. So it looks to me that there's a bug either in Nexus v3.09 or in C++ Builder 2007 (or both) with using FindKey (and the other Find... functions) when one of the parameters is a WideString. Other than giving up on the Find functions, does anyone know a way to make this work? Andy |
Re: FindKey - weird error
> Invalid Value
It's possible the error is raised in TnxIndexDataSet.idRefIndexSetFields, in unit nxdb.pas. It indicates either a problem with the array passed in, or the type used in the variant record. There are several types available for strings; check type you are using against the types supported in the method above. -- Eivind [NX] |
All times are GMT +11. The time now is 05:22 PM. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.