Newsgroup: it.comp.appl.access
Titolo: assegnare ad un textbox il risultato di una query

Salve ragazzi,
io dovrei fare una cosa semplice semplice, che però non mi riesce:
in una form seleziono dei criteri di ricerca, nella subform visualizzo una
serie di record che soddisfano i criteri, in un controllo della form a
questo punto vorrei calcolare il totale di un controllo della subform.
Mi spiego: nella subform ho l'elenco di diverse spese e in ogni record ho il
controllo "Importo". Nella form principale vorrei calcolare il totale
dell'importo dei record visualizzati.
Quindi mi basterebbe far girare una query che raggruppa i record calcolando
la somma (l'ho fatta) e assegnare il risultato della query ad un textbox
della form principale. Ma solo una combobox può avere come origine dati una
query.
So che è una sciocchezza, ma datemi una mano lo stesso
Grazie
Ilaria

 ha scritto nel messaggio
news:9phui3$kv$1...@newsfeed.cineca.it...

OK ti darò una mano!!
Inserisci nel piè di pagina maschera (della maschera che funziona da
sottomaschera) una casella di testo che chiamerai TotImporto nell'origine
del controllo scrivi =Somma([Importo]) a questo punto in fondo alla
sottomaschera avrai il totale degli importi in quel momento presenti nella
sottomaschera.
Adesso se questo valore lo vuoi visualizzare sulla maschera principale
inserisci una casella di testo sulla maschera principale che chiamerai per
es.: TotImportoSM e nell'origine del controllo scrivi
=Forms![NomeMascheraPrincipale]![NomeControlloSottoMaschera].Form![TotImport
o]
Ciao Roberto - Syd


Ok, il totale cč, perň io ho il controllo TotImportoSM sulla maschera
principale che deve essere associato ad un campo di tabella (importoTotale).
Cosě come faccio ad associarlo se nell'origine del controllo ho
=Forms![NomeMascheraPrincipale]![NomeControlloSottoMaschera].Form![TotImport
o]
Grazie
Ilaria


No Ilaria, i valori calcolati NON devono essere memorizzati nelle tabelle,
poiché potrai ricalcolarli ovunque ti possano servire (maschere, query,
report, VBA, macro).
Quindi il problema non si pone.
--
Silvio
il sito comune di it.comp.appl.access:
http://www.sitocomune.com


E' molto giusto quello che ha detto Silvio, anche perchč se fai come hai
scritto rischi che l'utente inserisca un valore divero dal totale e quindi i
valori non sono congrui, comunque se proprio lo vuoi fare scrivi nella
routine Su corrente della maschera principale questa istruzione:
Me.TotImportoSM =
Forms![NomeMascheraPrincipale]![NomeControlloSottoMaschera].Form![TotImporto
]
e nella routine Dopo aggiornamento della Maschera che funge da sottomaschera
scrivi questa istruzione: Parent![TotImportoSM]=Me.TotImporto
Ciao Roberto - Syd

 valori non sono congrui
Avete ragione, in teoria il vostro discorso č giustissimo, perň in questo
caso a fronte di n movimenti in uscita io ho un solo movimento in entrata
che li va a chiudere tutti e che deve avere come importo il totale dei
movimenti che chiude, quindi a me serve memorizzare il corretto importo del
movimento in entrata. Il campo importo nella tabella delle entrate non č
calcolato quando il rapporto entrate -> uscite č 1 a 1, ma quando č 1 a
molti mi viene comodo cosě. (forse il db non č al 20° grado di
normalizzazione dei dati, ma ... :-)
Comunque il controllo totale io lo metto non visibile e non modificabile.
Grazie 1000
Ilaria


Forms![NomeMascheraPrincipale]![NomeControlloSottoMaschera].Form![TotImporto
]
Putroppo al caricamento della maschera mi da' un errore di runtime 2448
"Impossibile assegnare un valore all'oggetto"
- Il controllo è in una maschera di sola lettura (falso)
- L'oggetto è in una maschera aperta in visualizzazione struttura (falso)
- il valore è troppo grande per il campo (è null e il campo di tabella non
ha problemi col null)
Se provi a darmi un'altra mano...
Grazie
Ilaria

 ha scritto nel messaggio
news:9pk5os$26k$1...@newsfeed.cineca.it...

Sei sicuradi aver scritto bene i nomi dei controlli, perchè ho provato e non
mi da errore.
Ciao controlla e fammi sapere Roberto - Syd