Newsgroup: it.comp.lang.visual-basic
Titolo: Gestire un db Access in rete

Devo gestire un db Access in rete, ma ho letto su una guida in VB che
non è possibile farlo perchè Access è mono-utente.
E' vero oppure c'è un sistema per farlo? Se esiste un rimedio, sapete
dirmi come si fa?
Grazie
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 non č possibile farlo perchč Access č mono-utente.
oddio, forse la prima versione di access era monoutente. da access 97 in poi
sicuramente no.
intendiamoci, non č che sia consigliabilissimo, perň č piů che possibile,
particolarmente se non hai bisogno di collegare molti client (direi che fino
alla decina sei tranquillo)
-- 
Salutoni
Sergio
per rispondere... togli il group dall'indirizzo

 alla decina sei tranquillo)
-- 


 Esiste qualche altro parametro per rendere shared il DB?
Evitare di aprirlo in modo esclusivo? ;)
Ciao

Io ho trovato un modo molto semplice per gestire un database mdb in rete,
magari non è molto corretto dal punto di vista tecnico ma sta di fatto che
funziona.Ti giro una parte di codice di un mio applicativo per darti
l'esempio...
'ASSEGNAZIONE AL CONTROLLO DATA RIFERIMENTI ARCHIVIO AGENTI..ARC
AGENTI.DatabaseName = UNITAL + "\MASTER\ARCHIVI\DITTE\" + NOMEDITTA +
"\AGENTI\AGENTI.ARC"
AGENTI.RecordSource = "ARCAGENTI"
AGENTI.Refresh
'FINE ASSEGNAZIONE
L'operazione viene eseguita sul database agenti.arc puntando all'unità
logica in cui esso risiede...,UNITAL infatti è una
variabile che legge da un file configurazione presente in ogni postazione
dove gira l'applicativo l'unita logica di riferimento.
Mi spiego meglio, poniamo il caso di avere 2 pc , di cui uno server e
l'altro client, su entrambi è installato il programma
ma nel file di configurazione sono indicate due unità logiche diverse, C:\
sul server, F:\ sul client, ipotizzando che F:\ sia
la prima unità logica raggiungibile su quel client. Se io faccio qualche
elaborazione che parte dal lato client, il percorso
sopra diventerà di fatto :
AGENTI.DatabaseName = "F.\MASTER\ARCHIVI\DITTE\" + NOMEDITTA +
"\AGENTI\AGENTI.ARC"
AGENTI.RecordSource = "ARCAGENTI"
AGENTI.Refresh
e in questo modo a me funziona, spero di esserti stato utile..ciao

 Mi spiego meglio, poniamo il caso di avere 2 pc ...
indicare il path del db con "\\nomeserver\cartellacondivisa\nomedb.mdb",
che va bene per tutte le macchine della rete (anche quella su cui risiede
il file) pareva cosa brutta? 
-- 
Salutoni
Sergio
Per rispondere... togli il group dall'indirizzo
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 Pareva brutta si, visto che il mio applicativo dovrà essere distribuito e
non posso sapere per default qualè il nome del server.

 non posso sapere per default qualè il nome del server.
ehm...
davide...
sono tantissime le cose che non sai, quando fai una applicazione che deve
essere distribuita.
è per questo che si fa in modo di poter configurare alcuni parametri al run
time...
ma ora mi sorge un dubbio: dici di non sapere il nome del server, e questo è
corretto, ma la lettera dell'unità logica? a quanto leggo la ricavi da un
file di configurazione, non potresti invece configurare il nome del server?
-- 
Salutoni
Sergio
per rispondere... togli il group dall'indirizzo

 file di configurazione, non potresti invece configurare il nome del
server?
Sì, ma il problema non si sposta di un millimetro ;)
Che sia il nome del server o la lettera dell'unità, cosa cambia?
L'unico vantaggio è che non sei costretto a connettere l'unità, ma dal punto
di vista del programma è esattamente la stessa cosa.
Ciao.

 cancellazione accidentale al dolo.
Ammesso che sia vero, cosa c'entra con
"
indicare il path del db con "\\nomeserver\cartellacondivisa\nomedb.mdb",
che va bene per tutte le macchine della rete (anche quella su cui risiede
il file) pareva cosa brutta?
"
Ciao

 Che sia il nome del server o la lettera dell'unità, cosa cambia?
che è uguale per tutte le macchine, come ho già avuto modo di dire, senza
fare nessun truschino.


Allora Mel.... provo a spiegarti come funziona il mio applicativo. Una volta
installato parte una sorta di configurazione automatica sia dal lato server
che dal lato client, che per prima cosa chiede all'operatore su quale unita
logica risiedono
gli archivi, questa operazione viene fatta in genere dall'installatore non
dall'utonto. L'installatore se è seduto davanti al
Server non farà altro che nella combobox apposita scegliere come unità
logica la C:\, mentre se sii trova sul lato client
scegliera l'unità di rete che aggancia l'unita c:\ del server. Terminate le
procedure diciamo di Wizard, al prossimo avvio
del programma, lo stesso va alla ricerca del file di configurazione
appositamente creato, dove oltre che ad altri parametri
ci trova l'unità logica dove risiedono fisicamente gli archivi, dopodichè la
stessa viene memorizzata in una variabile globale
che viene utilizzata in tutto l'applicativo, e vi posso dire che
funziona.....e funziona anche a livello crystal report.....alle volte
i programmatori si fanno seghe mentali (me compreso) alla ricerca di un
qualcosa di cosi complesso di non venirne mai a capo come si deve,  a volte
pero', la soluzione è la piu' semplice....poi è chiaro ognuno di noi ha
diversi metodi per giungere ad una soluzione, il mio puo' essere brutto
finchè vogliamo, ma sta di fatto che al lato pratico funge....
ciao ciao


Ciao

 alla decina sei tranquillo)
A questo proposito mi é parso di capire che, quando + utenti vanno in
concorrenza, non abbiamo un sistema client-server, ma ogni utente si porta
in locale i dati che gli servono, con il risultato di avere una versione
molto più lenta di chi lavora in locale... ho capito bene?
Ciao
GigioTD
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 ha scritto nel messaggio
news:uilnd.361252$35.16...@news4.tin.it...


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

 Ti hanno dato un consiglio che migliorerebbe il tuo programma.
E io ti consiglio di leggerti qualche documento su come si posta (e si
quota) in un NG.
Ciao

 ha scritto nel messaggio
news:30djh5F...@uni-berlin.de...

Grazie
Ciao