Indexes returning incorrect values (AREV Specific)
At 28 JUL 1998 12:20:38PM Brandon Lunt wrote:
I have a system that produces the following results:
SELECT INVOICE B_CUST S_CUST (WITH B_CUST EQ "1-24069") is the command issued.
B_CUST=1-24060 S_CUST=1-24060 is the result. I have tried reinstalling the indexes and still get the same result. If I issue this command while the indexes are removed from the table, it works correctly. The system is AREV 3.111, Novell 3.12, Ms-Dos 6.22. They are using the standard Novell Netware driver and have 10 Users.
At 28 JUL 1998 01:26PM K Gilfilen wrote:
I had an index problem like that, off by 5 or 10 record keys when there was a record key containing a value delimiter. I wrote a quick routine to loop through all of the keys in the table, checking each key for value marks. The select would have to be against the file handle, not using the index. It would be something like the following:
open file to handle
select handle
loop
readnext id then
check for value marks in id -- I forget how to do this, sorryelse
eof=1end
until eof
repeat
stop
I haven't done RBASIC for a while and forget how to check for value marks. It would probably be with the index() function. And of course, if this turns out to be the problem, you'll need to rebuild the indexes when the key is fixed/removed.
If the problem is a value mark in the record key, you will need to find the offending code.