Newsgroup: it.comp.appl.access
Titolo: Preferenze...

Vorre impostare una maschera di "preferenze" nel database che sto
elaborando. Per il momento l'unico modo che soono riuscito ad escogitare è
di aprire la maschera Preferenze in modalità nascosta (da codice) e di
leggere il valore prima di fare una operazione che dovrebbe leggere i dati
da lì.
Impostando le variabili come Global dalla form iniziale (evento Su
Apertura), al momento della lettura delle stesse mi compare il messaggio di
errore Variabile non definita (o qualcosa di simile).
La domanda è: è possibile impostare variabili Globali in qualche parte del
codice (quale?) e leggere sti' valori per utilizzarli al momento opportuno?
Gio'

 ha scritto nel messaggio

Secondo me la cosa migliore e' che ti crei una tabella di servizio dove
memorizzare tutti questi dati e poi li leggi con un semplice dlookup quando
ti servono.
Sib
--
----------------------------------------------------
la mia home:
http://digilander.iol.it/syb
----------------------------------------------------
il sito comune di it.comp.database.access:
http://www.sitocomune.com
----------------------------------------------------
4000 anni fa', il saggio egizio Ptahhotep scrisse:
"... perche' non esistono saggi per nascita."
------------------------------------------------------
Saturiamo ECHELON:
bomba saddam attentato medio oriente

Ho già creato la tabella.  Il problema è che ho dei problemi (oops bisticcio
di parole) con le variabili Public: dove sbaglio?
Gio'

 di parole) con le variabili Public: dove sbaglio?
Le variabili si dichiarano Global.
Comunque non hai letto con attenzione il mio messaggio.
Non hai alcun bisogno di variabili globali per le preferenze, quando devi
richiamare qualche valore usi una dlookup sulla tabella.
Sib

Pensavo solo fosse più "elegante" leggere le preferenze all'inizio da una
tabella e assegnare i valori ad una serie di variabili Global.
Per il momento le leggo da una form che apro da codice in modalità nascosta.
Ho preferito assegnare le variabili a campi invece che a record per lasciare
predisposta la possibilità che più operatori utilizzino la stessa
applicazione con diverse preferenze.
In questo caso è più semplice cercare il valore della preferenza da leggere
perchè e sufficiente leggere il campo direttamente senza fare un Dlookup.
Non so se opero correttamente. Il fatto è che di formazione non sono
programmatore e tutto quello che so l'ho imparato dal manuale.
Gio'

 programmatore e tutto quello che so l'ho imparato dal manuale.
Non e' grave non sapere (vedi sotto) ma se chiedi un consiglio almeno
consideralo.


Infatti.... è già predisposto per poter essere utilizzato da più utenti. Se
avessi un solo utente non sarebbe necessario il Dlookup.
Per quanto riguarda la funzione Dlookup..... (ho già chiesto aiuto nel NG)
mi capita che in qualche modo il dominio (sia tabella o sia query è
indifferente) deve essere "aperto" nel senso che deve essere aperto
l'oggetto di riferimento. Nel caso in cui chiedevo aiuto, mi capita che se
non apro in modalità nascosta una form basata sulla query in cui vado a
cercare il corrispondente valore, il controllo che ha come origine la
famigerata Dlookup mi genera un errore (#Errore). Quindi comunque dovrei
aprire la form (le query e le tabelle non si possono aprire in modalità
nascosta che io sappia). Sbaglio qualcosa io o è proprio così? Preciso che
non l'ho usata per le preferenze.
In ogni caso, se apro la form per leggere i dati delle preferenze, la
richiudo subito dopo (due righe di codice più in là) e questo non dovrebbe
portarmi occupazione della memoria se non per quell'attimo fuggente
necessario per leggere l'istruzione LeggiIlValoreDelParametro. Ripeto: non
sono programmatore e non ho nessun titolo di studio in questo senso. Sono un
geologo che cerca di utilizzare certi strimenti informatici al meglio e
probabilmente  (anzi sicuramente) a volte faccio un po' di casino.
Riguardo poi alla funzione Dlookup: non so se è una mia impressione o che
altro, ma mi sembra un po' "lenta" nel senso che usando una combo si può
ottenere lo stesso risultato in maniera molto più rapida (e anche più
semplice). C'è però la fastidiosa presenza delle "freccine" sulla destra del
controllo. Per darti un idea del mio approccio pragmatico (e approssimativo
lo riconosco) inizialmente avevo mascherato il lato destro dei controlli con
un rettangolo dello stesso colore dello sfondo della form. Ma non mi
sembrava molto elegante. :-)
Scusami se sono stato un po' prolisso.
Gio'

 di parole) con le variabili Public: dove sbaglio?
Nel non lasciare una parte di messaggio a cui rispondi (quoting) per far
capire a cosa stai rispondendo...
Ah, poi si scrive DOPO il quoting...
Antonio

 sembrava molto elegante. :-)
Guarda, andarsi a preoccupare dell'estetica del pulsantino mi sembra poco
pragmatico.
Comunque a questo punto se vuoi proseguire questa discussione devi spiegare
esattamente che dati ti servono e come li usi perche' mi sembra che salti da
un uso all'altro.


 maschere o altro e non richiede che sia aperto assolutamente nulla.
Uso la LookUp in questo modo. L'utente deve inserire un codice che fa
riferimento ad una classificazione diagnostica internazionale. Poichè il
solo codice può risultare poco comprensibile vorrei fare apparire anche la
descrizione. Per far questo inizialmente avevo fatto semplicemente una
casella combinata non modificabile la cui origine era la stessa della
casella di testo. Poi ho provato a mettere come origine del controllo la
funzione Dlookup che va a leggere i dati da una query di unione (in realtà i
sistemi diagnostici sono due e li ho uniti in una query di unione altrimenti
dovrei cercare in due tabelle diverse e non saprei come fare), ma questa
MISTERIOSAMENTE (so dal manuale che la Dlookup funziona come dici) mi da
errore se non apro in modalità nascosta una maschera basata sulla query di
unione. Quindi in attesa di capire cosa sbaglio mi tocca fare così. Non è
che io ci tenga particolarmente ad aprire maschere in modalità nascosta.
:-)

Beh... anche l'occhio vuole la sua parte... mi dsturbano un po' le freccine
... e allora?   :-)
E se proprio non riesco farò con le freccine!
Gio'