Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Fastest way to find a record
Message
From
27/05/2005 10:29:12
 
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Environment versions
Visual FoxPro:
VFP 9
OS:
Windows XP SP2
Network:
Windows 2003 Server
Database:
Visual FoxPro
Miscellaneous
Thread ID:
01018119
Message ID:
01018133
Views:
13
Good point. I've been testing trying to rule out any problems and prevent any unecessary lag for the user (or strange screen displays). We are actually deleting records so the only surefire way so far is to use:

SCAN FOR de_sysnum == mpo_detail(xpol_number)
DELE NEXT 1
ENDSCAN

or

DELE FOR de_sysnum == mpo_detail(xpol_number)


]>Hah? How you're planning to skip over records with de_sysnum <> 13609 that matches SEEK? BTW, Boris code wouldn't work because of the same.
>The best solution would be to create a proper index anyway.
>
>>The file is hundreds of thousands of records and I'm trying to avoid using 'FOR' with SCAN...ENDSCAN because it creates a delay...
>>
>>Thanks,
>>Tracy
>>
>>
>>>
SET EXACT OFF
>>>SEEK transform(13609,'99999999')
>>>SCAN WHILE transform(de_sysnum,'99999999')+transform(de_histnum,'9999') = transform(13609,'99999999');
>>>       FOR de_sysnum == 13609
>>>   **** Do something
>>>ENDSCAN
>>>
>>>>field de_sysnum n(8,0)
>>>>field de_histnum n(4,0)
>>>>
>>>>EXACT is on
>>>>NEAR is off
>>>>
>>>>Example records:
>>>>
>>>>de_sysnum de_histnum
>>>>13609 1
>>>>13609 2
>>>>13609 4
>>>>13609 3
>>>>14102 1
>>>>1360 1
>>>>1360 9
>>>>
>>>>active index is:
>>>>
>>>>transform(de_sysnum,'99999999')+transform(de_histnum,'9999')
>>>>
>>>>want to move to the first record with a de_sysnum of numeric 13609 and then want to scan while...endscan through only those records that have a de_sysnum of 13609 and ANY de_histnum.
.·*´¨)
.·`TCH
(..·*

010000110101001101101000011000010111001001110000010011110111001001000010011101010111001101110100
"When the debate is lost, slander becomes the tool of the loser." - Socrates
Vita contingit, Vive cum eo. (Life Happens, Live With it.)
"Life is not measured by the number of breaths we take, but by the moments that take our breath away." -- author unknown
"De omnibus dubitandum"
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform