Kevin,
Thanks for considering the suggestion. I would have one more suggestion; first it would be intersting to know how many records and how many fields are created by the SQL SELECT in the temp cursor. I noticed that you do a SCAN / SCATTER MEMVAR / SQL INSERT to populate the Result cursor. I don't know what is your equivalent to that in the C# code, however the VFP code would be optimized if you SCATTER MEMVAR FIELDS Cf_Ref instead of just SCATTER MEMVAR. It would be also interesting to try avoiding the INSERT altogether and replace the code that populates the Result cursor with this:
SELECT temp
SCAN
APPEND BLANK IN Result
REPLACE IN Result Cl_ref WITH temp.Cl_ref
ENDSCAN
Would you try it?
>>Hello Kevin!
>>
>>I believe you mentioned remote locations from which the tables are queried. If so, then the network traffic would definitely be the most important in performance issues. Would it be possible to get versions of the same tables re-located on the local network? That would create a more consistent environment for your test.
>
>Great idea, I've given that a go by placing 7 different folders on my local server.
>
>I ran them 3 times just to get a feel, really I would say they were pretty much equal:
>
>
>
> VFP C#
>
>Run 1 2.01 secs 1.81 secs
>Run 2 1.49 secs 1.88 secs
>Run 3 2.60 secs 1.79 secs
>
>Average 2.03 secs 1.82 secs
>
>
>Bearing in mind the extra stuff the C# app is doing, I would say that's pretty impressive.
>
>Kev