Modificare valori della DOM di un Report VS2010

venerdì 15 marzo 2013 - 11.49
Tag Elenco Tags  VB.NET  |  Visual Studio 2010

sakertorten Profilo | Newbie

Salve sono molto ignorante in materia di Report in VB2010.

La storia è questa.

Il problema è modificare i valori dei campi di un report sviluppato con Visual Studio 2010 (non con crystal report ma con la versione ufficiale di Visual studio) da codice VB.net.

Ipotizziamo di avere un programma che chiede ad un utente dei dati (nome cognome numero di telefono ecc..) e ne esporti un report contenente questi dati secondo una formattazione definita in precedenza.
Per farlo creo una form con vari campi da riempire (i dati appunto) e un pulsante invia.
Quando viene cliccato il pulsante, il programma prende i dati dalla form e popola il report che poi restituisce all'utente.
Quello che non riesco a fare in VB.net è questa fase di popolamente delle textarea di un report manualmente e non in modo automatico con una querysql definita direttamente nel report.

Ho cominciato a comprendere che devo lavorare con dei dataset, forse devo crearne uno a partire dal report, popolarlo con i dati che mi da l'utente e darlo in pasto a reportviewer?



PS. Quali sono le definizioni di local report o server report?

Saluti

freeteo Profilo | Guru

Ciao sakertorten,
la cosa tecnicamente è abbastanza semplice, i passi da fare sono questi:
- disegni un report dando in pasto una sorgente dati (dataset del tuo progetto, o classe se hai fatto una modellazione ad oggetti)
- da codice carichi il report e gli passi i dati ed eventuali parametri etc..
... LocalReport miorpt = ReportViewer1.LocalReport; miorpt.ReportPath = "....#FULLPATH DEL REPORT#"; miorpt.DataSources.Add(new ReportDataSource("#NOME DATASET IN DESIGNER#", dati)); ...
dove "ReportViewer1" è il viewer che hai nella maschera, e "dati" sono una collection di oggetti, oppure una DataTable con i dati da visualizzare.

L'unica cosa "delicata" è che dopo che hai costruito un report con una certa struttura dati (quindi dataset usato nel designer) da codice gli devi passare la stessa struttura, sia che si tratti di una DataTable, che gli passi una Collection<T> ...

Dai un'occhiata a questo link per qualche esempio: http://www.gotreportviewer.com

Ciao.

Matteo Raumer
[MCAD .net, MVP Visual C#]
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