Newsgroup: it.comp.lang.visual-basic
Titolo: !!!Help!!!

Secondo voi è possibile collegare tramite codice (in maniera dinamica)
database di access, in maniera tale da evitare di mantenere in memoria
quantità di dati inutili?
In particolare:
- Ho un unico MDI gestito da menù a tendina su cui si aprono tutti i child,
alcuni dei quali servono per la visualizzazione dei dati contenuti nei dbase
di access.
- Voglio collegare un unico dbase alla volta per evitare di avere in memoria
dati inutili.
- Con un comando del menù, voglio che i form di visualizzazione dei dati già
aperti vengano aggiornati con i dati relativi al nuovo dbase da
visualizzare, senza scaricare e ricaricare il form stesso.
Queste esigenze rendono necessario un collegamento dinamico da effettuare
tramite codice e evitando l'uso di un controllo data, cui collegare le
griglie di visualizzazione dei dati.
Se sto dicendo cazzate fatemelo sapere (sono ancora alle prime armi...),
altrimenti AIUTATEMI!!!!!!!!!!!!!!!!!!!!!!!!!!
Se poi qualcuno è esperto in visualizzazioni di query, sempre legate ai
dbase precedenti e ha qualche suggerimento da dare, il ringraziamento si
raddoppia!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Ciao, Pat:-)

 ha scritto nel messaggio
news:F2M66.11754$eB2.1...@news.infostrada.it...

La cosa è fattibile da codice, per avere un esempio però serve sapere se lo
vuoi in ADO o in DAO (se riesco più tardi o domani li posto entrambi)
Ciao VB

 ha scritto nel messaggio
news:F2M66.11754$eB2.1...@news.infostrada.it...


 wrote in message
RQN66.12985$eB2.2...@news.infostrada.it...


 > se vuoi te la posto
fossi in te lo eviterei.
e' grosso 7 MB
sul sito MS c'e'
e se non sbaglio c'e' pure nel CD di VB6
--
Fibia "Sakamoto" FBI
URL: 
www.geocities.com/fibiafbi
E-Mail: 
fibi...@hotmail.com
ICQ UIN 63586057
Membro #25 delle Brigate Takahashi Sez. Sud


Esempio in DAO (quindi ricordati di referenziare la libreria del DAO dal
menu Progetto-Riferimenti-Microsoft DAO x.y Object Library)
In ogni form Child che deve gestire i dati inserisci le seguenti routine:
Option Explicit
Dim dbFile As Database
Dim recTabella As Recordset
Private Sub Form_Load()
    Set dbFile = OpenDatabase("C:\Documenti\db2.mdb")
    Set recTabella = dbFile.OpenRecordset("Query2")
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
    recTabella.Close
    Set recTabella = Nothing
    dbFile.Close
    Set dbFile = Nothing
End Sub
In questo modo si connette al DB quando apri il form e si disconnette quando
lo chiudi.
Esempio in ADO (quindi ricordati di referenziare la libreria del DAO dal
menu Progetto-Riferimenti-Microsoft Activex Data Objects 2.5 Library)
In ogni form Child che deve gestire i dati inserisci le seguenti routine:
Option Explicit
Dim dbFile As Connection
Dim recTabella As Recordset
Private Sub Form_Load()
    Set dbFile = New Connection
    Set recTabella = New Recordset
    dbFile.Provider = "Microsoft.Jet.OLEDB.3.51"
    dbFile.ConnectionString = ""C:\Documenti\db2.mdb"
    dbFile.Open
    recTabella.Open "Query2", dbFile, adOpenKeyset, adLockOptimistic
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
    recTabella.Close
    Set recTabella = Nothing
    dbFile.Close
    Set dbFile = Nothing
End Sub
Se il Database è unico potresti aprire il database una volta sola
nell'applicazione, e aprire e chiudere le tabelle o le query nei singoli
form.
Se serve altro facci sapere
Ciao VB