Newsgroup: it.comp.appl.access
Titolo: cambiare dinamicamente l'origine dati di un report

Mi sa che mi sto perdendo in un bicchier d'acqua.
Ho un report che è basato su una query memorizzata nel db.
Vorrei però cambiare dinamicamente l'origine dati di questo report e 
riassociare i valori ai controlli in esso contenuti, proprio perchè il 
report può essere usato per molteplici scopi.
Infatti l'origine può essere una query basata su un altra tabella, ovvero un 
filtro sull'origine dati di partenza.
Ho visto l'opzione filtro, ma se non erro, presuppone il riferimento ad un 
altra query salvata. Vorrei evitare di salvare innumerevoli query ma 
gestirmi tutte le stringhe sql da codice.
suggestions??

 ha scritto nel messaggio
news:cvkvit$qgm$1...@hulme.interac.it...

A fronte dell'evento "Su apertura" del report prova a generare il seguente
codice VBA:
Dim strSQL As String
strSQL = "SELECT * FROM NomeTabella_Query;"
Me.RecordSource = strSQL
Così imposti strSQL come origine record del report; per impostare le origini
controllo dei controlli del report:
Me!NomeControllo1.ControlSource = "NomeCampo1"
Me!NomeControllo2.ControlSource = "NomeCampo2"
ecc. ecc.
-- 
Roberto
-----------------------------------------------------
il Sito Comune di it.comp.appl.access
http://www.sitocomune.com
----------------------------------------------------

 ha scritto nel messaggio 
news:cvkvit$qgm$1...@hulme.interac.it...

Private Sub Comando42_Click()
On Error GoTo Err_Comando42_Click
    Dim stDocName As String
    Dim stlinkcriteria As String
    stlinkcriteria = "[selezionato]=(Yes)"
    stDocName = "lettera1"
    DoCmd.OpenReport stDocName, acViewPreview, , stlinkcriteria
    Dim sql As String
    sql = "SELECT [Cognome] & ' ' & [Nome] AS nominativo, Via, [CAP] & '' & 
[residente] & '(' & [Provicia] & ')' AS indirizzo, IIf([sesso]='F','Gent. 
Sig.ra','Egr.Sig.') AS ESP1 FROM socimas_locale WHERE ((([Cognome] & ' ' & 
[Nome]) Like 'colom*') AND ((Receduto_si_no)='No')) ORDER BY [Cognome] & ' 
'& [Nome];"
    [Reports]![lettera1].RecordSource = sql
Exit_Comando42_Click:
    Exit Sub
Err_Comando42_Click:
    MsgBox Err.Description
    Resume Exit_Comando42_Click

 ha scritto nel messaggio 
news:SwnTd.49359$QG6.8...@twister2.libero.it...

Scusa roberto ho postato il codice che stavo testando sotto ... se vuoi 
dargli un'occhiata è più o meno quello che mi suggeriv.
Cmq il mio problema a questo punto è settare l'origine record prima che si 
apra il report, perchè a priori non so quale sarà.
Quindi in un evento diverso dall'apertura.

 Quindi in un evento diverso dall'apertura.
Con tutta onestà non capisco perché, definendi la variabile sql come
pubblica in un modulo standard del datbase, tu non possa impostarla come
origine record del report: sicuramente c'è qualcosa che mi sfugge o che sta
sfuggendo a te.


 ha scritto nel messaggio 
news:cvkvit$qgm$1...@hulme.interac.it...

Ma invece di cambiare l'origine dati, perché non crei una tabella temporanea 
e la riempi alla bisogna?
Ciao.
-- 
Sergio MAZZA 

 ha scritto nel messaggio 
news:cvms5p$kdb$1...@canarie.caspur.it...

infatti sto pensando di fare cosi, magari creando una query di unione e 
filtrando di volta in volta i dati necessari.
Il problema si poneva relativamente ai report per le buste e le etichette.
Vorrei avere un solo report che uniformasse tutta la corrispondenza in 
uscita.
E' chiaro che l'origine dati del report non è solo questione di query su una 
tabella, ma elenchi di lettere possono provenire diversamente e soprattutto 
contemporaneamente da più tabelle.
p.e. clienti, soci, lavoratori eccc... per questo opterò per la tabella 
temporanea e per una query di unione opportunamente filtrata.
grazie sergio.
domandina stupida stupida e se fossi in un progetto adp ... dovrei creare 
tabelle temporanee quanti sono gli utenti, oppure c'è in qualche modo la 
possibilità di creare tbl che non risiedono sul server? 

 possibilità di creare tbl che non risiedono sul server?
Le tabelle temporanee ad uso e consumo del client le creo nell'FE del client 
proprio per non "disturbare" gli altri...
Ciao.
-- 
Sergio MAZZA
-- 
Sergio MAZZA 

 ha scritto nel messaggio 
news:cvn26a$n95$1...@canarie.caspur.it...

questo è chiaro, la mia domanda era relativa all'ipotesi di un progetto adp 
con tabelle residenti sul server msde.
non so se sono stato chiaro... 

 non so se sono stato chiaro...
Forse č piů chiaro il fatto che non utilizzo MSDE e simili...
In un progetto adp non hai tabelle residenti? Non puoi comunque, su ogni 
client, crearti un mdb con tabelle temporanee e collegare l'adp anche a 
quelle?
Ciao.
-- 
Sergio MAZZA