realbasic-nug.it
[Top] [All Lists]

Re: Problema con il database REALmysql - addendum

To: REALbasic NUG Italian <realbasic-nug dot it at lists dot realsoftware dot com>
Subject: Re: Problema con il database REALmysql - addendum
From: Giulio <giulio at cantoberon dot it>
Date: Tue, 23 May 2006 14:20:22 +0200
Delivered-to: listarchive at realsoftware dot com
Delivered-to: realbasic-nug dot it at lists dot realsoftware dot com
References: <BF241FAF-6459-4C9A-978E-D3B614667337 at mac dot com> <55BE50A4-B6E9-47E1-B0CE-27C96A810A80 at sqlabs dot net> <2B584CEF-F158-427E-8202-5CA76FA1C86F at mac dot com> <BB160DB6-2353-4078-BDB4-DAE686852581 at mac dot com> <23FDEAE5-0487-48AE-80B7-2CEA121CF4F0 at sqlabs dot net> <96C8FDAA-7910-47D5-86D9-DDE790FE640B at mac dot com> <7BFFF6EC-94F7-4DDC-953E-5F8D75776FC5 at cantoberon dot it>
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.









<Prev in Thread] Current Thread [Next in Thread>