Newsgroup: it.comp.appl.access
Titolo: Filtrare report da maschera

Salve io avrei la necessita di filtrare un report in base a quello filtrato
nella maschera
ho gia fatto un pulsante nella maschera che mi da l'anteprima di stampa del
mio report,
nella maschera ho messo questo codice:
Private Sub Comando82_Click()
On Error GoTo Err_Comando82_Click
    Dim stDocName As String
    stDocName = "STAMPAdaRECORD"
    DoCmd.OpenReport stDocName, acPreview
Exit_Comando82_Click:
    Exit Sub
nel report ho invece messo questo:
Private Sub Report_Open(Cancel As Integer)
Me.Filter = Forms!NOMEMASCHERA.Filter
Me.FilterOn = True
End Sub
il mio problema è che nel report resta memorizzato l'ultimo filtro
utilizzato dalla maschera anche se non + in uso..
il secondo problema è poter mandare in stampa solo il record in cui sono
posizionato sulla maschera e non tutti i filtrati..
ciao a tutti

 ciao a tutti
Prova cosě togliendo quanto inserito nell'EVENTO
OPEN del REPORT:
Private Sub Comando82_Click()
 On Error GoTo Err_Comando82_Click
 
     Dim stDocName As String
 
     stDocName = "STAMPAdaRECORD"
     DoCmd.OpenReport stDocName, acPreview,,Me.Filter
 
 Exit_Comando82_Click:
Exit Sub
@Alex.
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 ciao a tutti
L'origine del report trasformala in una query che filtri in base magari
al'id del record selezionato... almeno è sicuro che sarà l'unico che ti
visualizzerà...
-- 
---
chi la dura la vince ;-)
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 ha scritto nel messaggio
news:xeLjc.26752$Qc.10...@twister1.libero.it...

prova a vedere l'azione
dcmd.openreport
attraverso questo comando puoi mettere i criteri di ricerca e filtrare il
report in base al valore contenuto nella maschera.
cerco nel mio db un esempio e te lo posto nel frattempo.

 ha scritto nel messaggio
news:c6o14t$3dn$1...@hulme.interac.it...

non considerare il mio aiuto ... è partito accidentalmente e in modo
incompleto...

 ha scritto nel messaggio
news:c6o16s$3dp$1...@hulme.interac.it...


 
NO....!
Devi togliere il Filtro che hai inserito, dalla proprietà filtro
e eliminare la Routine di GESTIONE FILTRO.
Non è possibile quello che dici, è scontato che tu stia commettendo
un errore o ti stia sfuggendo qualche cosa.


 un errore o ti stia sfuggendo qualche cosa.
mettendo questo sul pulsante :
Private Sub Comando82_Click()
 On Error GoTo Err_Comando82_Click
     Dim stDocName As String
     stDocName = "RecordFiltrati"
     DoCmd.OpenReport stDocName, acPreview, , Me.Filter
Exit_Comando82_Click:
Exit Sub
End Sub
mi da errore compilazione
etichetta non definita
grazie dell'aiuto.
ciao


mettendo invece
Private Sub Comando82_Click()
 On Error GoTo Err_Comando82_Click
     Dim stDocName As String
     stDocName = "RecordFiltrati"
     DoCmd.OpenReport stDocName, acPreview, , Me.Filter
Exit_Comando82_Click:
Exit Sub
Err_Comando82_Click:
    MsgBox Err.Description
    Resume Exit_Comando82_Click
End Sub
senza codice nel mio report (RecordFiltrati)
si comporta come mettendo il codice ( tiene memorizzato l'ultimo filtro
anche se non attivo)
ciao

 > > Non è possibile quello che dici, è scontato che tu stia commettendo

HO risolto mettendo
Private Sub Anteprima_Click()
Dim strFilter As String
If Me.FilterOn Then
   strFilter = Me.Filter
End If
DoCmd.OpenReport ReportName:="RecordFiltrati", View:=acPreview,
WhereCondition:=strFilter
ExitHere:
   Exit Sub
HandleErrors:
   Select Case Err.Number
      Case 2501
         MsgBox "There are no rows to display!"
      Case Else
         MsgBox Err.Description
   End Select
   Resume ExitHere
End Sub