Microsoft KB Archive/319001

= FIX: SEEK, INDEXSEEK, and LOOKUP Find Nonexistent Record when Used with SET KEY Command =

Article ID: 319001

Article Last Modified on 4/10/2002

-

APPLIES TO


 * Microsoft Visual FoxPro 7.0 Professional Edition

-



This article was previously published under Q319001



SYMPTOMS
The SEEK, the INDEXSEEK, and the LOOKUP functions may find nonexistent records when you use the functions with the SET KEY command.



RESOLUTION
To resolve this problem, obtain the latest service pack for Visual FoxPro for Windows 7.0. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

316964 How to Obtain the Latest Visual FoxPro for Windows 7.0 Service Pack



STATUS
Microsoft has confirmed that this is a problem in Microsoft Visual FoxPro for Windows 7.0.

This problem was first corrected in Visual FoxPro for Windows 7.0 Service Pack 1.



Steps to Reproduce Behavior
Paste the following code in a program (.prg) file, and then run the program from the Command window: * Clear the screen CLEAR lcTestVal=PADL(1, 10, '0') CREATE CURSOR crsTest ( cTest C(10))

INDEX ON cTest TAG cTest

INSERT INTO crsTest (cTest) VALUES (lcTestVal)
 * Insert a record into the cursor

SET KEY TO '1234567890' ? 'SEEK Results ', SEEK(lcTestVal) ? 'INDEXSEEK Results', INDEXSEEK(lcTestVal) ? 'LOOKUP Results ', LOOKUP(crsTest.cTest, lcTestVal, crsTest.cTest,'cTest')
 * Limit the range of records that can be accessed. In this case
 * this should eliminate all of the records.

? SEEK lcTestVal ? 'SEEK Results ', FOUND

LOCATE FOR cTest = lcTestVal ? 'LOCATE Results ', FOUND Note that the SEEK, the INDEXSEEK, and the LOOKUP functions find a nonexistent record, but the SEEK and the LOCATE commands work correctly.

Keywords: kbbug kbfix kbvfp700sp1fix kbcodesnippet KB319001

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.