You are here:

FoxPro/Speed up Foxpro on Network

Advertisement


Question
Hi,

We have a Visual Foxpro database (version 6.0 sp5)installed on a windows XP pro machine. This database is shared with about 15 users. all users use this databse through shared access to the xp machine. clients are also running xp pro.

clients are experiencing very slowness when the open a form, add or edit data.
This is a LAB and there is no issues with switch, cables, or machine hardware.
All clients using the same exe from the xp server machine. Just making shortcut.
Is there any way to speed up this foxpro application?

Thanks and please let me know if you have any idea.

Answer
Mir,

  Since I cannot see the program code, I can only guess about its efficiency.  Some methods of doing things in FoxPro are faster than others.  For example, queries are usually faster than using a SET FILTER command.  

Apart from the code itself, the best method for increasing processing speed is through distributive processing.  If the program is fully developed and does not change, simply copying the EXE and runtime libraries to each of the 15 workstations will make it much faster.  If the program sits on the local hard disk, network traffic is reduced to only reading & writing to the primary database(s).  Local disk access is much quicker than accessing a network drive.  Temporary files (e.g. query results) are created in the DEFAULT directory.  If there is nothing in the program to change it, the default directory is the current / working directory, usually where the EXE sits.  With the EXE on the network all files created by the program (query results, index files, etc) are created on the server.

  Unfortunately, the program must be written in such a way that it can find the data when it is not in the same place as the EXE.  Data files must be opened by using their full directory location OR through the use of a SET PATH command very early in the code.  If you can make changes to the program, adding a single line:

   SET PATH TO \\ServerName\DBFdirectory
 OR (if drive mapping is permanent)
   SET PATH TO X:\DBFdirectory

  If you don't have access to the source code and cannot make changes to the program, just test it on a single computer.  If the program cannot open the network files, you'll get a "File not Found" error fairly quickly.

FoxPro

All Answers


Answers by Expert:


Ask Experts

Volunteer


Fred Frase

Expertise

Questions about development only. No installation or hardware specific questions, please. Your first step in requesting assistance should be to identify the version of FoxPro you are using. I can write short functions but, PLEASE do not ask me to write programs for you.

Experience

Nearly 30 years professional programming experience using FoxPro (FoxBase through VFP 9) or other xbase language, primarily in Windows environments.

Education/Credentials
Completed a 1,000 hour diploma course in programming at International Academy of Ohio (subsequently merged with Southern Ohio College).

©2016 About.com. All rights reserved.