Report (no crystal): come modificare da codice la sorgente dati?

martedì 23 gennaio 2007 - 11.25

Pokino Profilo | Junior Member

Ho il seguente scenario. Una form contiene in alto dei campi di ricerca e in basso una datagridview che viene popolata di conseguenza. per farlo costruisco runtime la stringa sql di selezione.
Vorrei implementare un report standard che visualizzi i dati filtrati secondo gli stessi criteri precedenti e quindi mi permetta di scegliere runtime le condizioni e vorrei farlo direttamente da stringa sql e non come query parametrica in quanto in base alle condizioni selezionate anche la query cambierebbe (tabelle, join, ecc.).
Non riesco a farlo.. :(

Avete qualche metodo semplice ed efficace?

Cioè io riesco a crearmi un datatable con i dati che mi servono ma poi come lo lego al report/reportviewer?

-----> aggiornamento : ce l'ho fatta!!

documentazione msdn del cavolo a parte, prima ho cercato di modificare la connessione o il comando select ma nn era accessibile praticamente niente, poi ho scritto una variante dei metodi che uso per popolare le datagridview:

1) preparo il dataadapter base senza condizioni nella select
2) lo collego al report sempre in modo visuale
3) scrivo del codice nell'evento Load del report

// crea data adapter che prepara il comando sul db SqlDataAdapter daReportAnag = new SqlDataAdapter(_comando, Program.strConnDB); // popola il datatable del report con il risultato del comando eseguito dal data adapter daReportAnag.Fill(this.dsSorveglianzaSanitaria.repElenco);

funziona, funziona! spero che non ci siano controindicazioni..

freeteo Profilo | Guru

ciao,
direi che controindicazioni non ce sono assolutamente, perche' quello che fai concettualmente è giusto, ovvero filtri dei dati tu usando ado.net e poi gli passi il ResultSet al report che te li visualizza, quindi direi ottimo.
L'unica cosa da stare attento è che la struttura (quindi il niumero di colonne e purtroppo anche lordine di queste) rispecchi fedelmente la DataTable che gli passi, altrimenti il report sbaglia la visualizzazione...
ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5