Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Please help with buffering concepts
Message
 
À
06/10/1999 13:32:43
Cindy Winegarden
Duke University Medical Center
Durham, Caroline du Nord, États-Unis
Information générale
Forum:
Visual FoxPro
Catégorie:
Autre
Divers
Thread ID:
00273226
Message ID:
00273284
Vues:
25
>>Hi all. I'm running into problems with the main data entry form in my project(VFP6.0 SP3 front-end, SQL Server 7 back-end). I have been trying to replace the Remote Views with SQL-PT, and think I finally figured out how to make buffering work with the pass through.
>>
>>However, I have realized two problems with this form now.
>>
>>1.) I have filled my main table with 20,000 test records (25 fields/record, no memo fields). It now takes almost 10 seconds to load the cursor, using Syncronous execution. (I can't get Asynchronous execution to fly with buffered tables). This isn't necessarily a problem in itself, but having to wait 10 seconds every time the cursor is refreshed (to accomodate other multiple user data entry) is too long. I've considered only loading a subset of the table, which would work for this project, and it led me to consider the second problem.
>>
>>2.) The current DB is in Access. We were moving to VFP/SQL Server to accomodate increased table sizes and speed up the system. In the current Access system, when a user makes a change to a record, as soon as that user moves off that record, the change is reflected in the DB, (which would lead me to believe it is record buffered). However, it's also reflected on all other workstations, even though they didn't do any sort of refresh on the recordset. This is what I'm confused about. It seems almost as if the recordsets aren't buffered at all, or each time they move to a new record, that particular record is re-loaded. Can somebody explain this to me?
>>
>>(This was a bit wordy, please let me know if you need more info on either system...)
>>
>>Thanks!
>
>1. With SQL pass-through or views, you don't usually retrieve the whole table, just the records you need. Perhaps you are taking the wrong approach here, or there is some extenuating circumstance. Of course you won't see anyone else's changes when you retrieve the whole table, until you requery (and wait another 10 seconds?) Also, native FoxPro tables are faster than Access and probably also faster than SQL-Server. If you don't need the SQL Server security, Fox tables are a natural choice.
>
>2. The user's view of changes to the FoxPro tables is determined by SET REFRESH. The user's view of the SQL-Server tables is determined by how often you re-query the server data.


Cindy -

Unfortunately, the SQL Server security *is* a necessity. More or less, the info that you gave is how I thought it worked, I was just hoping that I was missing something that would easily enable me to speed up the system.

As far as retrieveing the whole table goes, that's how the DB (in Access) works now. Loading the form returns all records in the table, and the user can traverse through all of the records, or perform a search for a specific case number. I think I am leaning towards loading only "pending" or "completed" records. That way, I will be drastically reducing the REQUERY time.

(Perhaps a purge system is in order here...)

Thanks for your input Cindy!
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform