Newsgroup: it.comp.appl.access
Titolo: Controllo su query in un report

La situazione è questa: in un report ho un controllo [NomeQuery]![CampoQuery] che mi dà l'errore
#Nome? pur essendo il risultato della query composto da una sola tupla. Come mai? Dove sbaglio?
Grazie in anticipo.
--
*_Yuri_*

 Come mai? Dove sbaglio?
Ciao, *_Yuri_*.
    Dovresti essere piu' preciso. Quando scrivi "ho un controllo <qualcosa>"
si intende che al posto di <qualcosa> ci dirai il *nome* del controllo.
Invece ci dici "[NomeQuery]![CampoQuery]" che non e' il nome di un
controllo. Che cos'e'
"[NomeQuery]![CampoQuery]"? Dove sta scritto? Se e' il valore della
proprieta' "Origine controllo" del controllo in questione, come mai e' in
quella forma invece di essere semplicemente nella forma "CampoQuery"? In
quanto ci si aspetterebbe che "NomeQuery" sia piuttosto il valore della
proprieta' "Origine record" del *report*. Come stanno le cose?
-- 
    (Facci sapere se ed eventualmente come hai risolto. Grazie.)
Ciao :o)
Maurizio Borrelli, Microsoft MVP - Office Systems - Access
--------
?SPQR(C)
 X
--------

  X
Ehilą Maurizio, come vą?
Qual buon vento ti porta.
Ci manchi da molto su icaa.
Stiamo portando avanti il progetto "traduzione
sito Karl"
E' un bel contributo per tutti gli accessisti
d'Italia.
Fatti vedere + spesso.
MAssimiliano

 Fatti vedere + spesso.
Ciao, MAssimiliano. (Ciao, Tutti!)
    Grazie.
    Sto riemergendo da un periodo di intensa attivita'. Ma questo non
interessa a nessuno... quindi passiamo a Karl. Ho incominciato a leggere
qualche post in proposito. Mi pare un'iniziativa decisamente interessante,
anzi, di piu'. :-)
    Mi auguro solo che si riesca a tradurre in italiano e non in quello che
secondo Karl e' l'italiano. Sono due lingue diverse. :-)))) Anche se a volte
l'italiano di Karl, tutto sommato, e' piu' comprensibile dell'italiano
standard. Merito della testa di Karl?
-- 
Ciao :o)
Maurizio Borrelli, Microsoft MVP - Office Systems - Access
--------
?SPQR(C)
 X
--------

 ha scritto nel
messaggio
news:zMNGc.13164$%l2.1...@news.edisontel.com...

Fra non molto online ci sarą anche Accčss, il
software con la pummarola ncoppa.
;-P
MAssimiliano

>     Dovresti essere piu' preciso. [cut]
Effettivamente... Chiedo venia.
Allora: io ho creato un report in cui ho messo una etichetta. In questa etichetta, come origine
controllo ho inserito (tramite generatore di espressioni) "=[Query]![CampoQuery]", dove "Query"
rappresenta il nome della query, e "CampoQuery" un campo della medesima query. La query in questione
è strutturata come segue:
------------------------------------
SELECT Tabella.NomeCampo
FROM Tabella
WHERE Tabella.NomeCampo=Forms!NomeForm!CampoForm;
------------------------------------
e devo dire che questa funziona egregiamente.
    Ora, visto che "NomeCampo" in "Tabella" è una chiave primaria, il risultato di "Query" sarà una
singola tupla. Perciò (penso io), che problema dovrebbe sorgere all'inserimento del valore contenuto
nel campo "CampoQuery" di "Query" in un'etichetta di un report? Spero di essere stato più chiaro,
grazie ancora.
--
*_Yuri_*

 ha scritto nel messaggio
news:oN8Hc.7373$tj3.3...@news3.tin.it...

Ciao, *_Yuri_*.
    Eh... insomma... Cosi' cosi'... Quello che chiami "etichetta" e'
probabilmente una "Casella di testo" (Textbox). Giusto?
    Poi, stando a quanto dici, la query dovrebbe essere piuttosto cosi':
        SELECT Tabella.NomeCampo AS CampoQuery
        FROM Tabella
        WHERE Tabella.NomeCampo=Forms!NomeForm!CampoForm;
Giusto?
    Ma potresti evitare l'uso di questa query ed usare una delle funzioni
piu' utili di Access, almeno per quanto riguarda la costruzione di maschere
e report:
        DLookup
di modo che l'espressione nella tua casella di testo nel report potrebbe
essere:
        =DLookUp("[NomeSocietà]";"Clienti";"[IDCliente]='"
        & [Maschere]![Maschera1].[IDCliente] & "'")
(Osserva che uso i nomi del database Northwind. Ce l'abbiamo tutti, cosi' ci
si capisce meglio, no?)
    Credo che il tuo "errore" consista nel volerti riferire ad una intera
*colonna* di una query (o di una tabella) mentre invece puoi solo riferirti
ad un *campo* di un *record*, ovvero al risultato dell'incrocio fra colonna
(campo) e riga (record) di una tabella (o query).
    La funzione DLookup restituisce proprio questo, e se ci sono piu' record
corrispondenti ai criteri, restituisce solo il primo.
    Il fatto poi che il generatore di espressioni consenta l'espressione in
quella forma vuol solo dire che e' sintatticamente corretta, non che sia
adeguata al contesto in cui la usi tu. Nessuno e' perfetto, e il generatore
di espressioni lo e' meno di molte altre cose al mondo. ;-)


 ;-P
Ciao, MAssimiliano.
    Personalmente non vedo l'ora di leggerti! Ottima idea. Ce ne sono altre
come queste che bollono in pentola?... Chesso'... friulani, sardi, dove
siete?...
