Ciao, grazie ancora per l'aiuto:
Ho scaricato gli esempi che hanno sul sito ho mischiato tutto e ormai in testa
ho più casino che altro !!
Ora ho una proprieta nell'App chiamata datafile e dichiarato a REALSQLdatabase
Nella Open() di App ho:
App.datafile=New REALSQLDatabase
if GetFolderItem("datafile.rsd").Exists = True then
App.datafile.DatabaseFile = GetFolderItem("datafile.rsd")
// Connect To Database
if datafile.Connect = false then
MsgBox ("Errore")
Quit
end if
end if
Cosi, si compila ma il database non viene visto, direi a causa del "
App.datafile=New REALSQLDatabase ", ma se
tolgo la riga, appena compilato mi da un NilObjectException sulla riga "
App.datafile.DatabaseFile = GetFolderItem("datafile.rsd") "
ho acceso un cero.... :)
Matteo
On Tuesday, May 23, 2006, at 02:43PM, Giulio <giulio at cantoberon dot it>
wrote:
>scusate, mi sono spiegato male:
>
>volevo dire che non vorrei che Matteo si dichiari la variabile
>datafile come globale da qualche parte, ma poi torni a dichiararla
>nell'evento open() della finestra.
>
>cosi avremo due variabili con lo stesso nome, ma con due ambiti
>diversi. quella dichiarata in open() e' correttamante inizializzata,
>ma si esaurisce alla fine dell'evento open().
>
>la globale continua a rimanere visibile al codice, ma non e'
>correttamnente inizializzata e' da come risultato NilObjectException
>
>spero sia piu' chiaro
>
>
> Giulio
>
>
>Il giorno 23/mag/06, alle ore 14:05, Giulio ha scritto:
>
>> Ciao.
>>
>> Il giorno 23/mag/06, alle ore 13:20, Matteo Lovatti ha scritto:
>>
>>> Ciao, graize a tutti per l'aiuto
>>>
>>> Non riesco a usare il MsgBox con l'errore del db in quanto il prog
>>> va in NilObjectException solo aprendo la finestra !
>>>
>>> Vorrei veramente capire, se il codice da usare è questo :
>>> (messo on Open() in App)
>>>
>>> Dim dbFile as New FolderItem
>>>
>>> Dim datafile As REALSQLDatabase
>>
>> ma non e' che il problema sta nella variabile datafile?
>>
>> voglio dire, se dichiari la variabile nella funzione open, sara'
>> visibile soltanto all'interno della funzione open.
>> dovresti invece dichiarare la variabile datafile come globale come
>> proprieta' di un modulo o di App stessa, e poi nella open
>> semplicemente inizializzarla con new
>>
>> se dichiari la variabile col Dim dentro open() e poi cerchi di
>> usarla in altre funzioni del programma sicuramente hai
>> NilObjectException
>>
>> spero serva,
>>
>> Giulio
>>
>>
>>>
>>> datafile= New REALSQLdatabase
>>> dbFile = GetFolderItem("datafile.rsd")
>>>
>>> datafile.DatabaseFile=dbFile
>>> If datafile.Connect() then
>>> MsgBox "Tutto ok"
>>> else
>>> MsgBox "Errore critico: Impossibile trovare il file del database"
>>> end if
>>>
>>>
>>> perchè all'avvio mi dice tutto ok e dopo non riesce a trovare il
>>> file del database.
>>> Ho sempre il mio db anche nella finestra Progetto se no non me lo
>>> compila.
>>>
>>>
>>> Grazie
>>>
>>>
>>>
>>>
>>> On 23/mag/06, at 09:21, Marco Bambini wrote:
>>>
>>>> Dovresti far visualizzare l'errore:
>>>>
>>>> MsgBox db.ErrorMessage
>>>>
>>>> almeno cosi si può capire meglio cosa non piace a sqlite.
>>>>
>>>> ---
>>>> Marco Bambini
>>>> http://www.sqlabs.net
>>>> http://www.sqlabs.net/blog/
>>>>
>>>>
>>>>
>>>> On May 22, 2006, at 7:03 PM, Matteo Lovatti wrote:
>>>>
>>>>> Vi aggiorno la situazione !!!!
>>>>>
>>>>> ho tolto tutto il codice relativo all'apertura del database.
>>>>> Ho semplicemente trascinato il file database nella tab project
>>>>> del REALbasic
>>>>> In debug tutto funziona
>>>>> compilo sposto sul MIO desktop provo..... FUNZIONA !!!
>>>>> copio il compilato sul Mac di mia mamma, provo.... NON VA !!
>>>>> dal mio computer faccio partire il programma in rete dal
>>>>> computer di mia mamma .... FUNZIONA !
>>>>>
>>>>> a sto punto non capisco più un tubo.. perchè sul comp di mia
>>>>> madre non va ? potete aiutarmi ??
>>>>>
>>>>> Matteo.
>>>>>
>>>>> On 22/mag/06, at 18:44, Matteo Lovatti wrote:
>>>>>
>>>>>> Ciao, si il database esiste purtroppo !! ed è nella stessa
>>>>>> cartella dell'eseguibile. da debug tutto funziona benissimo
>>>>>> non so più che fare...
>>>>>>
>>>>>> Matteo
>>>>>>
>>>>>>
>>>>>>
>>>>>> On 22/mag/06, at 18:34, Marco Bambini wrote:
>>>>>>
>>>>>>> On May 22, 2006, at 6:33 PM, Matteo Lovatti wrote:
>>>>>>>
>>>>>>>> Ciao, a tutti sono l'ultimo arrivato e arrivo pure con un
>>>>>>>> problema !
>>>>>>>>
>>>>>>>> Non capisco perchè il mio programma veda correttamente il
>>>>>>>> database durante il debug, ma se lo compilo e copio il file
>>>>>>>> eseguibile e il file del database su un altra macchina non va
>>>>>>>> più nulla !
>>>>>>>>
>>>>>>>> Ho provato le seguenti soluzioni...
>>>>>>>>
>>>>>>>> la prima più semplice "aprendo" il mio database
>>>>>>>> dall'interfaccia di programmazione con Aggingi->seleziona
>>>>>>>> REALmysql .....
>>>>>>>> compilato non va.
>>>>>>>>
>>>>>>>> la seconda, nella funzione Open() di App() ho inserito il codice
>>>>>>>>
>>>>>>>> Dim dbFile as New FolderItem
>>>>>>>>
>>>>>>>>
>>>>>>>> dbFile = GetFolderItem("datafile.rsd")
>>>>>>>
>>>>>>> A questo punto il database esiste?
>>>>>>> Ed è nella stessa cartella dell'eseguibile?
>>>>>>>
>>>>>>> ---
>>>>>>> Marco Bambini
>>>>>>> http://www.sqlabs.net
>>>>>>> http://www.sqlabs.net/blog/
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> datafile.DatabaseFile=dbFile
>>>>>>>> If datafile.Connect() then
>>>>>>>>
>>>>>>>> else
>>>>>>>> MsgBox "Errore critico: Impossibile trovare il file del
>>>>>>>> database"
>>>>>>>> end if
>>>>>>>>
>>>>>>>> e la proprietà datafile As REALSQLdatabase (sempre in App) e
>>>>>>>> mi collego dalle altre finestre chiamando
>>>>>>>> App.datafile.SQLExecute o altro
>>>>>>>> compilato non va.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Potreste darmi una mano ? Sono con la vers. 2006R1 su Mac Os X
>>>>>>>>
>>>>>>>> Grazie
>>>>>>>>
>>>>>>>> Matteo.
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>
>
>
Matteo Lovatti
------------
iChat: matteolovatti at mac dot com
|