Newsgroup: it.comp.lang.delphi
Titolo: Cache database

Ma veramente nessuno sa come funziona l'aggiornamento delle tabelle
tramite il BDE?
Come è possibile avere sempre dati aggiornati sulle applicazioni che
"guardano" alla stessa tabella condivisa su una share di rete?
Io continuo a sperare.....
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 "guardano" alla stessa tabella condivisa su una share di rete?
Assumo che tu stia usando Paradox.
Nella configurazione del BDE (usando BDE Administrator) nella sezione
Cofiguration->Drivers->Native->Paradox esiste la voce Net Dir.
Va impostata SU OGNI PC alla STESSA cartella di rete condivisa (ad esempio
h:\netdir).
Va scritta sempre eguale per ogni pc , a me ha dato problemi se su uno il
disco era mappato H: , su altro F: e su un altro \\server\netdir
Si può impostare anche a run time nel componente database (Es.
database1.Session.NetFileDir:='h:\netdir')
oppure nel componente session (se non usi quello di default).
Local share dovrebbe essere a False : serve solo a condividere file Paradox
con applicazioni che non usano il BDE.
Ho anche un documento (in inglese) che descrive come configurare il BDE : è
unpò vecchiotto ma va bene lo stesso. Dimmi se vuoi che te lo mando via
e-mail.
NB
In ogni caso devi fare una refresh sulla tabella per vedere gli
aggiornamenti degli altri. Se cerchi in giro esistono anche dei componenti
Table con autorefresh.
Giulio

 ha scritto nel messaggio
news:3512a7a8ef43ae0e9b1...@mygate.mailgate.org...


unpò vecchiotto ma va bene lo stesso. 
In generale, bisognerebbe:
1. Impostare dal BDE Administrator Local Share a True; 
2. se si usano le tabelle, negli eventi AfterPost bisogna forzare la
chiamata DbiSaveChanges((Sender as TBDEDataSet).Handle) al BDE; 
3. Con W95/98, bisogna spuntare le seguenti voci:
   a. disattiva la condivisione dei file e la modalità di bloccaggio; 
   b. disattiva la cache write-behind per tutte le unità; 
   c. disattiva il buffer sincrono; 
   Si accede a queste voci di Pannello di 
Controllo/Sistema/Prestazioni/File System/Risoluzioni dei problemi
4. Per il server NT, bisogna impostare in
HKLM\System\CurrentControlSet\Services\LanmanServer\Parameters le
seguenti DWORD:
EnableOpLocks=0 
EnableOpLockForceClose=1 
CachedOpenLimit=0 
In:HKLM\System\CurrentControlSet\Services\LanmanWorkStation\Parameters
le seguenti DWORD:
UseOpportunisticLocking=0 
UtilizeNtCaching=0 
-- 
Andrea Laforgia
"640kb of memory should be enough for anyone." -- Bill Gates.

Premettendo che tutte le configurazioni sono a posto, credo che questa
sia la soluzione più innovativa per quanto riguarda
le mie conoscenze...
La funzione DBIsavachanges si occupa di salvare i dati sul disco?
Se si...posso usarla arbitrariamente o solo dopo un post?
Verifica lo stato del dataset?
La mia necessita è che chi ha la vista sulla table possa vedere gli
aggiornamenti senza dover eseguire dei post, e questo è l'inconveniente
dei componenti
autoaggiornanti che ho provato.
Sapresti dove posso trovare della documentazione in merito? 
Sul BDE non si trova proprio niente....
Grazie comunque per quanto già fatto ;)


Sapresti dove posso trovare della documentazione in merito? 
Avvio/
  Programmi/
    Borland Delphi 5/
      Help/
        Borland Database Engine/
          Borland Database Engine Online Reference
