Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
VFP 3 speed--or lack thereof. . .
Message
General information
Forum:
Visual FoxPro
Category:
Other
Miscellaneous
Thread ID:
00050759
Message ID:
00051420
Views:
37
>>>I've got a client who has an EXE written by me in v. 3 VFP. They can't go to VFP 5 due to the hardware constraints of some of the users, but I've migrated to v. 5 and still have the same speed problem.
>>>
>>>The client file is slower than a dead dog. It takes sometimes 22 seconds to pull up a record. The file isn't that deep (~8500 records), but it's quite wide (186 fields). The speed problem happens even on their faster workstations (Pentium 166 with 32M ram).
>>>
>>>I have the client form which has 5 pages in a frame but which uses delayed instantiation, so only the form that is active gets refreshed. I have a Find/List button off of that which fires a form allows the user to build a search criteria himself. He can also save the criteria and pull it up later if he wants, and most of the searches are made on indexed fields. If he chooses EXECUTE from the Find/List form, it does a LOCATE FOR. If he chooses the BROWSE mode, it does a SET FILTER TO. I expect the SET FILTER TO to be slow. But the LOCATE FOR is also slow, sometimes as slow as 22 seconds to pull up a record.
>>>
>>>Any ideas?
>>>
>>>JR
>>
>>Have you ever tried to index table. 8500 records is absolutely nothing for VFP. I have 3 million tables which retrieve records in milliseconds.
>
>You say most of the fields queried on have indexes... _all_should have them. And make SURE you have an index on deleted, especially if the app operates with SET DELETED = ON. Finally, check the optimization of your queries with sys(3054, 1).
>
>Erik

What I meant to say is, they have the choice of locating by any field in the file. They're mostly locating by case # alone, which is an indexed field. They know that some fields take longer than others, but sometimes they need to search on something squirrelly, like street address, which is not indexed, and they know it will take longer.

I think your DELETED() idea will help considerably. I had forgotten about that, and DELETED is set on. I do use SYS(3050) (memory buffer setting), but what's SYS(3054)? I can't find it in help, and the manual says to look at the on-line help for all of the SYS functions. Do you know the syntax? Does it expect a number or character? Etc. . .
CLARC Services, Inc.
3500 Tamiami Trail
Port Charlotte, FL 33952
www.clarc.com
(941) 743-0108
(800) 246-5488
Previous
Reply
Map
View

Click here to load this message in the networking platform