I see we're in fact discussing a philosophy here.
EXACT is indeed influencing partial key matching, but EXACT should always be OFF, you can do exact matches by == operation and to seek an exact value, simply seek for a full key expression. String matching also is exact in case of EXACT OFF, if both strings have same length. So you only have advantages with EXACT OFF, ON is not needed at all.
If you want to find the latest transaction in an index on account+DTOS(date) (or Account+TTOC(datetime,1)), then EXACT has to be OFF, of course, anything working without partial key matching is an unnecessry overhead, then you have to add something for the DTOS portion and don't know what key exists. In that case SEEKing account+"99991231" (DTOS) or account+"99991231235959" (TTOC,1) would find the latest transaction with order set DESCENDING and NEAR ON. You're right about that, but with EXACT OFF you simply SEEK account and are at the last record for that account, and if you seek an account with no transactions yet, you go to EOF() with NEAR OFF, I prefer that instead of landing at any other account. Why make it any harder?
I always work with EXACT OFF and NEAR only ON, if I really want to land at a nearest result even without the partial matching.
You're giving away a big advantage with EXACT ON. "Begins with" matches are surely above 90% of all matches you also want to have with WHERE or FOR clauses.
Bye, Olaf.