Suggestions 1-3 are mostly used in code.
It is not possible to optimize code to increase speed significantly: The problem is that there are simply too many data which must be read to produce reports.
>4. Use SYS(3050) to define foreground and back ground memory. VFP doesn't do a good job of determining how much "actual" memory it has available to it and often requests more than the system has. When this happens it leads to disk caching and excessive thrashing of the HDD. Setting the values to lower numbers like 2**22 (4 Mb) or lower can actually speed things up.
I have lines
SYS(3050,1, 8000000)
SYS(3050,2, 5000000)
in my application. What's wrong with this ?
>5. Look at using the HAVING clause which does post-query filtering and can greatly speed things up by performing a filter on a relatively small result set.
>
>6. Ensure that the TMPFILES=path in the CONFIG.FPW file points to a server local HDD folder.
I don't use ANY TMPFILES path in confif.fpw file. In this case, VFP uses
local temporary directory always.
Why I need to use TMPFILES ?
>>I have compaq double processor Windows 2000 server with 700 MB RAM (400 MB used
>>actually, remaining seems to be free).
>>
>>I have 15 W2K terminal server users and
>>20 100 MB LAN users
>>all they are running single VFP 7 application
>>This application uses dbf files directly in server hard disk.
>>
>>However, the perfomance for large queries is somewhat slow.
>>
>>How to increase perfomance ?
>>
>>Is it reasonable to upgrade to W2K Advanced server and use more processors.
>>
>>W2K server allows only 2 processors, W2K advanced allows up to 8 processors.
Andrus