Newsgroup: it.comp.appl.access
Titolo: Tabelle collegate e Rete

Perdonate, ma il confronto con la rete mi sta facendo sentire molto
ignorante. Se da un FE leggo da una tabella collegata, occupo la rete perchè
in realtà leggo sul BE o ho sul mio FE una specie di vista da poter leggere.
Quindi se non voglio occupare la rete, di alcune tabelle mi conviene fare
una copia temporanea su tutti i FE o non incide?
Ciao Valerio.

Valerio Valentini ha scritto:

Se, come probabile, hai una fast ethernet 100Mb/s l'uso dei BE in rete non
pesa molto a meno che non si parli di BE di grosse dimensioni (centinaia
di Mbyte).
Comunque non hai molta scelta, perchè se vuoi avere i dati costantemente
aggiornati non puoi fare copie locali delle tabelle altrimenti non
vedresti le modifiche apportate da altri utenti, e dovresti poi gestire
l'aggiornamento della tabella sul BE.
Io ho progettato una volta sola un FE che si usa una copia locale di una
tabella del BE, ma è un caso particolare: fa la copia locale di un grosso
listino prezzi che viene modificato solo circa una volta al mese, quindi
all'apertura del db controllo se il listino è variato ed in caso positivo
aggiorno la tabella locale.
Se hai dati che vengono aggiornati frequentemente ti conviene lasciarli
sul BE ad accedere tramite rete.
Namor
-- 
namor at inwind punto it
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it


Ho detto di alcune tabelle, ovvero di quelle che contengono impostazioni ed
altre informazioni, non certamente tabelle movimenti o situazione clienti
che devono essere aggiornate in tempo reale. Essendo comunque queste ultime
abbastanza pesanti mi chiedevo appunto se, pur trattandosi di traffico
ridotto, non fosse il caso di creare tabelle temporanee in copia locale di
quelle che contengono informazioni che non debbano essere aggiornate.
Ciao Valerio.

Valerio Valentini ha scritto:



Se sono poco usate non serve farne una copia locale perchè rallenta il db
all'apertura e aumenta le dimensioni del FE. Se vuoi lo si può fare, puoi
deciderlo solo tu che hai la visione completa della situazione e sai
quanto e quando accedi a quei dati. 
Magari fai una specie di cache, alla prima occasione estrai tutti i dati
che ti potrebbero servire e li metti in variabili globali sempre pronte
all'uso.



Variabili globali :)
a) non sono ne 2 ne 50, ma comunque forse tante per scrivere un lungo
elenco, esiste una specie di matrice da usare al posto di una tabella?
b) per avere delle variabili globali devo dichiararle GLOBAL in un funzione
PUBLIC in un modulo e poi richiamare la funzione tipo nella maschera di
avvio?
Ciao Valerio.

 Ciao Valerio.
Potresti usare una matrice di variant ma se devi salvare in memoria tanti
valori il programma si complica. Poi come fai a recuperare quello che ti
serve? Per accedere alle matrici usi solo gli indici numerici.
Mi sa che ti conviene lasciare il BE in rete e vedere come va.
Se vuoi provare, per dichiarare una variabile globale metti la
dichiarazione (Dim NomeVar AS tipo) in un modulo ma fuori dalle sub e
function, subito dopo gli eventuali Option Explicit ed Option Compare.
Io solitamente uso un modulo di classe con le sue property get/let/set e
carico i valori al primo utilizzo, sull'evento initialize.
