Tempo fa ho tentato di creare una classe per eseguire la Open del DB da trattare perché potessi richiamarla nel programma tutte le volte in cui ce ne fosse bisogno, ma non ci sono riuscito; allora ho deciso di creare una rouitne in ciascuna delle Form interessate. Così sono potuto andare avanti, ma poiché più passa il tempo e più mi impigrisco, ho ripetuto oggi il tentativo scrivendo il seguente codice:
Ho creato la Classe "OpenDB":' Gambas class file
PUBLIC DB_Connection AS NEW Connection 'inizializza la nuova connessione
PUBLIC SUB OpenDB()
DIM $_DbPath AS String = Application.Path & "/ContabFam_DB" 'Percorso di ricerca del Database ContabFam.db"
DIM $_DbNome AS String = "ContabFamdb" 'Nome del Database
'----------------------------------------
WITH
DB_Connection
.Close
.Type = "sqlite3"
.Host = $_DbPath
.Name = $_DbNome
.OPEN 'Apro il DB
END WITH
END
richiamo della classe e accesso ad una tabella del DB:PRIVATE OpenDBConFam AS OpenDB
........bla.....bla.....bla.........
OpenDBConFam = NEW OpenDB
RecMovgg = OpenDBConFam.DB_Connection.EXEC("SELECT * FROM movimgg WHERE DtCoMovgg = '" & i_dataCont & "' ORDER BY NuProMovvgg")
L'ultima istruzione (RecMovgg = OpenDBConFam.DB_Connection.EXEC) fornisce il seguente errore:
Connection is not openedHo guiardato e riguardato, fino all'esaurimento nervoso, il codice scritto, ma non ho capito se e dove abbia potuto sbagliare.
Chi può darmi una mano?