>>On a slightly different note, how do you know the index keeps corrupting? Can you do manual SEEKs or similar at the VFP command window and not get the results you know you should get? If that's the case, what is SET COLLATE when this table is used or accessed?
http://fox.wikis.com/wc.dll?Wiki~NonMachineCollation~WIN_COM_API>>
>>I also found a CDX corruption checklist on the Fox Wiki:
http://fox.wikis.com/wc.dll?Wiki~CDXCorruptionChecklist~VB>>
>>IMO a bit dated and some of the suggestions seem to be extreme edge cases. OTOH something is causing your issues, maybe your case is an edge case.
>
>I did a SCAN programmatically for every caracter below 32 and over 122 in all character fields.
>
>I notice the index corruption by setting the index (SET ORDER TO), SEEKing the record I want, browsing the table and scrolling down the grid. At one point, the cursor jump back a couple of records above and keep looping. For exemple, it will reach record #100, down arrow, go back to record #95 and keep looping around 95 to 100 indefintly when I keep pressing the down arrow.
>
>SET COLLATE is set to General everywhere (in code and in all tables).
I've found very strange things when indexes on non-character fields are made under any other collation but machine. But that should not be a problem, I think since VFP8 (or at least 9) we cen set collation for each tag separately.