Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Access: Aggiornamento del recordsource di un report

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Access: Aggiornamento del recordsource di un report

Postdi hayabusa_65 » 06/02/12 14:52

Buongiorno a tutti
Ho un problema nella stampa dei report per il quale chiedo un vostro aiuto.
Devo stampare l'elenco degli ingressi in magazzino in un determinato arco temporale.
Ho basato il report su una query che ha una arco temporale standard ">01/01/2012".
Il report lo vorrei lanciare da una maschera nella quale vado a inserire un arco temporale ridotto e quindi vorrei la stampa del report limitatamente all'arco temporale indicato "bewteen dtaStart end dtaEnd"
io avevo pensato di ricrearmi la query in una variabile (vsqlstat1) e poi lanciare i comandi:

Reports!RptIngressiInMagazzino.report.recordSource = Vsqlstat1
Reports!RptIngressiInMagazzino.report.requery

e quindi lanciare l'apertura della maschera con

Docmd.Openreport "RptIngressiInMagazzino"

Il programma però mi va in errore perché mi dice che il report non è aperto.
Come posso risolvere il problema?
Grazie a chi vorrà rispondermi
Fabrizio
hayabusa_65
Utente Junior
 
Post: 29
Iscritto il: 18/10/10 10:43

Sponsor
 

Re: Access: Aggiornamento del recordsource di un report

Postdi Flash30005 » 06/02/12 15:25

Crei un pulsante sulla stessa maschera dove inserisci le date
"Dadata" e "Adata"
Il comando sarà qualcosa del genere (crea una tabella temporanea "WorkaRich" che verrà stampata)
Codice: Seleziona tutto
Private Sub Stampa_Click()
'On Error GoTo Err_Stampa_Click
Dim criterio, CancR As String

Set db = CurrentDb
M_dadata = Format(dadata, "mm/dd/yyyy")
M_adata = Format(adata, "mm/dd/yyyy")
wherex = "TDatiRich.Data between #" & M_dadata & "# and #" & M_adata & "#"
If Me.RPN <> 0 Then wherex = "TDatiRich.RPN = " & Me.RPN & " and TDatiRich.Anno = " & Year(M_adata) '<<<RPN*
db.Execute "delete * from WorkaRich"

'RPN* è un campo relativo al numero documento che puoi omettere

'M_Importo = Replace(Importo, ",", ".")
criterio = "Insert Into WorkaRich (Data, RPN, Anno, YYY, ZZZ, Importo, CCosto, WWW) "
criterio = criterio & "SELECT Data, RPN, Anno, YYY, ZZZ, Importo, CCosto, WWW "
criterio = criterio & "FROM TDatiRich where " & wherex & " order by Data"
'MsgBox criterio

db.Execute criterio
'db.Close

 Dim stDocName As String
    stDocName = "RWorkaRich"

risp = MsgBox("Stampo direttamente senza anteprima?", vbYesNo)
'ActiveWindow.SelectedSheets.PrintOut Copies:=2, Collate:=True
Dim NC As Integer
If risp = vbYes Then
    Me.Cornice27.Visible = True   '<<<<< questa è una cornice realtiva al numero di copie in stampa che contiene 3 tasti (1,2,3)
     Exit Sub
End If
    DoCmd.OpenReport stDocName, acPreview
   
Exit_Stampa_Click:
    Exit Sub

Err_Stampa_Click:
    MsgBox Err.Description
    Resume Exit_Stampa_Click
   
End Sub


Ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Postdi archimede » 06/02/12 15:52

hayabusa_65 ha scritto:Il report lo vorrei lanciare da una maschera
Allora non fai prima a creare una query che filtra direttamente in base ai campi della maschera?

Alessandro
archimede
Moderatore
 
Post: 2753
Iscritto il: 07/11/02 12:41
Località: Genova

Re: Access: Aggiornamento del recordsource di un report

Postdi hayabusa_65 » 10/02/12 17:31

Vi ringrazio per le risposte.
A flash3005 lo ringrazio per il codice, ora mi metterò sotto e cercherò di capire come datattarlo alle mie esigenze.

Fabrizio.
hayabusa_65
Utente Junior
 
Post: 29
Iscritto il: 18/10/10 10:43


Torna a Applicazioni Office Windows


Topic correlati a "Access: Aggiornamento del recordsource di un report":


Chi c’è in linea

Visitano il forum: Nessuno e 11 ospiti