Newsgroup: it.comp.appl.access
Titolo: come ottengo unreport "filtrato" da sottomaschera?

Buongiorno,
 
ho necessitą di aggiungere ad una sottomaschera che mi apra un report in
modo che sia filtrato per l'ID della maschera principale (in questo caso
ho reso parametrica la query che utilizzo per il report) E per un campo
data.
quello che vorrei ottenere č in sostanza che all'evento Click il report mi
proponesse tutti i record che hanno quell'id (e ci siamo) e la stessa data
presente nella riga in cui il pulsante č stato cliccato.
ho utilizzato questo codice ma non funziona:
 
Dim stDocName As String
 
  DoCmd.OpenReport "mio report", acViewPreview, , "Data= " & BData.Value &
""
 
Exit_Comando12_Click:
    Exit Sub
 
Err_Comando12_Click:
    MsgBox Err.Description
    Resume Exit_Comando12_Click
 
End Sub
 
Dove BData č il nome che ho dato alla casella testo associata al campo
data.
Il report si apre, mi mostra l'ID corretto della maschera ma la parte
relativa ai dati della sottomaschera resta vuota (invece dovrebbeo esserci
n righe).
Se lascio il codice standard dell'autocomposizione il report funziona
correttamente ma mi mostra tutte le righe di quell'ID.
Dovrei mettere fare in modo che sia la query a chiedermi la data che mi
interessa?
 
grazie ciao
 
 
-- 
 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it
 
 
 

"barbera"  ha scritto nel messaggio news:j4kvac$3tn$1...@news.newsland.it...
 
Buongiorno,
 
ho necessità di aggiungere ad una sottomaschera che mi apra un report in
modo che sia filtrato per l'ID della maschera principale (in questo caso
ho reso parametrica la query che utilizzo per il report) E per un campo
data.
quello che vorrei ottenere è in sostanza che all'evento Click il report mi
proponesse tutti i record che hanno quell'id (e ci siamo) e la stessa data
presente nella riga in cui il pulsante è stato cliccato.
ho utilizzato questo codice ma non funziona:
 
Dim stDocName As String
 
  DoCmd.OpenReport "mio report", acViewPreview, , "Data= " & BData.Value &
""
 
Exit_Comando12_Click:
    Exit Sub
 
Err_Comando12_Click:
    MsgBox Err.Description
    Resume Exit_Comando12_Click
 
End Sub
 
Dove BData è il nome che ho dato alla casella testo associata al campo
data.
Il report si apre, mi mostra l'ID corretto della maschera ma la parte
relativa ai dati della sottomaschera resta vuota (invece dovrebbeo esserci
n righe).
Se lascio il codice standard dell'autocomposizione il report funziona
correttamente ma mi mostra tutte le righe di quell'ID.
Dovrei mettere fare in modo che sia la query a chiedermi la data che mi
interessa?
 
grazie ciao
 
_______________Risposta:
Per filtrare le date devi o convertirle in long clng(tuadata) o usare i 
cancelletti #tuadata#
 
"Data= #" & BData & "#"
meglio se non usi parole riservate come data
MA
 
 
 
 
 

 ...
 
Il formato della data dev'essere valido per SQL:
http://www.donkarl.com/it?FAQ6.8
 
 
-- 
Ciao
Karl
*********
Access FAQ:  
http://www.donkarl.com/it
 
 
 

 
http://www.donkarl.com/it?FAQ6.8
 
 
il nome effettivo del campo è data_consegna quindi credo che non generi
problemi (o almeno spero)
inserendo sia il parametro ID che il parametro Data_consegna nella query
il report mi restituisce i valori corretti
 
cercando di capire quello che mi hai indicato (non conoscendo l'SQL vado a
naso) ho aggiunto nell'sql della sottomaschera un nuovo campo con
l'espressione dat2:[data_consegna] con il formato mm/dd/aa, l'ho aggiunto
alla maschera e gli ho dato il nome Bdat2.
Stessa operazione per la query (non so se possa servire o no)
il codice mi diventa:
 DoCmd.OpenReport "mio preport", acViewPreview, , "dat2= #" & Bdat2.Value
& "#"
il report mi però resta vuoto.
ho provato allora ad aggiungere nella select della sottomaschera i
cancelletti prima e dopo la data in questo modo:
dat2:"#"&[data_consegna]&"#" sempre con il formato di cui sopra.
però mi da questo errore:
Errore di sintassi (operatore mancante) nell'espressione della query
('dat2=##10/01/2010##)
se tolgo i cancelletti dal vua non mi da errore ma il report resta vuoto.
Per quanto riguarda il metodo di conversione suggerito purtroppo non
saprei come/dove scriverlo nel codice del mio pulsantino.
 
 
mi scuso per il tempo che vi sto facendo perdere.


 ...
 
Ti abbiamo solo detto di cambiare la riga di codice che hai postato,
p.e. in questo modo:
 
DoCmd.OpenReport "mio report", acViewPreview, , _
    "Data= " & clng(Me!BData)
 
-- 
Ciao
Karl
*********
Access FAQ: 
www.donkarl.com/it
 
 
 

     "Data= " & clng(Me!BData)
 
mi scuso per la variazione del codice... visto che temevo di aver fatto
qualche casino ho postato il codice da cui ho copiato rinominando però i
campi... solo che nella fretta ho messo solo data al posto di
data_consegna.
 
però l'underscore prima non c'era...
grazie per l'aiuto!
